------- Additional Comments From pinskia at gcc dot gnu dot org 2005-01-22 23:09 ------- I was about to send the following patch out for this. Index: include/bits/functexcept.h =============================================================== ==== RCS file: /cvs/gcc/gcc/libstdc++-v3/include/bits/functexcept.h,v retrieving revision 1.5 diff -u -p -r1.5 functexcept.h --- include/bits/functexcept.h 24 Nov 2004 04:11:09 -0000 1.5 +++ include/bits/functexcept.h 22 Jan 2005 22:54:50 -0000 @@ -44,50 +44,50 @@ namespace std { // Helper for exception objects in <except> void - __throw_bad_exception(void); + __throw_bad_exception(void) __attribute__((noreturn)); // Helper for exception objects in <new> void - __throw_bad_alloc(void); + __throw_bad_alloc(void) __attribute__((noreturn)); // Helper for exception objects in <typeinfo> void - __throw_bad_cast(void); + __throw_bad_cast(void) __attribute__((noreturn)); void - __throw_bad_typeid(void); + __throw_bad_typeid(void) __attribute__((noreturn)); // Helpers for exception objects in <stdexcept> void - __throw_logic_error(const char* __s); + __throw_logic_error(const char* __s) __attribute__((noreturn)); void - __throw_domain_error(const char* __s); + __throw_domain_error(const char* __s) __attribute__((noreturn)); void - __throw_invalid_argument(const char* __s); + __throw_invalid_argument(const char* __s) __attribute__((noreturn)); void - __throw_length_error(const char* __s); + __throw_length_error(const char* __s) __attribute__((noreturn)); void - __throw_out_of_range(const char* __s); + __throw_out_of_range(const char* __s) __attribute__((noreturn)); void - __throw_runtime_error(const char* __s); + __throw_runtime_error(const char* __s) __attribute__((noreturn)); void - __throw_range_error(const char* __s); + __throw_range_error(const char* __s) __attribute__((noreturn)); void - __throw_overflow_error(const char* __s); + __throw_overflow_error(const char* __s) __attribute__((noreturn)); void - __throw_underflow_error(const char* __s); + __throw_underflow_error(const char* __s) __attribute__((noreturn)); // Helpers for exception objects in basic_ios void - __throw_ios_failure(const char* __s); + __throw_ios_failure(const char* __s) __attribute__((noreturn)); } // namespace std #endif
-- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19343