alias decltype_auto to decltype

pull/261/head
John Drouhard 2022-01-16 17:00:14 +07:00
parent 6800b65532
commit 862f6f2841
5 changed files with 13 additions and 19 deletions

@ -59,7 +59,7 @@ module.exports = grammar(C, {
placeholder_type_specifier: $ => seq(
field('constraint', optional($._type_specifier)),
choice($.auto, $.decltype_auto)
choice($.auto, alias($.decltype_auto, $.decltype))
),
auto: $ => 'auto',

9
src/grammar.json vendored

@ -7496,8 +7496,13 @@
"name": "auto"
},
{
"type": "SYMBOL",
"name": "decltype_auto"
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "decltype_auto"
},
"named": true,
"value": "decltype"
}
]
}

@ -1857,18 +1857,7 @@
{
"type": "_expression",
"named": true
}
]
}
},
{
"type": "decltype_auto",
"named": true,
"fields": {},
"children": {
"multiple": false,
"required": true,
"types": [
},
{
"type": "auto",
"named": true
@ -3532,7 +3521,7 @@
"named": true
},
{
"type": "decltype_auto",
"type": "decltype",
"named": true
}
]

4
src/parser.c vendored

@ -719,7 +719,7 @@ static const char * const ts_symbol_names[] = {
[sym_string_literal] = "string_literal",
[sym__empty_declaration] = "_empty_declaration",
[sym_placeholder_type_specifier] = "placeholder_type_specifier",
[sym_decltype_auto] = "decltype_auto",
[sym_decltype_auto] = "decltype",
[sym_decltype] = "decltype",
[sym_class_specifier] = "class_specifier",
[sym__class_name] = "_class_name",
@ -1131,7 +1131,7 @@ static const TSSymbol ts_symbol_map[] = {
[sym_string_literal] = sym_string_literal,
[sym__empty_declaration] = sym__empty_declaration,
[sym_placeholder_type_specifier] = sym_placeholder_type_specifier,
[sym_decltype_auto] = sym_decltype_auto,
[sym_decltype_auto] = sym_decltype,
[sym_decltype] = sym_decltype,
[sym_class_specifier] = sym_class_specifier,
[sym__class_name] = sym__class_name,

@ -426,7 +426,7 @@ Sortable decltype(auto) foo = i();
(declaration
(placeholder_type_specifier
(type_identifier)
(decltype_auto
(decltype
(auto)))
(init_declarator
(identifier)