TF1 constructor broken in ROOT 6.40.02


Please read tips for efficient and successful posting and posting code

Please fill also the fields below. Note that root -b -q will tell you this info, and starting from 6.28/06 upwards, you can call .forum bug from the ROOT prompt to pre-populate a topic.

ROOT Version: 6.40.02
Platform: Ubuntu 24.04
Compiler: gcc13.3


Hi,

When I tried to compile my private classes with ROOT 6.40.02 it turned out that the TF1 constructor for memberfunctions (TF1() 12/13 in the corresponding docs) is broken compared to the version ROOT 6.38.06. Obviously this is a serious problem, since it would involve changes in user codes and breaks backward compatibility. So, I have to stick to ROOT 6.38.06 unless you provide an additional TF1 constructor that is backward compatible.

Furthermore, it turns out that rootcint can’t be used anymore in ROOT 6.38.06 whereas it can still be used in ROOT 6.34.02. In our compilation scripts we still use rootcint for backward compatibility. Is there a way to keep on using rootcint, or by what should I replace “rootcint” ?

Cheers,

Nick.

You can use rootcling (“replaces” old rootcint in ROOT 6.x).
But I do not understand why rootcint does not work for you (even in the latest ROOT 6.40, it’s still there).

I think the last commits in TF1 might explain what you are seeing. @jonas might comment ?