diff options
Diffstat (limited to 'lib/Parse/ParseTemplate.cpp')
| -rw-r--r-- | lib/Parse/ParseTemplate.cpp | 10 | 
1 files changed, 3 insertions, 7 deletions
diff --git a/lib/Parse/ParseTemplate.cpp b/lib/Parse/ParseTemplate.cpp index ade918fb221a..2e0411e8a81c 100644 --- a/lib/Parse/ParseTemplate.cpp +++ b/lib/Parse/ParseTemplate.cpp @@ -246,7 +246,7 @@ Parser::ParseSingleDeclarationAfterTemplate(      return 0;    } -  LateParsedAttrList LateParsedAttrs; +  LateParsedAttrList LateParsedAttrs(true);    if (DeclaratorInfo.isFunctionDeclarator())      MaybeParseGNUAttributes(DeclaratorInfo, &LateParsedAttrs); @@ -889,8 +889,7 @@ bool Parser::AnnotateTemplateIdToken(TemplateTy Template, TemplateNameKind TNK,      return true;    } -  ASTTemplateArgsPtr TemplateArgsPtr(Actions, TemplateArgs.data(), -                                     TemplateArgs.size()); +  ASTTemplateArgsPtr TemplateArgsPtr(TemplateArgs);    // Build the annotation token.    if (TNK == TNK_Type_template && AllowTypeAnnotation) { @@ -942,8 +941,6 @@ bool Parser::AnnotateTemplateIdToken(TemplateTy Template, TemplateNameKind TNK,        Tok.setLocation(TemplateKWLoc);      else        Tok.setLocation(TemplateNameLoc); - -    TemplateArgsPtr.release();    }    // Common fields for the annotation token @@ -969,8 +966,7 @@ void Parser::AnnotateTemplateIdTokenAsType() {            TemplateId->Kind == TNK_Dependent_template_name) &&           "Only works for type and dependent templates"); -  ASTTemplateArgsPtr TemplateArgsPtr(Actions, -                                     TemplateId->getTemplateArgs(), +  ASTTemplateArgsPtr TemplateArgsPtr(TemplateId->getTemplateArgs(),                                       TemplateId->NumArgs);    TypeResult Type  | 
