The definitions of std::nothrow, __new_handler and std::bad_alloc are in the same file. This is bad since the std::bad_alloc definition pulls in the exception support. The std::bad_alloc definitions should be placed into a separate file.
-- Summary: std::nothrow and std::bad_alloc are coupled Product: gcc Version: 4.4.4 Status: UNCONFIRMED Severity: normal Priority: P3 Component: libstdc++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: sebastian dot huber at embedded-brains dot de http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44647