Whasssup roottalk! I'm having trouble compiling the attached code with gcc 3.4. I'm running Fedora Core 3, root 4.00.08f. You can look at the attached example. It involves a template inheriting from its template paramters. The attached example just builds the dictionary using rootcint, then attempts to compile the dictionary. The compilation succeeds under gcc 3.2 (RHEL) and fails under gcc 3.4 If you take a look at the link of the Dict.cxx that's failing to compile, it looks like: TClass *Template<ClassA,ClassB,ClassC>::fgIsA = 0; // static to hold class pointer In updating my own code to gcc 3.4, I've had to change lines like this to look like: template <> TClass *Template<ClassA,ClassB,ClassC>::fgIsA = 0; // static to hold class pointer Indeed, if I make this one change to the dictionary by hand, the dictionary compiles fine. I have not tried this on my gcc 3.4 box with the dev version of root because it's not completely stable on my box. (cf http://root.cern.ch/cgi-bin/print_hit_bold.pl/root/roottalk/roottalk04/3310.html) but I did try it with the dev version of root on a gcc 3.2 box. Even though the dictionary compiled fine on gcc 3.2, the dictionary contained the same line that is a syntax error under gcc 3.4, so I don't think this has been fixed even in the dev version of root. Maybe I'm doing something wrong? Thanks for looking, John
This archive was generated by hypermail 2b29 : Sun Jan 02 2005 - 05:50:10 MET