summaryrefslogtreecommitdiff
path: root/fixincludes/inclhack.def
diff options
context:
space:
mode:
authorandreast <andreast@138bc75d-0d04-0410-961f-82ee72b054a4>2012-01-11 16:23:48 +0000
committerandreast <andreast@138bc75d-0d04-0410-961f-82ee72b054a4>2012-01-11 16:23:48 +0000
commite660f23944b33805b6b5ca89c41c095bcc7e7781 (patch)
treee4b37d1c6b03da2ec370ad842da8631d6cfef6c9 /fixincludes/inclhack.def
parent7d0a3bab485ec3c7349a9b8c01655a9b35ed814c (diff)
downloadgcc-e660f23944b33805b6b5ca89c41c095bcc7e7781.tar.gz
2012-01-11 Bruce Korb <bkorb@gnu.org>
Steven G. Kargl <kargl@gcc.gnu.org> Andreas Tobler <andreast@fgznet.ch> PR bootstrap/57105 PR preprocessor/51776 * inclhack.def (cdef_cplusplus): Add a replacement for [[noreturn]]. * fixincl.x: Regenerate. * tests/base/sys/cdefs.h: Update. * genfixes: Remove the 'Ver.' from the version check. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@183096 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'fixincludes/inclhack.def')
-rw-r--r--fixincludes/inclhack.def16
1 files changed, 16 insertions, 0 deletions
diff --git a/fixincludes/inclhack.def b/fixincludes/inclhack.def
index 0567bf474e0..b441dc15f54 100644
--- a/fixincludes/inclhack.def
+++ b/fixincludes/inclhack.def
@@ -1028,6 +1028,22 @@ fix = {
test_text = '#define vfscanf __svfscanf';
};
+/*
+ * 'g++ -std=c++11' defines __cplusplus to 201103L, which suggests
+ * that it conforms to ISO/IEC 14882:2011. Until G++ fully conforms,
+ * it should not set __cplusplus to that value. It currently does
+ * not support the [[noreturn]] procedure attribute.
+ * When it does, this hack should be removed.
+ * SEE: gcc.gnu.org/bugzilla/show_bug.cgi?id=51776
+ */
+fix = {
+ hackname = cdef_cplusplus;
+ files = sys/cdefs.h;
+ select = '\[\[noreturn\]\]';
+ c_fix = format;
+ c_fix_arg = '__attribute__((__noreturn__))';
+ test_text = "#define _Noreturn [[noreturn]]";
+};
/*
* Fix various macros used to define ioctl numbers.