New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
v622: Fix pair offset/size calculation. #6873
v622: Fix pair offset/size calculation. #6873
Commits on Nov 23, 2020
-
Configuration menu - View commit details
-
Copy full SHA for cd48a9e - Browse repository at this point
Copy the full SHA cd48a9eView commit details
Commits on Nov 25, 2020
-
Record that the TClass is from GenerateInfoForPair.
The TClass generated by TStreamerInfo::GenerateInfoForPair is neither 'Interpreted' (cling likely does not, yet, have any information about that pair) nor loaded (the user did not request a dictionary for it) but need to have special treatment for those TClass. It is not clear whether this should be a new state. For now we introduce a new data member (`fIsSyntheticPair`) and don't increase the size of TClass instance by using a bit field.
Configuration menu - View commit details
-
Copy full SHA for b147138 - Browse repository at this point
Copy the full SHA b147138View commit details -
TClass::GetClass now create a synthetic instance only if pair hints a…
…re provided. Since getting the right alignment and padding is hard (either use Cling/Clang with the associated memory cost and potential autoparsing or duplicating the platform dependent code that calculates it), we now only creates the synthetic TClass instance that represent and std::pair ***if and only*** the call is provided the actual offset of second and sizeof the pair. This information is known to compiled (and later interpreted) CollectionProxy, to TClass for class containing an std::pair (via their list of RealData which is recorded in the rootpcm) and to TClass::GetClass templated on the actual type (since the pair's data members are public)
Configuration menu - View commit details
-
Copy full SHA for 0de6bf0 - Browse repository at this point
Copy the full SHA 0de6bf0View commit details -
Add specialization of TClass::GetClass<T> for pair.
Extract the offset and size of the pair and pass it along to raw TClass::GetClass
Configuration menu - View commit details
-
Copy full SHA for 05e0d0d - Browse repository at this point
Copy the full SHA 05e0d0dView commit details -
TProtoClass::FillTClass create synthetic pair TClass as needed.
Use the data in fPRealData to calculate the offset and size of the pair
Configuration menu - View commit details
-
Copy full SHA for b77703e - Browse repository at this point
Copy the full SHA b77703eView commit details -
Remove deleted StreamerInfo from the global list
Note: If a StreamerInfo is loaded from a file and is the same information as an existing one, it is assigned the same "unique id" and we need to double check before removing it from the global list.
Configuration menu - View commit details
-
Copy full SHA for 7a80e09 - Browse repository at this point
Copy the full SHA 7a80e09View commit details -
Configuration menu - View commit details
-
Copy full SHA for a24292f - Browse repository at this point
Copy the full SHA a24292fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 991eac1 - Browse repository at this point
Copy the full SHA 991eac1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 469b539 - Browse repository at this point
Copy the full SHA 469b539View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4cc1a35 - Browse repository at this point
Copy the full SHA 4cc1a35View commit details