Procházet zdrojové kódy

Merge pull request #155 from amaanq/fix-attribute

feat: add `attribute_specifier` to struct
pull/156/head
Amaan Qureshi před 3 roky
odevzdal GitHub
rodič
revize
fcd123005b
V databázi nebyl nalezen žádný známý klíč pro tento podpis ID GPG klíče: 4AEE18F83AFDEB23
4 změnil soubory, kde provedl 58699 přidání a 58460 odebrání
  1. +1
    -0
      grammar.js
  2. +12
    -0
      src/grammar.json
  3. +58672
    -58459
      src/parser.c
  4. +14
    -1
      test/corpus/declarations.txt

+ 1
- 0
grammar.js Zobrazit soubor

@ -575,6 +575,7 @@ module.exports = grammar({
struct_specifier: $ => prec.right(seq(
'struct',
optional($.attribute_specifier),
optional($.ms_declspec_modifier),
choice(
seq(

+ 12
- 0
src/grammar.json Zobrazit soubor

@ -3708,6 +3708,18 @@
"type": "STRING",
"value": "struct"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "attribute_specifier"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [

+ 58672
- 58459
src/parser.c
Diff nebyl zobrazen, protože je příliš veliký
Zobrazit soubor


+ 14
- 1
test/corpus/declarations.txt Zobrazit soubor

@ -676,6 +676,10 @@ enum Z {
A
} __attribute__((aligned(16)));
struct __attribute__((__packed__)) foo_t {
int x;
};
--------------------------------------------------------------------------------
(translation_unit
@ -889,4 +893,13 @@ enum Z {
(call_expression
(identifier)
(argument_list
(number_literal)))))))
(number_literal))))))
(struct_specifier
(attribute_specifier
(argument_list
(identifier)))
(type_identifier)
(field_declaration_list
(field_declaration
(primitive_type)
(field_identifier)))))

Načítá se…
Zrušit
Uložit