Avoid narrowing warnings in __bitset constructor When <bitset> is compiled with warnings enabled, on a platform where size_t is 4 bytes, it results in errors similar to: bitset:265:16: error: non-constant-expression cannot be narrowed from type 'unsigned long long' to '__storage_type' (aka 'unsigned int') in initializer list [-Wc++11-narrowing] : __first_{__v, __v >> __bits_per_word} ^~~ bitset:676:52: note: in instantiation of member function 'std::__1::__bitset<2, 53>::__bitset' requested here bitset(unsigned long long __v) _NOEXCEPT : base(__v) {} ^ Fix these by casting the initializer list elements to __storage_type. Reviewers: mclow.lists, EricWF Differential Revision: https://reviews.llvm.org/D23960 git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@280543 91177308-0d34-0410-b5e6-96231b3b80d8
1 file changed