On Fri, 2 Jun 2023 at 17:52, Jonathan Wakely <jwak...@redhat.com> wrote:
> On Fri, 2 Jun 2023 at 16:45, Joseph Faulls wrote: > >> It is not required that codecvt<char8_t, char, mbstate_t> facet be >> supported by >> >> the locale, nor is it added as part of the default locale. This can lead >> to >> >> dangerous behaviour when static_cast. >> > > Ouch, yes indeed. I don't know why I added that there. Thanks for the > patch, I'll apply it to trunk and gcc-13 ASAP. > I've pushed it to trunk now. As it's only removing 3 lines I don't think we need a copyright assignment or DCO sign-off for this patch - thanks for contributing it. I think what I intended to check for there was codecvt<char16_t, char8_t, mbstate_t> and codecvt<char32_t, char8_t, mbstate_t>, but I had a brainfart. > > > > >> >> libstdc++-v3/ChangeLog: >> >> >> >> * include/bits/locale_classes.tcc: Remove check. >> >> --- >> >> libstdc++-v3/include/bits/locale_classes.tcc | 3 --- >> >> 1 file changed, 3 deletions(-) >> >> >> >> diff --git a/libstdc++-v3/include/bits/locale_classes.tcc >> b/libstdc++-v3/include/bits/locale_classes.tcc >> >> index 94838cd7796..2351dd5bcfb 100644 >> >> --- a/libstdc++-v3/include/bits/locale_classes.tcc >> >> +++ b/libstdc++-v3/include/bits/locale_classes.tcc >> >> @@ -129,9 +129,6 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION >> >> _GLIBCXX_STD_FACET(time_put<wchar_t>); >> >> _GLIBCXX_STD_FACET(messages<wchar_t>); >> >> #endif >> >> -#ifdef _GLIBCXX_USE_CHAR8_T >> >> - _GLIBCXX_STD_FACET(codecvt<char8_t, char, mbstate_t>); >> >> -#endif >> >> #if __cplusplus >= 201103L >> >> _GLIBCXX_STD_FACET(codecvt<char16_t, char, mbstate_t>); >> >> _GLIBCXX_STD_FACET(codecvt<char32_t, char, mbstate_t>); >> >> -- >> >> 2.34.1 >> >