@@ -15931,12 +15931,20 @@
15931
15931
\begin{itemize}
15932
15932
\item
15933
15933
\placeholder{CE} is a Unicode encoding and
15934
- \placeholder{C} corresponds to either
15935
- a UCS scalar value whose Unicode property \tcode{General_Category}
15936
- has a value in the groups \tcode{Separator} (\tcode{Z}) or \tcode{Other} (\tcode{C}) or to
15937
- a UCS scalar value which has the Unicode property \tcode{Grapheme_Extend=Yes} ,
15934
+ \placeholder{C} corresponds to a UCS scalar value
15935
+ whose Unicode property \tcode{General_Category} has a value in the groups
15936
+ %FIXME confusing - is the following C supposed to be the same C as above?
15937
+ \tcode{Separator} (\tcode{Z}) or \tcode{Other} ( \tcode{C}) ,
15938
15938
as described by table 12 of \UAX{44}, or
15939
15939
15940
+ \item
15941
+ \placeholder{CE} is a Unicode encoding and
15942
+ \placeholder{C} corresponds to a UCS scalar value
15943
+ which has the Unicode property \tcode{Grapheme_Extend=Yes} and
15944
+ \placeholder{C} is not immediately preceded in \placeholder{S} by
15945
+ a character \placeholder{P} appended to \placeholder{E}
15946
+ without translation to an escape sequence, or
15947
+
15940
15948
\item
15941
15949
\placeholder{CE} is not a Unicode encoding and
15942
15950
\placeholder{C} is one of an implementation-defined set
16018
16026
then \placeholder{C} is appended unchanged.
16019
16027
\end{itemize}
16020
16028
16021
- %% FIXME: Example is incomplete; s2 and s6 are missing below;
16029
+ %% FIXME: Example is incomplete; s2 and s6 from P2286R8 are missing below;
16022
16030
%% FIXME: their Unicode characters are not available in our font (Latin Modern).
16031
+ %% FIXME: ... same for s8 from P2713R1
16023
16032
\begin{example}
16024
16033
\begin{codeblock}
16025
16034
string s0 = format("[{}]", "h\tllo"); // \tcode{s0} has value: \tcode{[h llo]}
16030
16039
string s4 = format("[{:?}]", string("\0 \n \t \x02 \x1b", 9));
16031
16040
// \tcode{s4} has value: \tcode{["\textbackslash u\{0\} \textbackslash n \textbackslash t \textbackslash u\{2\} \textbackslash u\{1b\}"]}
16032
16041
string s5 = format("[{:?}]", "\xc3\x28"); // invalid UTF-8, \tcode{s5} has value: \tcode{["\textbackslash x\{c3\}("]}
16042
+ string s6 = format("[{:?}]", "\u0301"); // s6 has value: ["\u{301}"]
16043
+ string s7 = format("[{:?}]", "\\\u0301"); // s7 has value: ["\\\u{301}"]
16033
16044
\end{codeblock}
16034
16045
\end{example}
16035
16046
0 commit comments