Home | History | Annotate | Download | only in Sema

Lines Matching defs:Var

520   VarDecl *Var = VarDecl::Create(SemaRef.Context, DC, D->getInnerLocStart(),
526 SemaRef.inferObjCARCLifetime(Var))
527 Var->setInvalidDecl();
530 if (SubstQualifier(D, Var))
533 SemaRef.BuildVariableInstantiation(Var, D, TemplateArgs, LateAttrs, Owner,
538 if (SemaRef.isCopyElisionCandidate(ReturnType, Var, false))
539 Var->setNRVOVariable(true);
542 Var->setImplicit(D->isImplicit());
544 return Var;
2466 Expr *Var = SemaRef.SubstExpr(I, TemplateArgs).get();
2467 assert(isa<DeclRefExpr>(Var) && "threadprivate arg is not a DeclRefExpr");
2468 Vars.push_back(Var);
2697 VarTemplateSpecializationDecl *Var = VarTemplateSpecializationDecl::Create(
2701 Var->setTemplateArgsInfo(TemplateArgsInfo);
2703 VarTemplate->AddSpecialization(Var, InsertPos);
2706 if (SubstQualifier(D, Var))
2709 SemaRef.BuildVariableInstantiation(Var, D, TemplateArgs, LateAttrs,
2712 return Var;
3702 VarDecl *Var, VarDecl *OldVar,
3705 if (Var->getAnyInitializer())
3710 if (Var->isStaticDataMember() && !OldVar->isOutOfLine())
3723 if (Var->hasAttr<DLLImportAttr>() &&
3729 AddInitializerToDecl(Var, InitExpr, DirectInit, TypeMayContainAuto);
3731 ActOnUninitializedDecl(Var, TypeMayContainAuto);
3735 Var->setInvalidDecl();
3739 } else if ((!Var->isStaticDataMember() || Var->isOutOfLine()) &&
3740 !Var->isCXXForRangeDecl())
3741 ActOnUninitializedDecl(Var, false);
3751 /// \param Var the already-instantiated declaration of a static member
3762 VarDecl *Var,
3765 InstantiateVariableDefinition(PointOfInstantiation, Var, Recursive,
3770 VarDecl *Var, bool Recursive,
3772 if (Var->isInvalidDecl())
3776 dyn_cast<VarTemplateSpecializationDecl>(Var);
3779 getTemplateInstantiationArgs(Var);
3827 !Var->hasInit()) {
3830 InstantiatingTemplate Inst(*this, PointOfInstantiation, Var);
3844 ContextRAII PreviousContext(*this, Var->getDeclContext());
3845 InstantiateVariableInitializer(Var, PatternDecl, TemplateArgs);
3874 assert(Var->isStaticDataMember() && "not a static data member?");
3875 PatternDecl = Var->getInstantiatedFromStaticDataMember();
3890 diag::err_explicit_instantiation_undefined_var_template) << Var;
3894 << 2 << Var->getDeclName() << Var->getDeclContext();
3898 Var->setInvalidDecl();
3899 } else if (Var->getTemplateSpecializationKind()
3902 std::make_pair(Var, PointOfInstantiation));
3908 TemplateSpecializationKind TSK = Var->getTemplateSpecializationKind();
3924 VarDecl *Var;
3926 PassToConsumerRAII(ASTConsumer &Consumer, VarDecl *Var)
3927 : Consumer(Consumer), Var(Var) { }
3930 Consumer.HandleCXXStaticMemberVarInstantiation(Var);
3932 } PassToConsumerRAII(Consumer, Var);
3935 if (VarDecl *Def = Var->getDefinition()) {
3938 Def->setTemplateSpecializationKind(Var->getTemplateSpecializationKind(),
3943 InstantiatingTemplate Inst(*this, PointOfInstantiation, Var);
3957 ContextRAII PreviousContext(*this, Var->getDeclContext());
3960 VarDecl *OldVar = Var;
3962 Var = cast_or_null<VarDecl>(SubstDecl(Def, Var->getDeclContext(),
3964 else if (Var->isStaticDataMember() &&
3965 Var->getLexicalDeclContext()->isRecord()) {
3969 TemplateDeclInstantiator Instantiator(*this, Var->getDeclContext(),
3971 Var = cast_or_null<VarDecl>(Instantiator.VisitVarTemplateSpecializationDecl(
3974 if (Var) {
3980 cast<VarTemplateSpecializationDecl>(Var)->setInstantiationOf(
3984 LookupResult R(*this, Var->getDeclName(), Var->getLocation(),
3987 MergeVarDecl(Var, R);
3990 InstantiateVariableInitializer(Var, Def, TemplateArgs);
3995 Var = CompleteVarTemplateSpecializationDecl(VarSpec, Def, TemplateArgs);
3999 if (Var) {
4000 PassToConsumerRAII.Var = Var;
4001 Var->setTemplateSpecializationKind(OldVar->getTemplateSpecializationKind(),
4324 if (VarDecl *Var = dyn_cast<VarDecl>(Other))
4325 if (Var->isStaticDataMember())
4326 return isInstantiationOfStaticDataMember(cast<VarDecl>(D), Var);
4677 VarDecl *Var = cast<VarDecl>(Inst.first);
4679 assert((Var->isStaticDataMember() ||
4680 isa<VarTemplateSpecializationDecl>(Var)) &&
4686 if (Var->getMostRecentDecl()->isInvalidDecl())
4691 switch (Var->getMostRecentDecl()->getTemplateSpecializationKind()) {
4700 if (Var != Var->getMostRecentDecl()) continue;
4705 PrettyDeclStackTraceEntry CrashInfo(*this, Var, SourceLocation(),
4707 bool DefinitionRequired = Var->getTemplateSpecializationKind() ==
4712 InstantiateVariableDefinition(/*FIXME:*/ Inst.second, Var, true,