Section: 18.104.22.168 [bitset.cons] Status: CD1 Submitter: Dag Henriksson Opened: 2004-01-30 Last modified: 2016-02-10
Priority: Not Prioritized
View all other issues in [bitset.cons].
View all issues with CD1 status.
The constructor from unsigned long says it initializes "the first M bit positions to the corresponding bit values in val. M is the smaller of N and the value CHAR_BIT * sizeof(unsigned long)."
Object-representation vs. value-representation strikes again. CHAR_BIT * sizeof (unsigned long) does not give us the number of bits an unsigned long uses to hold the value. Thus, the first M bit position above is not guaranteed to have any corresponding bit values in val.
In 22.214.171.124 [bitset.cons] paragraph 2, change "M is the smaller of N and the value CHAR_BIT * sizeof (unsigned long). (249)" to "M is the smaller of N and the number of bits in the value representation (section 6.7 [basic.types]) of unsigned long."