forked from OSchip/llvm-project
[pseudo] Apply the function-declarator to member functions.
A followup patch of d489b3807f
, but for
member functions, this will eliminate a false parse of member
declaration.
Differential Revision: https://reviews.llvm.org/D131720
This commit is contained in:
parent
a1a1a78ac8
commit
1828c75d5f
|
@ -571,9 +571,9 @@ member-declaration := opaque-enum-declaration
|
|||
member-declaration := empty-declaration
|
||||
member-declarator-list := member-declarator
|
||||
member-declarator-list := member-declarator-list , member-declarator
|
||||
member-declarator := declarator virt-specifier-seq_opt pure-specifier_opt
|
||||
member-declarator := declarator requires-clause
|
||||
member-declarator := declarator brace-or-equal-initializer
|
||||
member-declarator := function-declarator virt-specifier-seq_opt pure-specifier_opt
|
||||
member-declarator := function-declarator requires-clause
|
||||
member-declarator := non-function-declarator brace-or-equal-initializer_opt
|
||||
member-declarator := IDENTIFIER_opt : constant-expression brace-or-equal-initializer_opt
|
||||
virt-specifier-seq := virt-specifier
|
||||
virt-specifier-seq := virt-specifier-seq virt-specifier
|
||||
|
|
|
@ -0,0 +1,9 @@
|
|||
// RUN: clang-pseudo -grammar=cxx -source=%s --print-forest | FileCheck %s
|
||||
|
||||
// Similiar to declarator-function.cpp, but for member functions.
|
||||
class Foo {
|
||||
void foo() {};
|
||||
// CHECK-NOT: member-declarator := declarator brace-or-equal-initializer
|
||||
// CHECK: member-declaration~function-definition := decl-specifier-seq function-declarator function-body
|
||||
// CHECK-NOT: member-declarator := declarator brace-or-equal-initializer
|
||||
};
|
Loading…
Reference in New Issue