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

References

tools/clang/lib/Sema/SemaDecl.cpp
 7536   if (NewVD->isInvalidDecl())
 7539   QualType T = NewVD->getType();
 7545   if (NewVD->hasAttrs())
 7546     CheckAlignasUnderalignment(NewVD);
 7549     Diag(NewVD->getLocation(), diag::err_statically_allocated_object)
 7550       << FixItHint::CreateInsertion(NewVD->getLocation(), "*");
 7552     NewVD->setType(T);
 7559   if (!getLangOpts().OpenCL && NewVD->hasLocalStorage() &&
 7561     Diag(NewVD->getLocation(), diag::err_as_qualified_auto_decl) << 0;
 7562     NewVD->setInvalidDecl();
 7570       NewVD->isStaticLocal()) {
 7571     Diag(NewVD->getLocation(), diag::err_static_function_scope);
 7572     NewVD->setInvalidDecl();
 7578     if (NewVD->hasAttr<BlocksAttr>()) {
 7579       Diag(NewVD->getLocation(), diag::err_opencl_block_storage_type);
 7587         Diag(NewVD->getLocation(), diag::err_opencl_invalid_block_declaration)
 7589         NewVD->setInvalidDecl();
 7592       if (NewVD->hasExternalStorage()) {
 7593         Diag(NewVD->getLocation(), diag::err_opencl_extern_block_declaration);
 7594         NewVD->setInvalidDecl();
 7605     if (NewVD->isFileVarDecl() || NewVD->isStaticLocal() ||
 7605     if (NewVD->isFileVarDecl() || NewVD->isStaticLocal() ||
 7606         NewVD->hasExternalStorage()) {
 7612         int Scope = NewVD->isStaticLocal() | NewVD->hasExternalStorage() << 1;
 7612         int Scope = NewVD->isStaticLocal() | NewVD->hasExternalStorage() << 1;
 7614           Diag(NewVD->getLocation(), diag::err_opencl_global_invalid_addr_space)
 7617           Diag(NewVD->getLocation(), diag::err_opencl_global_invalid_addr_space)
 7619         NewVD->setInvalidDecl();
 7624         Diag(NewVD->getLocation(), diag::err_opencl_function_variable)
 7626         NewVD->setInvalidDecl();
 7636             Diag(NewVD->getLocation(), diag::err_opencl_function_variable)
 7639             Diag(NewVD->getLocation(), diag::err_opencl_function_variable)
 7641           NewVD->setInvalidDecl();
 7649               Diag(NewVD->getLocation(), diag::err_opencl_addrspace_scope)
 7652               Diag(NewVD->getLocation(), diag::err_opencl_addrspace_scope)
 7654             NewVD->setInvalidDecl();
 7663         Diag(NewVD->getLocation(), diag::err_as_qualified_auto_decl) << 1;
 7664         NewVD->setInvalidDecl();
 7670   if (NewVD->hasLocalStorage() && T.isObjCGCWeak()
 7671       && !NewVD->hasAttr<BlocksAttr>()) {
 7673       Diag(NewVD->getLocation(), diag::warn_gc_attribute_weak_on_local);
 7676       Diag(NewVD->getLocation(), diag::warn_attribute_weak_on_local);
 7681   if (isVM || NewVD->hasAttr<CleanupAttr>() ||
 7682       NewVD->hasAttr<BlocksAttr>())
 7685   if ((isVM && NewVD->hasLinkage()) ||
 7686       (T->isVariableArrayType() && NewVD->hasGlobalStorage())) {
 7690         NewVD->getTypeSourceInfo(), Context, SizeIsNegative, Oversized);
 7692     if (FixedTInfo &&  T == NewVD->getTypeSourceInfo()->getType())
 7706       if (NewVD->isFileVarDecl())
 7707         Diag(NewVD->getLocation(), diag::err_vla_decl_in_file_scope)
 7709       else if (NewVD->isStaticLocal())
 7710         Diag(NewVD->getLocation(), diag::err_vla_decl_has_static_storage)
 7713         Diag(NewVD->getLocation(), diag::err_vla_decl_has_extern_linkage)
 7715       NewVD->setInvalidDecl();
 7720       if (NewVD->isFileVarDecl())
 7721         Diag(NewVD->getLocation(), diag::err_vm_decl_in_file_scope);
 7723         Diag(NewVD->getLocation(), diag::err_vm_decl_has_extern_linkage);
 7724       NewVD->setInvalidDecl();
 7728     Diag(NewVD->getLocation(), diag::warn_illegal_constant_array_size);
 7729     NewVD->setType(FixedT);
 7730     NewVD->setTypeSourceInfo(FixedTInfo);
 7736     if (NewVD->isThisDeclarationADefinition() || getLangOpts().CPlusPlus) {
 7737       Diag(NewVD->getLocation(), diag::err_typecheck_decl_incomplete_type)
 7739       NewVD->setInvalidDecl();
 7744   if (!NewVD->hasLocalStorage() && NewVD->hasAttr<BlocksAttr>()) {
 7744   if (!NewVD->hasLocalStorage() && NewVD->hasAttr<BlocksAttr>()) {
 7745     Diag(NewVD->getLocation(), diag::err_block_on_nonlocal);
 7746     NewVD->setInvalidDecl();
 7750   if (isVM && NewVD->hasAttr<BlocksAttr>()) {
 7751     Diag(NewVD->getLocation(), diag::err_block_on_vm);
 7752     NewVD->setInvalidDecl();
 7756   if (NewVD->isConstexpr() && !T->isDependentType() &&
 7757       RequireLiteralType(NewVD->getLocation(), T,
 7759     NewVD->setInvalidDecl();