This page is a snapshot from the LWG issues list, see the Library Active Issues List for more information and the meaning of NAD Editorial status.

### 1168. Odd wording for bitset equality operators

Section: 22.9.2.3 [bitset.members] Status: NAD Editorial Submitter: Alisdair Meredith Opened: 2009-07-02 Last modified: 2016-01-28

Priority: Not Prioritized

View all other issues in [bitset.members].

View all issues with NAD Editorial status.

Discussion:

The following wording seems a little unusual to me:

p42/43 22.9.2.3 [bitset.members]

>     bool operator==(const bitset<N>& rhs) const;

> > -42- Returns: A nonzero value if the value of each bit in `*this` equals the value of the corresponding bit in `rhs`.

>     bool operator!=(const bitset<N>& rhs) const;

> > -43- Returns: A nonzero value if `!(*this == rhs)`.

"A nonzero value" may be well defined as equivalent to the literal '`true`' for Booleans, but the wording is clumsy. I suggest replacing "A nonzero value" with the literal '`true`' (in appropriate font) in each case.

[ 2009-07-24 Alisdair recommends NAD Editorial. ]

[ 2009-07-27 Pete adds: ]

> It's obviously editorial. There's no need for further discussion.

[ 2009-07-27 Howard sets to NAD Editorial. ]

Proposed resolution:

Change 22.9.2.3 [bitset.members] p42-43:

>     bool operator==(const bitset<N>& rhs) const;

> > -42- Returns: A nonzero value `true` if the value of each bit in `*this` equals the value of the corresponding bit in `rhs`.

>     bool operator!=(const bitset<N>& rhs) const;

> > -43- Returns: A nonzero value `true` if `!(*this == rhs)`.