Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
| From | Shao Miller <sha0.miller@gmail.com> |
|---|---|
| Newsgroups | comp.lang.c |
| Subject | Re: | vs || operator on C99 bool types |
| Date | 2011-06-27 13:38 -0400 |
| Organization | A noiseless patient Spider |
| Message-ID | <iuaf8u$u8o$1@dont-email.me> (permalink) |
| References | <20110627162111.12429.65316.XPN@final-memory.org> |
On 6/27/2011 12:21, Matthias Arndt wrote:
> Hello all,
>
> I heard an opinion on the use of the | operator together with C99
> conform bool types (stdbool.h)
>
> My discussion partner stated that
> _Bool a, b;
> ......
> a | b;
>
> should be forbidden and a || b should be used instead.
>
Forbidden? "... The rank of _Bool shall be less than the rank of all
other standard integer types. ..."[6.3.1.1p1] That is a discussion
which concludes with the definition of "the integer promotions."
Then we have for '|'[6.5.12p3] that the "usual arithmetic conversions"
are performed, which in this case includes the integer
promotions[6.3.1.8p1]. So using '_Bool' doesn't appear to be forbidden.
Perhaps your discussion partner believes that the construct "ought to
be" ("should be" makes me think that something "is already true," given
some reference) because any non-value bits in a '_Bool' are not very
useful in a program.
> I personally can't see the difference for true boolean types (which
> would be *implementation* specific, but let's assume an embedded
> compiler with a true bool type that maps to a real bit.)
>
> What does the standard say? Are there opinions on this?
>
> I personally have no true opinion on this, otherwise I wouldn't open
> this up for discussion.
However the value is stored, it undergoes the integer promotions and is
not longer a '_Bool' by the time it's used in the context you provide,
as far as I understand it.
Back to comp.lang.c | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
| vs || operator on C99 bool types Matthias Arndt <marndt@asmsoftware.de> - 2011-06-27 16:21 +0000
Re: | vs || operator on C99 bool types Shao Miller <sha0.miller@gmail.com> - 2011-06-27 13:38 -0400
Re: | vs || operator on C99 bool types Eric Sosman <esosman@ieee-dot-org.invalid> - 2011-06-27 21:51 -0400
Re: | vs || operator on C99 bool types James Waldby <not@valid.invalid> - 2011-06-28 16:16 +0000
[OT] Genderangement [Was: Re: | vs || operator on C99 bool types] Eric Sosman <esosman@ieee-dot-org.invalid> - 2011-06-28 20:35 -0400
Re: [OT] Genderangement [Was: Re: | vs || operator on C99 bool types] blmblm@myrealbox.com <blmblm.myrealbox@gmail.com> - 2011-06-29 21:33 +0000
Re: [OT] Genderangement [Was: Re: | vs || operator on C99 bool types] Michael Press <rubrum@pacbell.net> - 2011-06-30 10:58 -0700
Re: [OT] Genderangement [Was: Re: | vs || operator on C99 bool types] blmblm@myrealbox.com <blmblm.myrealbox@gmail.com> - 2011-06-30 18:57 +0000
Re: [OT] Genderangement [Was: Re: | vs || operator on C99 bool types] Michael Press <rubrum@pacbell.net> - 2011-07-01 12:53 -0700
Re: [OT] Genderangement [Was: Re: | vs || operator on C99 bool types] blmblm@myrealbox.com <blmblm.myrealbox@gmail.com> - 2011-07-02 18:27 +0000
Re: [OT] Genderangement [Was: Re: | vs || operator on C99 bool types] Michael Press <rubrum@pacbell.net> - 2011-07-03 20:53 -0700
Re: | vs || operator on C99 bool types Nick Keighley <nick_keighley_nospam@hotmail.com> - 2011-07-03 03:34 -0700
Re: | vs || operator on C99 bool types James Kuyper <jameskuyper@verizon.net> - 2011-07-03 08:25 -0400
Re: | vs || operator on C99 bool types gordonb.pbl6v@burditt.org (Gordon Burditt) - 2011-07-03 18:23 -0500
Re: | vs || operator on C99 bool types James Kuyper <jameskuyper@verizon.net> - 2011-06-28 07:21 -0400
Re: | vs || operator on C99 bool types James Kuyper <jameskuyper@verizon.net> - 2011-06-28 08:24 -0400
Re: | vs || operator on C99 bool types Matthias Arndt <marndt@asmsoftware.de> - 2011-06-28 16:11 +0000
Re: | vs || operator on C99 bool types Tim Rentsch <txr@alumni.caltech.edu> - 2011-06-28 16:37 -0700
Re: | vs || operator on C99 bool types Nick Keighley <nick_keighley_nospam@hotmail.com> - 2011-07-03 03:41 -0700
Re: | vs || operator on C99 bool types Tim Rentsch <txr@alumni.caltech.edu> - 2011-07-03 15:02 -0700
csiph-web