diff options
author | Ed Schouten <ed@FreeBSD.org> | 2014-09-05 05:36:32 +0000 |
---|---|---|
committer | Ed Schouten <ed@FreeBSD.org> | 2014-09-05 05:36:32 +0000 |
commit | b58aba6b66b24b993f1f241d88fb9f9a2025e1f7 (patch) | |
tree | b2602da980966fa5a29c2e911dc374a37179bed3 /include | |
parent | 7aa83a16bce6adca4c7e3af643705dc4acb031a0 (diff) | |
download | src-b58aba6b66b24b993f1f241d88fb9f9a2025e1f7.tar.gz src-b58aba6b66b24b993f1f241d88fb9f9a2025e1f7.zip |
Roll back r271012 even more aggressively.
I've looked at the GCC sources and I now understand what's going wrong.
THe C11 keywords are simply nonexistent when using C++ mode. They are
marked as C-only in the parser. This is absolutely impractical for
multiple reasons:
- The C11 keywords do not conflict with C++ naming rules. They all start
with _[A-Z]. There is no reason to make them C-only.
- It makes it practically impossible for people to use these keywords in
C header files and expect them to work from within C++ sources.
As I said in my previous commit message: GCC is by far the weirdest
compiler that I've ever used.
Notes
Notes:
svn path=/head/; revision=271155
Diffstat (limited to 'include')
-rw-r--r-- | include/tgmath.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/tgmath.h b/include/tgmath.h index 488575f0fbfa..7f4de6f3fa6e 100644 --- a/include/tgmath.h +++ b/include/tgmath.h @@ -61,7 +61,7 @@ */ #if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L) || \ - __has_extension(c_generic_selections) || __GNUC_PREREQ__(4, 9) + __has_extension(c_generic_selections) #define __tg_generic(x, cfnl, cfn, cfnf, fnl, fn, fnf) \ _Generic(x, \ long double _Complex: cfnl, \ |