Date: Fri, 30 Dec 2011 17:45:13 +0000 From: David Chisnall <theraven@FreeBSD.org> To: "Sean C. Farley" <scf@FreeBSD.org> Cc: svn-src-head@FreeBSD.org, Matthew D Fleming <mdf@FreeBSD.org>, svn-src-all@FreeBSD.org, src-committers@FreeBSD.org Subject: Re: svn commit: r228878 - head/include Message-ID: <0473BBE1-7A08-4B8B-A70A-A4B44E32302C@FreeBSD.org> In-Reply-To: <alpine.BSF.2.02.1112301142380.4588@thor.farley.org> References: <201112252015.pBPKFfZ1073959@svn.freebsd.org> <alpine.BSF.2.02.1112291617110.4588@thor.farley.org> <CAMBSHm8ZXNQ0CJXFFHAO5DaeTLJOZy73hBH=FoLjNUvn7%2BPqKQ@mail.gmail.com> <alpine.BSF.2.02.1112301142380.4588@thor.farley.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 30 Dec 2011, at 16:52, Sean C. Farley wrote: >> My quick googling didn't show anything at all about the C++ standard = and stdbool.h or __bool_true_false_are_defined. It was probably = originally set because bool, true, and false are all C++ keywords so = certain code that wanted to ifdef on them didn't also need to check = __cplusplus. >=20 > I did not find anything definitive either. It's usually a better idea to check the spec than Google... stdbool.h is not part of the C++ standard, and so it is free to contain = anything in C++ mode, just as any other non-standard header is. The = <cstdbool> header is defined by the C++11 spec as containing JUST the = __bool_true_false_are_defined macro. The purpose of this header in C++ = mode is to allow the inclusion of C++ headers that expect to be able to = use true and false and guard this by the use of the = __bool_true_false_are_defined macro. David=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?0473BBE1-7A08-4B8B-A70A-A4B44E32302C>