C++ Logo

sg16

Advanced search

Re: utfN_view

From: Daniel Krügler <daniel.kruegler_at_[hidden]>
Date: Sat, 6 May 2023 14:14:54 +0200
Am Fr., 5. Mai 2023 um 05:37 Uhr schrieb Zach Laine via SG16
<sg16_at_[hidden]>:
>
> On Thu, May 4, 2023 at 11:36 AM Zach Laine <whatwasthataddress_at_[hidden]> wrote:
> >
> > On Thu, May 4, 2023 at 1:20 AM Jens Maurer <jens.maurer_at_[hidden]> wrote:
> > >
> > >
> > > On 04/05/2023 03.58, Zach Laine via SG16 wrote:
> > > >> I don't think the operator<< above works as a general-purpose method regardless. What does it do when CharT is wchar_t?
> > > >
> > > > It transcodes to UTF-16, of course.
> > >
> > > I hope not. On my box, wchar_t is not UTF-16, it's UTF-32.
> >
> > Right. I should have said, "it transcodes to UTF-N, of course, where N
> > is the number of bits_of<wchar_t>(), of course". On all the big 3,
> > that means UTF-16 or UTF-32.
>
>
> Ok, new revision is available: https://isocpp.org/files/papers/D2728R2.html
>
> I still have not done the change to the concepts, and introduced the
> associated adaptor thingy. This breaks literally all of my Boost.Text
> test code, so it may take a while. I will do it, but might not finish
> by Wednesday.

I notice some exception-specification issues:

- Section 5.3: std::null_sentinel_t::base() should be noexcept
- Section 5.4: Basically all free is_XX and XX_code_units functions in
std::uc should be noexcept
- Section 5.5: use_replacement_character::operator() should be noexcept

Other issues:

- Section 5.5: The typedef base-type of utf_32_to_8_iterator seems to
be defined inconsistently to the actual base type of that class
template.
- Section 5.6.1: Refers to some spurious stl_interfaces namespace

Thanks,

- Daniel









> Zach
> --
> SG16 mailing list
> SG16_at_[hidden]
> https://lists.isocpp.org/mailman/listinfo.cgi/sg16

Received on 2023-05-06 12:15:06