diff options
| author | Dimitry Andric <dim@FreeBSD.org> | 2017-01-14 22:12:13 +0000 | 
|---|---|---|
| committer | Dimitry Andric <dim@FreeBSD.org> | 2017-01-14 22:12:13 +0000 | 
| commit | f1a29dd3442304e183b0491fbe2d33f6c963069e (patch) | |
| tree | 64b5defb92948be8b09a6f1b5c48ec60abad1325 /contrib/llvm/tools/clang/lib/Sema/SemaTemplateInstantiateDecl.cpp | |
| parent | 8a6fe8ce60ab99778558c4951d23615a0141daf0 (diff) | |
| parent | 581a6d8501ff5614297da837b81ed3b6956361ea (diff) | |
Notes
Diffstat (limited to 'contrib/llvm/tools/clang/lib/Sema/SemaTemplateInstantiateDecl.cpp')
| -rw-r--r-- | contrib/llvm/tools/clang/lib/Sema/SemaTemplateInstantiateDecl.cpp | 13 | 
1 files changed, 7 insertions, 6 deletions
| diff --git a/contrib/llvm/tools/clang/lib/Sema/SemaTemplateInstantiateDecl.cpp b/contrib/llvm/tools/clang/lib/Sema/SemaTemplateInstantiateDecl.cpp index d2a5e5cb5312..48d8b94af153 100644 --- a/contrib/llvm/tools/clang/lib/Sema/SemaTemplateInstantiateDecl.cpp +++ b/contrib/llvm/tools/clang/lib/Sema/SemaTemplateInstantiateDecl.cpp @@ -1219,8 +1219,10 @@ Decl *TemplateDeclInstantiator::VisitClassTemplateDecl(ClassTemplateDecl *D) {    ClassTemplateDecl *Inst      = ClassTemplateDecl::Create(SemaRef.Context, DC, D->getLocation(), -                                D->getIdentifier(), InstParams, RecordInst, -                                PrevClassTemplate); +                                D->getIdentifier(), InstParams, RecordInst); +  assert(!(isFriend && Owner->isDependentContext())); +  Inst->setPreviousDecl(PrevClassTemplate); +    RecordInst->setDescribedClassTemplate(Inst);    if (isFriend) { @@ -4085,7 +4087,6 @@ void Sema::InstantiateVariableInitializer(      }      if (!Init.isInvalid()) { -      bool TypeMayContainAuto = true;        Expr *InitExpr = Init.get();        if (Var->hasAttr<DLLImportAttr>() && @@ -4094,9 +4095,9 @@ void Sema::InstantiateVariableInitializer(          // Do not dynamically initialize dllimport variables.        } else if (InitExpr) {          bool DirectInit = OldVar->isDirectInit(); -        AddInitializerToDecl(Var, InitExpr, DirectInit, TypeMayContainAuto); +        AddInitializerToDecl(Var, InitExpr, DirectInit);        } else -        ActOnUninitializedDecl(Var, TypeMayContainAuto); +        ActOnUninitializedDecl(Var);      } else {        // FIXME: Not too happy about invalidating the declaration        // because of a bogus initializer. @@ -4119,7 +4120,7 @@ void Sema::InstantiateVariableInitializer(      if (Var->isCXXForRangeDecl())        return; -    ActOnUninitializedDecl(Var, false); +    ActOnUninitializedDecl(Var);    }  } | 
