- Sep 01, 2017
-
-
Philippe Canal authored
Error in <TStatusBitsChecker>: In TProofPlayer class hierarchy, there are duplicates bits: Error in <TStatusBitsChecker>: Bit 16 used in TProofPlayer as kIsProcessing Error in <TStatusBitsChecker>: Bit 16 used in TVirtualProofPlayer as kIsSubmerger Error in <TStatusBitsChecker>: In TProofServ class hierarchy, there are duplicates bits: Error in <TStatusBitsChecker>: Bit 16 used in TProofServ as kHighMemory Error in <TStatusBitsChecker>: Bit 16 used in TApplication as kDefaultApplication
-
Philippe Canal authored
-
Philippe Canal authored
-
Philippe Canal authored
-
Philippe Canal authored
frexp ultimately give the same information (what power of 2 is this number) but is 3 times faster than the pair (log2, nearbyint).
-
Philippe Canal authored
TStatusBitsChecker::Check and TStatusBitsChecker::CheckAllClasses will determine if the set of "status bit" declared in the class and its base classes presents any overlap. The status bit are declared in a given class by declaring an enum type named EStatusBits. If some of the duplication is intentional, those duplication can be registered in an enum type named EStatusBitsDupExceptions. ~~~ {.cpp} // TStreamerElement status bits enum EStatusBits { kHasRange = BIT(6), kCache = BIT(9), kRepeat = BIT(10), kRead = BIT(11), kWrite = BIT(12), kDoNotDelete = BIT(13), kWholeObject = BIT(14) }; enum class EStatusBitsDupExceptions { // This bit duplicates TObject::kInvalidObject. As the semantic of kDoNotDelete is a persistent, // we can not change its value without breaking forward compatibility. // Furthermore, TObject::kInvalidObject and its semantic is not (and should not be) // used in TStreamerElement kDoNotDelete = TStreamerElement::kDoNotDelete, // This bit duplicates TObject::kCannotPick. As the semantic of kHasRange is a persistent, // we can not change its value without breaking forward compatibility. // Furthermore, TObject::kCannotPick and its semantic is not (and should not be) // used in TStreamerElement kHasRange = TStreamerElement::kHasRange }; ~~~ {.cpp} Without the EStatusBitsDupExceptions enum you would see ~~~ {.cpp} TStatusBitsChecker::Check("TStreamerElement"); Error in <TStatusBitsChecker>: In TStreamerElement class hierarchy, there are duplicates bits: Error in <TStatusBitsChecker>: Bit 6 used in TStreamerElement as kHasRange Error in <TStatusBitsChecker>: Bit 6 used in TObject as kCannotPick Error in <TStatusBitsChecker>: Bit 13 used in TStreamerElement as kDoNotDelete Error in <TStatusBitsChecker>: Bit 13 used in TObject as kInvalidObject ~~~ {.cpp}
-
Philippe Canal authored
This specially named Enum will allow to annotate the EStatusBits enum to list the bit that are intentionally/knowingly duplicated other bits in the clas hierarchy
-
Philippe Canal authored
It was conflicting with TObject::kCanDelete. Even-though it is persistent information, it is only ever used when first creating the branch and thus changing the value should have not practical down-side.
-
Philippe Canal authored
-
Philippe Canal authored
-
Philippe Canal authored
-
Philippe Canal authored
It was conflicting with TApplication::kDefaultApplication. This are used transiently so no backward compatibility issues
-
Philippe Canal authored
The value conflicted with TLeaf::kNewValue.
-
Philippe Canal authored
The value conflicted with TBranch::kBranchObject.
-
Philippe Canal authored
-
Philippe Canal authored
This allows for automatic checking overlaps in a given class hierarchy.
-
Philippe Canal authored
-
Philippe Canal authored
-
Philippe Canal authored
-
Sergey Linev authored
-
Sergey Linev authored
-
Sergey Linev authored
Before only condition value==floor(value) was checked. But it can be tru also for very large floats or doubles. Up to certain limit it does not make sence. Moreover, it can produce wrong output while value large 1e200 cannot be stored at all
-
Raphael Isemann authored
This fixes that regex characters in the source directory path cause the CMake configuration to fail with cryptic error messages. This happens because we interpret the source directory as a regex in a few places in our CMake code.
-
Raphael Isemann authored
This is a preparation because we want to ship module configuration files in the future in the cling resource directory (Clang VFS overlay files and modulemaps). This means that we will need to know this path in a few other places (e.g. where we specify the -ivfsoverlayPATH arguments and potential -fmodule-map-file=PATH args) It also makes this giant function a bit easier on the eyes.
-
Philippe Canal authored
-
Brian Bockelman authored
-
Brian Bockelman authored
Simply reuses the XXHASH implementation from the LZ4 library (also used in the LZ4 frame format).
-
Enrico Guiraud authored
-
Raphael Isemann authored
-
Raphael Isemann authored
RScanner iterates over all decls in our AST, but with modules we have hidden decl from unimported submodules in our AST. As we call Sema functions on these decls which use the normal clang lookup that respects visibility, we suddenly get mysterious lookup failures from inside Sema when running rootcling. This patch restricts RScanner to looking at visible decls, which restores the original behavior where RScanner onlys sees visible decls from included headers.
-
Raphael Isemann authored
rootcling with modules can reach this method when running with C++ modules and then starts deserializing decls without a transaction. This adds the missing PUshTransactionRAII.
-
Raphael Isemann authored
Those dictionaries also generate a C++ module, but we don't specify as of yet the dependencies on the referenced C++ modules from ROOT.
-
Axel Naumann authored
-
Raphael Isemann authored
-
- Aug 31, 2017
-
-
Matevz Tadel authored
-
Sergey Linev authored
-
Sergey Linev authored
Now happens when JS canvas want toggle log states
-
Sergey Linev authored
Later such specifier can be used to access object parts like axis. For the moment is not relevant
-
Sergey Linev authored
Use no_root_json and no_h_json URL parameteres. Automatically applied for webcanvas
-
Sergey Linev authored
-