http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51776
Bug #: 51776 Summary: fixincludes hacks around a C++ deficiency Classification: Unclassified Product: gcc Version: 4.7.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: preprocessor AssignedTo: unassig...@gcc.gnu.org ReportedBy: bk...@gnu.org a new fixinclude hack is about to be added to paper over the fact that g++ -std=c++11 claims full compliance, but is slightly deficient. Once that is fixed, this new hack should be removed. It will be approximately thus: +/* + * g++ -std=c++11 defines __cplusplus to 201103L, but does not + * properly support [[noreturn]]. + */ +fix = { + hackname = cdef_cplusplus; + files = sys/cdefs.h; + select = '\[\[noreturn\]\]'; + c_fix = format; + c_fix_arg = "__attribute__((__noreturn__))"; + test_text = "#define _Noreturn [[noreturn]]"; +}; CF: bug #51705 comment #25