Lines Matching refs:VDecl

10797     VarDecl *VDecl;  member
10802 return VN.VDecl ? Diag << VN.VDecl : Diag << VN.Name; in operator <<()
10807 QualType Sema::deduceVarTypeFromInitializer(VarDecl *VDecl, in deduceVarTypeFromInitializer() argument
10812 bool IsInitCapture = !VDecl; in deduceVarTypeFromInitializer()
10813 assert((!VDecl || !VDecl->isInitCapture()) && in deduceVarTypeFromInitializer()
10816 VarDeclOrName VN{VDecl, Name}; in deduceVarTypeFromInitializer()
10823 assert(VDecl && "no init for init capture deduction?"); in deduceVarTypeFromInitializer()
10828 VDecl->hasExternalStorage() || in deduceVarTypeFromInitializer()
10829 VDecl->isStaticDataMember()) { in deduceVarTypeFromInitializer()
10830 Diag(VDecl->getLocation(), diag::err_auto_var_requires_init) in deduceVarTypeFromInitializer()
10831 << VDecl->getDeclName() << Type; in deduceVarTypeFromInitializer()
10846 assert(VDecl && "non-auto type for init capture deduction?"); in deduceVarTypeFromInitializer()
10847 InitializedEntity Entity = InitializedEntity::InitializeVariable(VDecl); in deduceVarTypeFromInitializer()
10849 VDecl->getLocation(), DirectInit, Init); in deduceVarTypeFromInitializer()
10904 if (VDecl && isa<DecompositionDecl>(VDecl) && in deduceVarTypeFromInitializer()
10913 DiagnoseAutoDeductionFailure(VDecl, DeduceInit); in deduceVarTypeFromInitializer()
10944 bool Sema::DeduceVariableDeclarationType(VarDecl *VDecl, bool DirectInit, in DeduceVariableDeclarationType() argument
10947 VDecl, VDecl->getDeclName(), VDecl->getType(), VDecl->getTypeSourceInfo(), in DeduceVariableDeclarationType()
10948 VDecl->getSourceRange(), DirectInit, Init); in DeduceVariableDeclarationType()
10950 VDecl->setInvalidDecl(); in DeduceVariableDeclarationType()
10954 VDecl->setType(DeducedType); in DeduceVariableDeclarationType()
10955 assert(VDecl->isLinkageValid()); in DeduceVariableDeclarationType()
10958 if (getLangOpts().ObjCAutoRefCount && inferObjCARCLifetime(VDecl)) in DeduceVariableDeclarationType()
10959 VDecl->setInvalidDecl(); in DeduceVariableDeclarationType()
10963 if (VarDecl *Old = VDecl->getPreviousDecl()) { in DeduceVariableDeclarationType()
10966 MergeVarDeclTypes(VDecl, Old, /*MergeTypeWithPrevious*/ false); in DeduceVariableDeclarationType()
10970 CheckVariableDeclarationType(VDecl); in DeduceVariableDeclarationType()
10971 return VDecl->isInvalidDecl(); in DeduceVariableDeclarationType()
10993 VarDecl *VDecl = dyn_cast<VarDecl>(RealDecl); in AddInitializerToDecl() local
10994 if (!VDecl) { in AddInitializerToDecl()
11002 if (VDecl->getType()->isUndeducedType()) { in AddInitializerToDecl()
11006 ExprResult Res = CorrectDelayedTyposInExpr(Init, VDecl); in AddInitializerToDecl()
11013 if (DeduceVariableDeclarationType(VDecl, DirectInit, Init)) in AddInitializerToDecl()
11018 if (VDecl->hasAttr<DLLImportAttr>() && !VDecl->isStaticDataMember()) { in AddInitializerToDecl()
11019 Diag(VDecl->getLocation(), diag::err_attribute_dllimport_data_definition); in AddInitializerToDecl()
11020 VDecl->setInvalidDecl(); in AddInitializerToDecl()
11024 if (VDecl->isLocalVarDecl() && VDecl->hasExternalStorage()) { in AddInitializerToDecl()
11026 Diag(VDecl->getLocation(), diag::err_block_extern_cant_init); in AddInitializerToDecl()
11027 VDecl->setInvalidDecl(); in AddInitializerToDecl()
11031 if (!VDecl->getType()->isDependentType()) { in AddInitializerToDecl()
11035 QualType BaseDeclType = VDecl->getType(); in AddInitializerToDecl()
11038 if (RequireCompleteType(VDecl->getLocation(), BaseDeclType, in AddInitializerToDecl()
11045 if (RequireNonAbstractType(VDecl->getLocation(), VDecl->getType(), in AddInitializerToDecl()
11048 VDecl->setInvalidDecl(); in AddInitializerToDecl()
11055 if ((Def = VDecl->getDefinition()) && Def != VDecl && in AddInitializerToDecl()
11056 (!VDecl->isStaticDataMember() || VDecl->isOutOfLine()) && in AddInitializerToDecl()
11057 !VDecl->isThisDeclarationADemotedDefinition() && in AddInitializerToDecl()
11058 checkVarDeclRedefinition(Def, VDecl)) in AddInitializerToDecl()
11074 if (VDecl->isStaticDataMember() && VDecl->getCanonicalDecl()->hasInit()) { in AddInitializerToDecl()
11076 << VDecl->getDeclName(); in AddInitializerToDecl()
11077 Diag(VDecl->getCanonicalDecl()->getInit()->getExprLoc(), in AddInitializerToDecl()
11083 if (VDecl->hasLocalStorage()) in AddInitializerToDecl()
11087 VDecl->setInvalidDecl(); in AddInitializerToDecl()
11094 if (VDecl->getType().getAddressSpace() == LangAS::opencl_local) { in AddInitializerToDecl()
11095 Diag(VDecl->getLocation(), diag::err_local_cant_init); in AddInitializerToDecl()
11096 VDecl->setInvalidDecl(); in AddInitializerToDecl()
11102 QualType DclT = VDecl->getType(), SavT = DclT; in AddInitializerToDecl()
11110 VDecl->setInvalidDecl(); in AddInitializerToDecl()
11118 if (!VDecl->isInvalidDecl()) { in AddInitializerToDecl()
11119 InitializedEntity Entity = InitializedEntity::InitializeVariable(VDecl); in AddInitializerToDecl()
11121 VDecl->getLocation(), DirectInit, Init); in AddInitializerToDecl()
11131 Args[Idx], VDecl, [this, Entity, Kind](Expr *E) { in AddInitializerToDecl()
11136 VDecl->setInvalidDecl(); in AddInitializerToDecl()
11141 if (VDecl->isInvalidDecl()) in AddInitializerToDecl()
11149 VDecl->setInvalidDecl(); in AddInitializerToDecl()
11159 if (!VDecl->hasLocalStorage() || VDecl->getType()->isRecordType() || in AddInitializerToDecl()
11160 VDecl->getType()->isReferenceType()) { in AddInitializerToDecl()
11168 if (!VDecl->isInvalidDecl() && (DclT != SavT)) in AddInitializerToDecl()
11169 VDecl->setType(DclT); in AddInitializerToDecl()
11171 if (!VDecl->isInvalidDecl()) { in AddInitializerToDecl()
11172 checkUnsafeAssigns(VDecl->getLocation(), VDecl->getType(), Init); in AddInitializerToDecl()
11174 if (VDecl->hasAttr<BlocksAttr>()) in AddInitializerToDecl()
11175 checkRetainCycles(VDecl, Init); in AddInitializerToDecl()
11185 if ((VDecl->getType().getObjCLifetime() == Qualifiers::OCL_Strong || in AddInitializerToDecl()
11186 VDecl->getType().isNonWeakInMRRWithObjCWeak(Context)) && in AddInitializerToDecl()
11203 ExprResult Result = ActOnFinishFullExpr(Init, VDecl->getLocation(), in AddInitializerToDecl()
11205 VDecl->isConstexpr()); in AddInitializerToDecl()
11207 VDecl->setInvalidDecl(); in AddInitializerToDecl()
11213 VDecl->setInit(Init); in AddInitializerToDecl()
11215 if (VDecl->isLocalVarDecl()) { in AddInitializerToDecl()
11217 if (VDecl->isInvalidDecl()) { in AddInitializerToDecl()
11222 } else if (VDecl->getType().getAddressSpace() == LangAS::opencl_constant) { in AddInitializerToDecl()
11231 } else if (VDecl->getStorageClass() == SC_Static) { in AddInitializerToDecl()
11238 } else if (!getLangOpts().C99 && VDecl->getType()->isAggregateType() && in AddInitializerToDecl()
11247 } else if (VDecl->isStaticDataMember() && !VDecl->isInline() && in AddInitializerToDecl()
11248 VDecl->getLexicalDeclContext()->isRecord()) { in AddInitializerToDecl()
11276 } else if (VDecl->isConstexpr()) { in AddInitializerToDecl()
11280 Diag(VDecl->getLocation(), diag::err_in_class_initializer_non_const) in AddInitializerToDecl()
11282 VDecl->setInvalidDecl(); in AddInitializerToDecl()
11291 Diag(VDecl->getLocation(), diag::err_in_class_initializer_volatile); in AddInitializerToDecl()
11309 VDecl->setInvalidDecl(); in AddInitializerToDecl()
11317 Diag(VDecl->getLocation(), in AddInitializerToDecl()
11320 Diag(VDecl->getBeginLoc(), in AddInitializerToDecl()
11322 << FixItHint::CreateInsertion(VDecl->getBeginLoc(), "constexpr "); in AddInitializerToDecl()
11324 Diag(VDecl->getLocation(), diag::ext_in_class_initializer_float_type) in AddInitializerToDecl()
11330 VDecl->setInvalidDecl(); in AddInitializerToDecl()
11336 Diag(VDecl->getLocation(), diag::err_in_class_initializer_literal_type) in AddInitializerToDecl()
11338 << FixItHint::CreateInsertion(VDecl->getBeginLoc(), "constexpr "); in AddInitializerToDecl()
11339 VDecl->setConstexpr(true); in AddInitializerToDecl()
11342 Diag(VDecl->getLocation(), diag::err_in_class_initializer_bad_type) in AddInitializerToDecl()
11344 VDecl->setInvalidDecl(); in AddInitializerToDecl()
11346 } else if (VDecl->isFileVarDecl()) { in AddInitializerToDecl()
11354 if (VDecl->getStorageClass() == SC_Extern && in AddInitializerToDecl()
11355 ((!getLangOpts().CPlusPlus && !VDecl->hasAttr<SelectAnyAttr>()) || in AddInitializerToDecl()
11356 !Context.getBaseElementType(VDecl->getType()).isConstQualified()) && in AddInitializerToDecl()
11357 !(getLangOpts().CPlusPlus && VDecl->isExternC()) && in AddInitializerToDecl()
11358 !isTemplateInstantiation(VDecl->getTemplateSpecializationKind())) in AddInitializerToDecl()
11359 Diag(VDecl->getLocation(), diag::warn_extern_init); in AddInitializerToDecl()
11362 if (!getLangOpts().CPlusPlus && !VDecl->isInvalidDecl()) in AddInitializerToDecl()
11382 VDecl->setInitStyle(VarDecl::CallInit); in AddInitializerToDecl()
11385 VDecl->setInitStyle(VarDecl::ListInit); in AddInitializerToDecl()
11388 CheckCompleteVariableDeclaration(VDecl); in AddInitializerToDecl()