g++ bug w/ exception specs

Benjamin Kosnik bkoz@redhat.com
Mon Feb 18 03:36:00 GMT 2002


>From e000006.cpp in Bench++:

class exception_6 
{
public:
  bool flag;		// controls return or raise exception
  void proc_1(void) throw(exception_6);	   // either returns or raises exception
  void proc_2(void) throw(exception_6);	   // calls proc_1
  void proc_3(void) throw(exception_6);	   // calls proc_2
  void proc_4(void) throw(exception_6);	   // calls proc_3
};


gives:

e000006.cpp:17: invalid use of undefined type `class exception_6'
e000006.cpp:14: forward declaration of `class exception_6'
e000006.cpp:18: invalid use of undefined type `class exception_6'
e000006.cpp:14: forward declaration of `class exception_6'
e000006.cpp:19: invalid use of undefined type `class exception_6'
e000006.cpp:14: forward declaration of `class exception_6'
e000006.cpp:20: invalid use of undefined type `class exception_6'
e000006.cpp:14: forward declaration of `class exception_6'
e000006.cpp:76: declaration of `void exception_6::proc_1() throw (exception_6)'    throws different exceptions
e000006.cpp:17: than previous declaration `void exception_6::proc_1()'
e000006.cpp:86: declaration of `void exception_6::proc_2() throw (exception_6)'    throws different exceptions
e000006.cpp:18: than previous declaration `void exception_6::proc_2()'
e000006.cpp:90: declaration of `void exception_6::proc_3() throw (exception_6)'    throws different exceptions
e000006.cpp:19: than previous declaration `void exception_6::proc_3()'
e000006.cpp:94: declaration of `void exception_6::proc_4() throw (exception_6)'    throws different exceptions
e000006.cpp:20: than previous declaration `void exception_6::proc_4()'



More information about the Gcc-bugs mailing list