From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=35017 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Olfud-0005id-C1 for qemu-devel@nongnu.org; Wed, 18 Aug 2010 06:30:28 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OlfuZ-0007Y1-CD for qemu-devel@nongnu.org; Wed, 18 Aug 2010 06:30:27 -0400 Received: from mx1.redhat.com ([209.132.183.28]:28928) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OlfuZ-0007Xu-59 for qemu-devel@nongnu.org; Wed, 18 Aug 2010 06:30:23 -0400 Message-ID: <4C6BB642.4000205@redhat.com> Date: Wed, 18 Aug 2010 12:30:26 +0200 From: Kevin Wolf MIME-Version: 1.0 Subject: Re: [Qemu-devel] Re: [PATCH 2/5] CODING_STYLE: add C type rules References: <4C6A43B5.40809@redhat.com> <4C6AD744.1070009@twiddle.net> <4C6B9B44.7020803@redhat.com> In-Reply-To: <4C6B9B44.7020803@redhat.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Paolo Bonzini Cc: Blue Swirl , Jes Sorensen , qemu-devel@nongnu.org Am 18.08.2010 10:35, schrieb Paolo Bonzini: > On 08/17/2010 08:39 PM, Richard Henderson wrote: >>> On 08/12/10 19:50, Blue Swirl wrote: >>>> +While using "bool" is good for readability, it comes with minor caveats: >>>> + - Don't use "bool" in places where the type size must be constant across >>>> + all systems, like public interfaces and on-the-wire protocols. >>>> + - Don't compare a bool variable against the literal, "true", >>>> + since a value with a logical non-false value need not be "1". >>>> + I.e., don't write "if (seen == true) ...". Rather, write "if (seen)...". >>> >>> I'd strongly discourage the use of bool in any code. >> >> I strongly disagree. The use of "bool", even if you ignore stdbool.h >> and do "typedef int bool", is valuable documentation in the code. > > I think "bool" is fine, but it should be either stdbool.h or a typedef. > Using stdbool.h only when it is present is going to introduce bugs the > day someone relies on the magic properties of the C99 bool. We rely on C99 anyway, so stdbool.h should always be present (and in fact, it is used unconditionally today). Kevin