On 08/04/15 19:10, John-Mark Gurney wrote:
Hans Petter Selasky wrote this message on Tue, Aug 04, 2015 at 12:48 +0200:
My gut feeling is it's good practice to have those wrapper macros
because they isolate the compiler into a consistent and coherent API.

Except that we now have a consistent and coherent API w/
_Static_assert...  We emulate this function on all compilers (or at least
try to, see bde's other email about issues w/ the ifdef mess), and
is available to both userland and kernel...  It will also be available
on other platforms, as opposed to having to port our CTASSERT macros
to other platforms and introduce #ifdef's to make it compatible...

Wouldn't the argument be the same for queue.3 . Once C-compilers finally
decide to compile time support queues, we should throw queue.3 aswell?
I'd say it is better to stay independent of what the compiler guys will
come up with next, reminding me how hard it was to upgrade a machine
recently from 9- to 10- because of C++11 ....

Last I checked, they don't change their API's ever revision of the
langauge...

Comparing this to C++11?  Just wow, see above how this is properly
covered by the ifdef mess in sys/cdefs.h for all compilers, this won't
introduce any complications like the C++11...


Hi,

Here is one more argument against using "_Static_assert()":

According to "http://en.cppreference.com/w/c/language/_Static_assert"; _Static_assert is C11 syntax only, and we compile the kernel using "-std=iso9899:1999" according to "conf/kern.mk:CFLAGS" in -current. So technically it shouldn't work, and it throws up compile errors with certain other C tools I'm using at work which are more strict than clang.

Any comments?

--HPS
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to