Skip to content

Commit b8cdacb

Browse files
authored
Merge 2022-07 CWG Motion 6
P2362R3 Remove non-encodable wide character literals and multicharacter wide character literals
2 parents 3443f02 + 0bf84a3 commit b8cdacb

File tree

1 file changed

+10
-19
lines changed

1 file changed

+10
-19
lines changed

source/lex.tex

Lines changed: 10 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1356,7 +1356,7 @@
13561356
more than one \grammarterm{c-char}.
13571357
The \grammarterm{encoding-prefix} of
13581358
a non-encodable character literal or a multicharacter literal
1359-
shall be absent or \tcode{L}.
1359+
shall be absent.
13601360
Such \grammarterm{character-literal}s are conditionally-supported.
13611361

13621362
\pnum
@@ -1367,17 +1367,17 @@
13671367
as defined by \tref{lex.ccon.literal}.
13681368
The special cases for
13691369
non-encodable character literals and multicharacter literals
1370-
take precedence over their respective base kinds.
1370+
take precedence over the base kind.
13711371
\begin{note}
1372-
The associated character encoding for ordinary and wide character literals
1372+
The associated character encoding for ordinary character literals
13731373
determines encodability,
13741374
but does not determine the value of
1375-
non-encodable ordinary or wide character literals or
1376-
ordinary or wide multicharacter literals.
1375+
non-encodable ordinary character literals or
1376+
ordinary multicharacter literals.
13771377
The examples in \tref{lex.ccon.literal}
1378-
for non-encodable ordinary and wide character literals assume that
1378+
for non-encodable ordinary character literals assume that
13791379
the specified character lacks representation in
1380-
the ordinary literal encoding or wide literal encoding, respectively, or
1380+
the ordinary literal encoding or
13811381
that encoding the character would require more than one code unit.
13821382
\end{note}
13831383

@@ -1405,18 +1405,9 @@
14051405
\tcode{L} &
14061406
\defnx{wide character literal}{literal!character!wide} &
14071407
\keyword{wchar_t} &
1408-
wide &
1409-
\tcode{L'w'} \\ \cline{2-3}\cline{5-5}
1410-
&
1411-
non-encodable wide character literal &
1412-
\keyword{wchar_t} &
1413-
literal &
1414-
\tcode{L'\textbackslash U0001F32A'} \\ \cline{2-3}\cline{5-5}
1415-
&
1416-
wide multicharacter literal &
1417-
\keyword{wchar_t} &
1418-
encoding &
1419-
\tcode{L'abcd'} \\ \hline
1408+
wide literal &
1409+
\tcode{L'w'} \\
1410+
& & & encoding & \\ \hline
14201411
\tcode{u8} &
14211412
\defnx{UTF-8 character literal}{literal!character!UTF-8} &
14221413
\keyword{char8_t} &

0 commit comments

Comments
 (0)