File tree Expand file tree Collapse file tree 3 files changed +15
-2
lines changed Expand file tree Collapse file tree 3 files changed +15
-2
lines changed Original file line number Diff line number Diff line change @@ -412,7 +412,7 @@ noptr-declarator := declarator-id
412
412
noptr-declarator := noptr-declarator parameters-and-qualifiers
413
413
noptr-declarator := noptr-declarator [ constant-expression_opt ]
414
414
noptr-declarator := ( ptr-declarator )
415
- parameters-and-qualifiers := ( parameter-declaration-clause_opt ) cv-qualifier-seq_opt ref-qualifier_opt noexcept-specifier_opt
415
+ parameters-and-qualifiers := ( parameter-declaration-clause_opt [recover=Brackets] ) cv-qualifier-seq_opt ref-qualifier_opt noexcept-specifier_opt
416
416
trailing-return-type := -> type-id
417
417
ptr-operator := * cv-qualifier-seq_opt
418
418
ptr-operator := &
Original file line number Diff line number Diff line change @@ -4,7 +4,7 @@ void foo2(int, ...);
4
4
// CHECK-NEXT: ├─decl-specifier-seq~VOID :=
5
5
// CHECK-NEXT: ├─init-declarator-list~noptr-declarator := noptr-declarator parameters-and-qualifiers
6
6
// CHECK-NEXT: │ ├─noptr-declarator~IDENTIFIER :=
7
- // CHECK-NEXT: │ └─parameters-and-qualifiers := ( parameter-declaration-clause )
7
+ // CHECK-NEXT: │ └─parameters-and-qualifiers := ( parameter-declaration-clause [recover=Brackets] )
8
8
// CHECK-NEXT: │ ├─( :=
9
9
// CHECK-NEXT: │ ├─parameter-declaration-clause := parameter-declaration-list , ...
10
10
// CHECK-NEXT: │ │ ├─parameter-declaration-list~INT :=
Original file line number Diff line number Diff line change
1
+ // RUN: clang-pseudo -grammar=cxx -source=%s --print-forest | FileCheck %s
2
+ void foo (complete garbage???) {}
3
+ // CHECK: translation-unit~function-definition := decl-specifier-seq declarator function-body
4
+ // CHECK-NEXT: ├─decl-specifier-seq~VOID := tok[0]
5
+ // CHECK-NEXT: ├─declarator~noptr-declarator := noptr-declarator parameters-and-qualifiers
6
+ // CHECK-NEXT: │ ├─noptr-declarator~IDENTIFIER := tok[1]
7
+ // CHECK-NEXT: │ └─parameters-and-qualifiers := ( parameter-declaration-clause [recover=Brackets] )
8
+ // CHECK-NEXT: │ ├─( := tok[2]
9
+ // CHECK-NEXT: │ ├─parameter-declaration-clause := <opaque>
10
+ // CHECK-NEXT: │ └─) := tok[8]
11
+ // CHECK-NEXT: └─function-body~compound-statement := { }
12
+ // CHECK-NEXT: ├─{ := tok[9]
13
+ // CHECK-NEXT: └─} := tok[10]
You can’t perform that action at this time.
0 commit comments