-
Notifications
You must be signed in to change notification settings - Fork 1.4k
TProtoClass: do not complain innards of transients. #16202
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
Conversation
Test Results 18 files 18 suites 4d 1h 30m 43s ⏱️ Results for commit bea2dd7. ♻️ This comment has been updated with latest results. |
|
The 2 failures are pre-exisiting (Mac-Beta due to XCode upgrade and TMapFile random behavior). |
dpiparo
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This PR is very good, thanks for preparing it. I highlighted some opportunities for improvement as well as clarification in form of comments. Addressing all of them should not take much.
Do we have test coverage for the change? For example a test where before there was output that after the PR disappear?
Do not complain about missing information about data members that directly or indirectly within a transient members of the top level class in GetRealData. This solves the underlying problem from root-project#15733
We do want to record as transient a real data member that is inside a nested object that is itself marked as transient. This is particular useful to know when to warn about missing information and when not. Previously only the data member explicitly marked as transient were marked as transient in the RealData. Now we also mark the member nested inside a transient member. This will prevent spurrious warning about missing information about the inner content of a transient data member. However we can not rely on when the `isTransient` parameter to `TBuildRealData::Inspect` is set to true because it is set both in the case where the object is really nested and the real data is being added to the current class (what we want) and in the case where we want to setup a related class but the real data will not be added to the current class (eg. collection or pointer to a class).
When/if a TClass for a std::tuple is first loaded in forward declared state and then the interpreter information is loaded, we now properly replace the ClassInfo and StreamerInfo
|
@pcanal, the failures are real. What is the status of this PR? |
dpiparo
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks.
In
GetRealData, do not complain about missing information about data members that are directly or indirectly within a transient member of the top level class.This solves the underlying problem from #15733