Index: libcxx/include/bitset =================================================================== --- libcxx/include/bitset +++ libcxx/include/bitset @@ -775,10 +775,7 @@ for (; __i < _Mp; ++__i) { _CharT __c = __str[_Mp - 1 - __i]; - if (__c == __zero) - (*this)[__i] = false; - else - (*this)[__i] = true; + (*this)[__i] = _Traits::eq(__c, __one); } _VSTD::fill(base::__make_iter(__i), base::__make_iter(_Size), false); } @@ -803,10 +800,7 @@ for (; __i < _Mp; ++__i) { _CharT __c = __str[__pos + _Mp - 1 - __i]; - if (_Traits::eq(__c, __zero)) - (*this)[__i] = false; - else - (*this)[__i] = true; + (*this)[__i] = _Traits::eq(__c, __one); } _VSTD::fill(base::__make_iter(__i), base::__make_iter(_Size), false); }