From: Ben Bridgwater <bennyb@ntplx.net>
To: lkml <linux-kernel@vger.kernel.org>
Subject: Re: RFC: booleans and the kernel
Date: Sat, 26 Jan 2002 10:48:51 -0500 [thread overview]
Message-ID: <3C52CFE3.2080107@ntplx.net> (raw)
Rick Stevens wrote:
> Granted. "if (x)" is true if "x" is non-zero, regardless of type and
> shoudn't even generate a warning if "x" is scalar.
Surely the major point of using the compiler's _Bool would be for type
safety - if you only want readability then you may as well just use:
enum bool {true = 1, false = 0};
Now since C has historically utilized integer expressions for
conditionals (with 0, !0 truth semantics), so it would be obnoxious to
*unconditionally* make if (x) where x is non _Bool generate warnings,
but IMO the whole point of using _Bool would be to then choose to turn
on warnings for non _Bool conditionals, and to suppress warnings one
would then need to be explicit about intentions by writing code such as:
if ((_Bool) (x = y)) ;
and hopefully if one accidently wrote:
if ((_Bool) x = y) ; /* int x, y */
then the compiler would warn that you probably didn't really mean that,
since it means:
if ((_Bool) (x = (int) (_Bool) y)) ;
Which would have converted your y to _Bool (0/1) before assigning it to x.
Ben
P.S. I'm not on the list - please CC any response to me if you want a reply.
next reply other threads:[~2002-01-26 15:56 UTC|newest]
Thread overview: 73+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-01-26 15:48 Ben Bridgwater [this message]
-- strict thread matches above, loose matches on Subject: below --
2002-01-25 11:28 RFC: booleans and the kernel Thomas Hood
2002-01-25 11:39 ` Xavier Bestel
2002-01-25 11:09 Helge Hafting
2002-01-26 3:08 ` Jamie Lokier
2002-01-26 9:13 ` Mark Zealey
2002-01-27 19:58 ` Jamie Lokier
2002-01-26 10:51 ` Gábor Lénárt
2002-01-26 16:27 ` Jamie Lokier
2002-01-24 17:42 Jeff Garzik
2002-01-24 18:22 ` Anton Altaparmakov
2002-01-24 18:33 ` Arnaldo Carvalho de Melo
2002-01-24 19:28 ` H. Peter Anvin
2002-01-24 19:34 ` Arnaldo Carvalho de Melo
2002-01-24 19:43 ` H. Peter Anvin
2002-01-24 19:47 ` Arnaldo Carvalho de Melo
2002-01-24 19:46 ` Ingo Oeser
2002-01-24 19:52 ` Oliver Xymoron
2002-01-24 20:03 ` Jeff Garzik
2002-01-24 20:06 ` Oliver Xymoron
2002-01-24 20:14 ` Jeff Garzik
2002-01-24 20:23 ` Alexander Viro
2002-01-24 20:25 ` Oliver Xymoron
2002-01-24 20:35 ` John Levon
2002-01-24 20:15 ` Alexander Viro
2002-01-24 20:21 ` Richard B. Johnson
2002-01-24 20:39 ` Oliver Xymoron
2002-01-24 21:55 ` Richard B. Johnson
2002-01-24 21:57 ` Jeff Garzik
2002-01-24 22:05 ` H. Peter Anvin
2002-01-24 22:13 ` Robert Love
2002-01-24 22:33 ` Xavier Bestel
2002-01-24 22:53 ` Xavier Bestel
2002-01-24 22:59 ` Robert Love
2002-01-24 23:27 ` Xavier Bestel
2002-01-25 6:13 ` Alexander Viro
2002-01-25 8:00 ` Momchil Velikov
2002-01-25 10:51 ` Xavier Bestel
2002-01-25 16:11 ` Olivier Galibert
2002-01-26 7:22 ` Timothy Covell
2002-01-25 7:48 ` Alexander Viro
2002-01-25 23:49 ` J.A. Magallon
2002-01-27 11:27 ` Kai Henningsen
2002-01-25 23:09 ` Timothy Covell
2002-01-25 1:16 ` John Levon
2002-01-25 22:47 ` Timothy Covell
2002-01-25 21:24 ` Timothy Covell
2002-01-24 21:31 ` Oliver Xymoron
2002-01-24 22:19 ` Robert Love
2002-01-24 22:38 ` Robert Love
2002-01-25 22:44 ` Timothy Covell
2002-01-25 3:52 ` Ragnar Hojland Espinosa
2002-01-25 20:39 ` Calin A. Culianu
2002-01-25 23:07 ` Rick Stevens
2002-01-25 19:02 ` Kai Henningsen
2002-01-27 1:33 ` Timothy Covell
2002-01-26 2:56 ` Jamie Lokier
2002-01-27 11:18 ` Kai Henningsen
2002-01-25 22:30 ` Timothy Covell
2002-01-24 22:36 ` Alexander Viro
2002-01-25 6:36 ` Kai Henningsen
[not found] ` <200201250900.g0P8xoL10082@home.ashavan.org.>
2002-01-29 6:36 ` Nix N. Nix
2002-01-25 21:43 ` Timothy Covell
2002-01-24 21:50 ` Oliver Xymoron
2002-01-24 22:21 ` H. Peter Anvin
2002-01-25 15:07 ` Werner Almesberger
2002-01-25 15:21 ` Jakub Jelinek
2002-01-25 16:45 ` H. Peter Anvin
2002-01-25 11:07 ` Helge Hafting
2002-01-24 22:33 ` Chris Wedgwood
2002-01-24 22:44 ` H. Peter Anvin
2002-01-26 10:22 ` Chris Wedgwood
2002-01-25 2:00 ` Erik Andersen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3C52CFE3.2080107@ntplx.net \
--to=bennyb@ntplx.net \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).