This page is a snapshot from the LWG issues list, see the Library Active Issues List for more information and the meaning of CD1 status.
Section: 18.104.22.168 [iostate.flags] Status: CD1 Submitter: Martin Sebor Opened: 2000-11-02 Last modified: 2016-02-10
Priority: Not Prioritized
View all other issues in [iostate.flags].
View all issues with CD1 status.
Duplicate of: 569
22.214.171.124, p4 says about the postcondition of the function: If rdbuf()!=0 then state == rdstate(); otherwise rdstate()==state|ios_base::badbit.
The expression on the right-hand-side of the operator==() needs to be parenthesized in order for the whole expression to ever evaluate to anything but non-zero.
Add parentheses like so: rdstate()==(state|ios_base::badbit).