reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
12035 QualType Type = Var->getType(); 12039 Diag(Var->getLocation(), diag::err_decomp_decl_requires_init) << Var; 12039 Diag(Var->getLocation(), diag::err_decomp_decl_requires_init) << Var; 12040 Var->setInvalidDecl(); 12045 DeduceVariableDeclarationType(Var, false, nullptr)) 12054 if (Var->isConstexpr() && !Var->isThisDeclarationADefinition() && 12054 if (Var->isConstexpr() && !Var->isThisDeclarationADefinition() && 12055 !Var->isThisDeclarationADemotedDefinition()) { 12056 if (Var->isStaticDataMember()) { 12061 Diag(Var->getLocation(), 12063 << Var->getDeclName(); 12064 Var->setInvalidDecl(); 12068 Diag(Var->getLocation(), diag::err_invalid_constexpr_var_decl); 12069 Var->setInvalidDecl(); 12076 if (!Var->isInvalidDecl() && 12077 Var->getType().getAddressSpace() == LangAS::opencl_constant && 12078 Var->getStorageClass() != SC_Extern && !Var->getInit()) { 12078 Var->getStorageClass() != SC_Extern && !Var->getInit()) { 12079 Diag(Var->getLocation(), diag::err_opencl_constant_no_init); 12080 Var->setInvalidDecl(); 12084 VarDecl::DefinitionKind DefKind = Var->isThisDeclarationADefinition(); 12085 if (!Var->isInvalidDecl() && DefKind != VarDecl::DeclarationOnly && 12086 Var->getType().hasNonTrivialToPrimitiveDefaultInitializeCUnion()) 12087 checkNonTrivialCUnion(Var->getType(), Var->getLocation(), 12087 checkNonTrivialCUnion(Var->getType(), Var->getLocation(), 12093 if (!Var->isStaticDataMember() || !Var->getAnyInitializer()) 12093 if (!Var->isStaticDataMember() || !Var->getAnyInitializer()) 12108 if (!Type->isDependentType() && Var->isLocalVarDecl() && 12109 !Var->hasLinkage() && !Var->isInvalidDecl() && 12109 !Var->hasLinkage() && !Var->isInvalidDecl() && 12110 RequireCompleteType(Var->getLocation(), Type, 12112 Var->setInvalidDecl(); 12115 if (!Type->isDependentType() && !Var->isInvalidDecl() && 12116 RequireNonAbstractType(Var->getLocation(), Type, 12119 Var->setInvalidDecl(); 12120 if (!Type->isDependentType() && !Var->isInvalidDecl() && 12121 Var->getStorageClass() == SC_PrivateExtern) { 12122 Diag(Var->getLocation(), diag::warn_private_extern); 12123 Diag(Var->getLocation(), diag::note_private_extern); 12134 if (!Var->isInvalidDecl()) { 12137 if (RequireCompleteType(Var->getLocation(), 12140 Var->setInvalidDecl(); 12141 } else if (Var->getStorageClass() == SC_Static) { 12151 if (Var->isFirstDecl()) 12152 RequireCompleteType(Var->getLocation(), Type, 12158 if (!Var->isInvalidDecl()) 12159 TentativeDefinitions.push_back(Var); 12166 Diag(Var->getLocation(), 12168 Var->setInvalidDecl(); 12175 Diag(Var->getLocation(), diag::err_reference_var_requires_init) 12176 << Var->getDeclName() 12177 << SourceRange(Var->getLocation(), Var->getLocation()); 12177 << SourceRange(Var->getLocation(), Var->getLocation()); 12178 Var->setInvalidDecl(); 12187 if (Var->isInvalidDecl()) 12190 if (!Var->hasAttr<AliasAttr>()) { 12191 if (RequireCompleteType(Var->getLocation(), 12194 Var->setInvalidDecl(); 12202 if (RequireNonAbstractType(Var->getLocation(), Type, 12205 Var->setInvalidDecl(); 12219 if (getLangOpts().CPlusPlus && Var->hasLocalStorage()) { 12233 Var->getType().getAddressSpace() == LangAS::opencl_local) 12249 InitializedEntity Entity = InitializedEntity::InitializeVariable(Var); 12251 = InitializationKind::CreateDefault(Var->getLocation()); 12256 Var->setInvalidDecl(); 12258 Var->setInit(MaybeCreateExprWithCleanups(Init.get())); 12260 Var->setInitStyle(VarDecl::CallInit); 12263 CheckCompleteVariableDeclaration(Var);