Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 22 Aug 2015 11:46:48 -0700
From:      John-Mark Gurney <jmg@funkthat.com>
To:        Hans Petter Selasky <hps@selasky.org>
Cc:        Ed Schouten <ed@nuxi.nl>, Bruce Evans <brde@optusnet.com.au>, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   Re: svn commit: r286170 - head/share/man/man9
Message-ID:  <20150822184647.GF33167@funkthat.com>
In-Reply-To: <55D6C291.2080606@selasky.org>
References:  <201508020022.t720MFqp023071@repo.freebsd.org> <20150802145434.V1128@besplex.bde.org> <CABh_MKm3cWbPu6WiP9i%2BF-6CuuAH-UAGcek8jEbN0ZxjNZ5GeA@mail.gmail.com> <55C09869.2040605@selasky.org> <20150804171051.GL78154@funkthat.com> <55D6C291.2080606@selasky.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Hans Petter Selasky wrote this message on Fri, Aug 21, 2015 at 08:17 +0200:
> 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...
> 
> 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?

As stated before, cdefs.h provides glue for support for pre-C11
compilers, so I don't see a problem...  Do you have documented cases
of the glue not working on pre-C11 compilers?

-- 
  John-Mark Gurney				Voice: +1 415 225 5579

     "All that I will do, has been done, All that I have, has not."



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20150822184647.GF33167>