<string>
: basic_string<unsigned long long>
is accepted
#4935
Labels
wontfix
This will not be worked on
Describe the bug
Unsigned integral types are currently accepted as
basic_string
first template parameter with the second template parameter being default.It should not compile, as there shouldn't be a specialization of
std::char_traits
for other types than standard character types.[char.traits.specializations.general]/1:
Command-line test case
Expected behavior
Should not compile
STL version
Version 17.12.0 Preview 1.0
Additional context
std::basic_string<unsigned long long, user_defined_traits>
should still be valid.Specializing
std::char_traits
forunsigned long long
should not be supported (no diagnostics required I think).A whole
_String_bitmap
specialization exists to support unsigned integral types; this support is mentioned as an 'extension':STL/stl/inc/__msvc_string_view.hpp
Lines 678 to 680 in c7c5ca7
The text was updated successfully, but these errors were encountered: