Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

std::quoted doesn't work with char16_t or char32_t strings. #26877

Closed
llvmbot opened this issue Feb 6, 2016 · 4 comments
Closed

std::quoted doesn't work with char16_t or char32_t strings. #26877

llvmbot opened this issue Feb 6, 2016 · 4 comments
Labels
bugzilla Issues migrated from bugzilla libc++ libc++ C++ Standard Library. Not GNU libstdc++. Not libc++abi. wontfix Issue is real, but we can't or won't fix it. Not invalid

Comments

@llvmbot
Copy link
Collaborator

llvmbot commented Feb 6, 2016

Bugzilla Link 26503
Resolution WONTFIX
Resolved on Jun 03, 2019 18:41
Version unspecified
OS Linux
Reporter LLVM Bugzilla Contributor
CC @mclow

Extended Description

It instantiates some ctype templates which have not yet been defined for these character types.

@mclow
Copy link
Contributor

mclow commented Feb 8, 2016

instantiates some ctype templates which have not yet been defined

Right. And the standard only requires ctype specializations for char and wchar_t
(see table 80)

@mclow
Copy link
Contributor

mclow commented Feb 9, 2016

Actually, it looks like much of the streaming infrastructure depends on having a valid ctype available; so this fails, too:

#include
#include
#include
#include

template <class CharT, class Traits = std::char_traits>
std::basic_string<CharT, Traits> stringViaStream ( const CharT *p ) {
std::basic_stringstream<CharT, Traits> ss;
std::basic_string<CharT, Traits> s;

ss << p;
ss >> s;
assert ( s == p );
return s;
}

int main () {
stringViaStream ( "123");
stringViaStream (L"123");
// stringViaStream (U"123");
// stringViaStream (u"123");
}

@mclow
Copy link
Contributor

mclow commented Feb 9, 2016

Or rather, it will fail if you uncomment either of the last two lines.

@mclow
Copy link
Contributor

mclow commented Jun 4, 2019

That's now Table 90 (http://wg21.link/locale.category).
Closing as "won't fix".

@llvmbot llvmbot transferred this issue from llvm/llvm-bugzilla-archive Dec 10, 2021
@Quuxplusone Quuxplusone added the wontfix Issue is real, but we can't or won't fix it. Not invalid label Jan 20, 2022
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bugzilla Issues migrated from bugzilla libc++ libc++ C++ Standard Library. Not GNU libstdc++. Not libc++abi. wontfix Issue is real, but we can't or won't fix it. Not invalid
Projects
None yet
Development

No branches or pull requests

3 participants