Skip to content
Snippets Groups Projects
Commit af63155c authored by scott snyder's avatar scott snyder
Browse files

RootUtils: Workaround for pyroot __pair_base issue.

In gcc8, std::pair derives from the (empty) base class std::__pair_base.
When ROOT makes dictionaries, it likes to strip std:: qualifiers.
When it then tries to look up cling information for a TClass,
if the lookup fails, it tries again with the std:: reinserted
for all STL classes (with TClassEdit::InsertStd()).
However, that doesn't work for __pair_base, because it's not a class
that ROOT knows about.  The upshot is that we see errors like:

  Error in <TClass::LoadClassInfo>: no interpreter information for class __pair_base<unsigned int,string> is available even though it has a TClass initialization routine.

We work around this by hooking into ROOT's TClass creation.
If we see a std::pair class, we erase the base class information
from its TClass.
parent ec0b6df7
No related branches found
No related tags found
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment