On Sun, Dec 11, 2011, David Chisnall wrote: > On 11 Dec 2011, at 21:12, Andreas Tobler wrote: > > > As far as I understand, GCC does not support this attribute [[noreturn]] > > yet. But it defines both, __cplusplus and __cplusplus=201103L. On gcc-4.7 > > __cplusplus=201103L is the default when we build libstdc++. > > Advertising C++11 compatibility and then not supporting fairly simple C++11 > features seems like a pretty major GCC bug. > > > So I think we have to extend the check as below or we can reorder the > > defines that GNUC is before the __cplusplus && __cplusplus>= 201103L. > > I'd rather prefer the standard version to the non-standard version, but maybe > we can add an extra check to see if your compiler incompetent.
The reality is that none of the open source compilers even fully support C99. We try to make sure the FreeBSD headers don't blow up with other compilers, although some of the support for the Intel compiler and ancient versions of gcc has rotted. It is ugly at times, but many of the compiler-specific details are abstracted away in macros in <sys/cdefs.h>. Note that for the POSIX/XSI/C standards, we actually define our own visibility macros, because the standard ones are such a mess. We will presumably need one for C1X soon. _______________________________________________ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"