Skip to content
Snippets Groups Projects
Commit 54b0abc0 authored by Philippe Canal's avatar Philippe Canal
Browse files

Remove kBOOL_t and thus remove inconsistencies.

In 2004 kBool_t was the same value as kUChar_t (both 11).
So when the collection proxy were introduced to distinguished the two, a new
one was introduced kBOOL_t (value 21) to be used internally by the collection
proxies.

However this value is returned by TVirtualCollectionProxy::GetType and lead
to incorrect behaviors, for example:

    std::cerr << TDataType::GetDataType(proxy->GetType())->AsString(proxy->At(i)) << "\n";

as the value 21 is in TDataTypes.h the value of kDataTypeAliasUnsigned_t

In 2005 (eab7cae0), kBool_t was updated in TDataTypes.h (to the value 18)
to be distinct from kUChar_t as (at the time) sizeof(bool) on MacOS was 4.
However the code in collection proxy was never modernize to leverage this new
distinction.

Since the value is only recorded in the CollectionProxy objects and those
are never persisted, we can safetly switch from kBOOL_t to kBool_t.
parent 869acecb
No related merge requests found
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment