Hello, I'm trying to create a compiled exception class I can catch in the interpreter (SunOS 5.8, WS 6.0, Root 3.03.07). My files contain: + begin r_exceptLinkDef.h ------------------------------------------------------ #ifdef __CINT__ #pragma link off all class; #pragma link off all function; #pragma link off all global; #pragma link off all typedef; #pragma link C++ class r_exception; #endif + end r_exceptLinkDef.h -------------------------------------------------------- + begin r_except.h ------------------------------------------------------------- #ifndef R_EXCEPT_H #define R_EXCEPT_H #include <exception> #include "Rtypes.h" class r_exception: public std::exception { public: r_exception(); ClassDef(r_exception, 1) }; #endif + end r_except.h --------------------------------------------------------------- Then I execute the following: rootcint -f r_exceptCint.cpp -c r_except.h r_exceptLinkDef.h CC -c -I/data/anu/isdc/root-3.03.07/sparc-sun-solaris2.8/include r_exceptCint.cpp "r_exceptCint.cpp", line 326: Error: The name exception is ambiguous, exception and std::exception. "r_exceptCint.cpp", line 326: Error: The name exception is ambiguous, exception and std::exception. 2 Error(s) detected. make: *** [r_exceptCint.o] Error 2 The offending line of code is in the block: 316 /********************************************************* 317 * Inheritance information setup/ 318 *********************************************************/ 319 extern "C" void G__cpp_setup_inheritancer_exceptCint() { 320 321 /* Setting up class inheritance */ 322 if(0==G__getnumbaseclass(G__get_linked_tagnum(&G__r_exceptCintLN_r_exception))) { 323 r_exception *G__Lderived; 324 G__Lderived=(r_exception*)0x1000; 325 { 326 exception *G__Lpbase=(exception*)G__Lderived; 327 G__inheritance_setup(G__get_linked_tagnum(&G__r_exceptCintLN_r_exception),G__get_linked_tagnum(&G__r_exceptCintLN_exception),(long)G__Lpbase-(long)G__Lderived,1,1); 328 } 329 } 330 } After I run the rootcint command, if I change line 326 to use the fully qualified "std::exception" instead of just "exception" then it compiles and runs properly. Is this a problem with root/rootcint or am I doing something wrong? Regards, James
This archive was generated by hypermail 2b29 : Sat Jan 04 2003 - 23:51:18 MET