]> granicus.if.org Git - clang/commitdiff
Add cross-referencing comments to ParseDirectDeclarator to note that
authorRichard Smith <richard-llvm@metafoo.co.uk>
Tue, 27 Mar 2012 01:42:32 +0000 (01:42 +0000)
committerRichard Smith <richard-llvm@metafoo.co.uk>
Tue, 27 Mar 2012 01:42:32 +0000 (01:42 +0000)
isConstructorDeclaration also needs updating for any extension to the
grammar of a direct-declarator.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153490 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Parse/ParseDecl.cpp

index 75abcae2828a0effdc1de742788678f5d966f337..9d8aed533311b278d00c01119bc8bec39d8c13cc 100644 (file)
@@ -3393,7 +3393,8 @@ bool Parser::isConstructorDeclarator() {
     ConsumeToken();
 
     // If this is not a constructor, we must be parsing a declarator,
-    // which must have one of the following syntactic forms:
+    // which must have one of the following syntactic forms (see the
+    // grammar extract at the start of ParseDirectDeclarator):
     switch (Tok.getKind()) {
     case tok::l_paren:
       // C(X   (   int));
@@ -3543,7 +3544,8 @@ void Parser::ParseDeclarator(Declarator &D) {
 /// ptr-operator production.
 ///
 /// If the grammar of this construct is extended, matching changes must also be
-/// made to TryParseDeclarator and MightBeDeclarator.
+/// made to TryParseDeclarator and MightBeDeclarator, and possibly to
+/// isConstructorDeclarator.
 ///
 ///       declarator: [C99 6.7.5] [C++ 8p4, dcl.decl]
 /// [C]     pointer[opt] direct-declarator
@@ -3735,6 +3737,8 @@ void Parser::ParseDeclaratorInternal(Declarator &D,
 ///          '~' class-name
 ///         template-id
 ///
+/// Note, any additional constructs added here may need corresponding changes
+/// in isConstructorDeclarator.
 void Parser::ParseDirectDeclarator(Declarator &D) {
   DeclaratorScopeObj DeclScopeObj(*this, D.getCXXScopeSpec());