From owner-svn-src-head@freebsd.org Sat Aug 22 18:46:52 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E5B9D9BFF5F; Sat, 22 Aug 2015 18:46:51 +0000 (UTC) (envelope-from jmg@gold.funkthat.com) Received: from gold.funkthat.com (gate2.funkthat.com [208.87.223.18]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client CN "gold.funkthat.com", Issuer "gold.funkthat.com" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id BE773B97; Sat, 22 Aug 2015 18:46:51 +0000 (UTC) (envelope-from jmg@gold.funkthat.com) Received: from gold.funkthat.com (localhost [127.0.0.1]) by gold.funkthat.com (8.14.5/8.14.5) with ESMTP id t7MIkoLu086876 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Sat, 22 Aug 2015 11:46:50 -0700 (PDT) (envelope-from jmg@gold.funkthat.com) Received: (from jmg@localhost) by gold.funkthat.com (8.14.5/8.14.5/Submit) id t7MIkmx6086875; Sat, 22 Aug 2015 11:46:48 -0700 (PDT) (envelope-from jmg) Date: Sat, 22 Aug 2015 11:46:48 -0700 From: John-Mark Gurney To: Hans Petter Selasky Cc: Ed Schouten , Bruce Evans , 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> References: <201508020022.t720MFqp023071@repo.freebsd.org> <20150802145434.V1128@besplex.bde.org> <55C09869.2040605@selasky.org> <20150804171051.GL78154@funkthat.com> <55D6C291.2080606@selasky.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <55D6C291.2080606@selasky.org> X-Operating-System: FreeBSD 9.1-PRERELEASE amd64 X-PGP-Fingerprint: 54BA 873B 6515 3F10 9E88 9322 9CB1 8F74 6D3F A396 X-Files: The truth is out there X-URL: http://resnet.uoregon.edu/~gurney_j/ X-Resume: http://resnet.uoregon.edu/~gurney_j/resume.html X-TipJar: bitcoin:13Qmb6AeTgQecazTWph4XasEsP7nGRbAPE X-to-the-FBI-CIA-and-NSA: HI! HOW YA DOIN? can i haz chizburger? User-Agent: Mutt/1.5.21 (2010-09-15) X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.2.7 (gold.funkthat.com [127.0.0.1]); Sat, 22 Aug 2015 11:46:50 -0700 (PDT) X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 22 Aug 2015 18:46:52 -0000 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."