Do I understand correctly that, if my dictionary was correctly generated in the first place (i.e. complete?) , the includes would not even have to be “reparsed” (and so their location would be irrelevant) ?
This is true only if the types in the dictionary are only used for I/O. If they are used for interpretation then you need the dictionary (because the dictionary does not register anything about methods, for example).
It is likely you have a missing request for dictionary in your LinkDef/Selection.xml
If that’s the case how do I find out which object in the Root is triggering the parsing of the includes ?
It looks like it is the Vec class and/or a typedef related to that spelling.
Error in <TInterpreter::AutoParse>: Error parsing payload code for class Vec with content:
Cheers,
Philippe.
In the longer term, the need for header file will be replaced by the generation of a Clang C++ module. You can test this via the MODULE option of ROOT_GENERATE_DICTIONARY in CMake or directly the -cxxmodule option of rootcling