|
9 | 9 |
|
10 | 10 | subgraph cluster_string_literal_initialization { |
11 | 11 | INSTRUCTION_NODE(STRING_LITERAL_INIT_HEAD, "Initialization as follows:", "[dcl.init.string]") |
12 | | - -> INSTRUCTION_NODE(string_literal_verify_kind, "Verify array type and literal type match.") |
| 12 | + -> INSTRUCTION_NODE(string_literal_verify_kind, "Verify array element type and literal type match.") |
13 | 13 | -> { |
14 | 14 | rank=same; |
15 | 15 |
|
16 | | - string_literal_kind_char [label="char[] / ordinary literal"] |
17 | | - string_literal_kind_char8 [label="char8_t[] / UTF-8 literal"] |
18 | | - string_literal_kind_char16 [label="char16_t[] / UTF-16 literal"] |
19 | | - string_literal_kind_char32 [label="char32_t[] / UTF-32 literal"] |
20 | | - string_literal_kind_wchar [label="wchar_t[] / wide literal"] |
| 16 | + string_literal_kind_char [label="char / ordinary literal"] |
| 17 | + string_literal_kind_uchar [label="unsigned char / ordinary literal"] |
| 18 | + string_literal_kind_schar [label="signed char / ordinary literal"] |
| 19 | + string_literal_kind_char8 [label="char8_t / UTF-8 literal"] |
| 20 | + string_literal_kind_utf8_char [label="char / UTF-8 literal"] |
| 21 | + string_literal_kind_utf8_uchar [label="unsigned char / UTF-8 literal"] |
| 22 | + string_literal_kind_char16 [label="char16_t / UTF-16 literal"] |
| 23 | + string_literal_kind_char32 [label="char32_t / UTF-32 literal"] |
| 24 | + string_literal_kind_wchar [label="wchar_t / wide literal"] |
21 | 25 | string_literal_kind_other [label="Anything else"] |
22 | 26 |
|
23 | 27 | // Force these nodes to layout in the following order |
24 | | - string_literal_kind_char -> string_literal_kind_char8 -> string_literal_kind_char16 -> string_literal_kind_char32 -> string_literal_kind_wchar -> string_literal_kind_other [style=invis] |
| 28 | + string_literal_kind_char -> string_literal_kind_uchar -> string_literal_kind_schar -> string_literal_kind_char8 -> string_literal_kind_utf8_char -> string_literal_kind_utf8_uchar -> string_literal_kind_char16 -> string_literal_kind_char32 -> string_literal_kind_wchar -> string_literal_kind_other [style=invis] |
25 | 29 | } |
26 | 30 |
|
27 | 31 | string_literal_kind_other -> NEW_ILL_FORMED() |
28 | 32 |
|
29 | | - { string_literal_kind_char, string_literal_kind_char8, string_literal_kind_char16, string_literal_kind_char32, string_literal_kind_wchar } -> string_literal_initialize_first |
| 33 | + { string_literal_kind_char, string_literal_kind_uchar, string_literal_kind_schar, string_literal_kind_char8, string_literal_kind_utf8_char, string_literal_kind_utf8_uchar, string_literal_kind_char16, string_literal_kind_char32, string_literal_kind_wchar } -> string_literal_initialize_first |
30 | 34 |
|
31 | 35 | INSTRUCTION_NODE(string_literal_initialize_first, "Initialize the first elements of the array with successive values from the string literal.") |
32 | 36 | -> string_literal_has_too_many |
|
0 commit comments