Since the adoption of P2736 C++23 and the current C++
working draft just refer to "the Unicode Standard", with a URL
referring to the latest version. We removed the bibliography
entry for TR29 revision 35. P2736 gives the justification for
this that the revision of #29 included in Unicode 15 (revision
41) is just a bug fix, so there's no problem referring to that
instead.
That might have been true last year, but the current
Unicode Standard (15.1.0) includes revision 43 of UAX #29,
which makes significant changes to the extended grapheme
cluster breaking rules. A new state machine is needed (and new
lookup tables of properties) to implement rule GB9c. That's
not just a bug fix, is it?
Are C++ implementations expected to implement rule GB9c,
despite it not being part of the standard when C++23 was
published? If not, where in the C++23 standard does it say
that implementations should conform to version 15.0.0 of the
Unicode Standard, rather than version 15.1.0, or whatever
version they publish next? How can we conform to a moving
target?
Am I missing some reference that names Unicode 15.0.0?