reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

tools/clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
 4699   if (Var->isInvalidDecl())
 4704       Var->getTemplateSpecializationKindForInstantiation();
 4709   VarDecl *PatternDecl = Var->getTemplateInstantiationPattern();
 4712       getTemplateInstantiationArgs(Var);
 4715       dyn_cast<VarTemplateSpecializationDecl>(Var);
 4736         !Var->hasInit()) {
 4739       InstantiatingTemplate Inst(*this, PointOfInstantiation, Var);
 4742       PrettyDeclStackTraceEntry CrashInfo(Context, Var, SourceLocation(),
 4747       Var->setVisibleDespiteOwningModule();
 4759       ContextRAII PreviousContext(*this, Var->getDeclContext());
 4760       InstantiateVariableInitializer(Var, PatternDecl, TemplateArgs);
 4770     assert(Var->isStaticDataMember() && PatternDecl->isStaticDataMember() &&
 4783         std::make_pair(Var, PointOfInstantiation));
 4789           << Var;
 4792           Diag(PointOfInstantiation, diag::note_inst_declaration_hint) << Var;
 4801   if (DiagnoseUninstantiableTemplate(PointOfInstantiation, Var,
 4817       !Var->mightBeUsableInConstantExpressions(getASTContext()))
 4831   } PassToConsumerRAII(Consumer, Var);
 4834   if (VarDecl *Def = Var->getDefinition()) {
 4837     Def->setTemplateSpecializationKind(Var->getTemplateSpecializationKind(),
 4842   InstantiatingTemplate Inst(*this, PointOfInstantiation, Var);
 4845   PrettyDeclStackTraceEntry CrashInfo(Context, Var, SourceLocation(),
 4856   ContextRAII PreviousContext(*this, Var->getDeclContext());
 4861   VarDecl *OldVar = Var;
 4865     InstantiateVariableInitializer(Var, Def, TemplateArgs);
 4867     Var = cast_or_null<VarDecl>(SubstDecl(Def, Var->getDeclContext(),
 4867     Var = cast_or_null<VarDecl>(SubstDecl(Def, Var->getDeclContext(),
 4869   } else if (Var->isStaticDataMember() &&
 4870              Var->getLexicalDeclContext()->isRecord()) {
 4874     TemplateDeclInstantiator Instantiator(*this, Var->getDeclContext(),
 4876     Var = cast_or_null<VarDecl>(Instantiator.VisitVarTemplateSpecializationDecl(
 4879     if (Var) {
 4885         cast<VarTemplateSpecializationDecl>(Var)->setInstantiationOf(
 4889       LookupResult R(*this, Var->getDeclName(), Var->getLocation(),
 4889       LookupResult R(*this, Var->getDeclName(), Var->getLocation(),
 4892       MergeVarDecl(Var, R);
 4895       InstantiateVariableInitializer(Var, Def, TemplateArgs);
 4900     Var = CompleteVarTemplateSpecializationDecl(VarSpec, Def, TemplateArgs);
 4904   if (Var) {
 4905     PassToConsumerRAII.Var = Var;
 4906     Var->setTemplateSpecializationKind(OldVar->getTemplateSpecializationKind(),