reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
6123 assert(S.ParsingInitForAutoVars.count(&ND) == 0); 6126 if (WeakAttr *Attr = ND.getAttr<WeakAttr>()) { 6127 if (!ND.isExternallyVisible()) { 6129 ND.dropAttr<WeakAttr>(); 6132 if (WeakRefAttr *Attr = ND.getAttr<WeakRefAttr>()) { 6133 if (ND.isExternallyVisible()) { 6135 ND.dropAttr<WeakRefAttr>(); 6136 ND.dropAttr<AliasAttr>(); 6140 if (auto *VD = dyn_cast<VarDecl>(&ND)) { 6153 if (SelectAnyAttr *Attr = ND.getAttr<SelectAnyAttr>()) { 6154 if (isa<FunctionDecl>(ND) || !ND.isExternallyVisible()) { 6154 if (isa<FunctionDecl>(ND) || !ND.isExternallyVisible()) { 6157 ND.dropAttr<SelectAnyAttr>(); 6161 if (const InheritableAttr *Attr = getDLLAttr(&ND)) { 6162 auto *VD = dyn_cast<VarDecl>(&ND); 6177 if ((ND.isExternallyVisible() && AnonNSInMicrosoftMode) || 6179 (!ND.isExternallyVisible() || (VD && VD->isStaticLocal())))) { 6180 S.Diag(ND.getLocation(), diag::err_attribute_dll_not_extern) 6181 << &ND << Attr; 6182 ND.setInvalidDecl(); 6187 if (auto *Attr = ND.getAttr<NotTailCalledAttr>()) 6188 if (auto *MD = dyn_cast<CXXMethodDecl>(&ND)) 6190 S.Diag(ND.getLocation(), 6193 ND.dropAttr<NotTailCalledAttr>(); 6197 if (const auto *FD = dyn_cast<FunctionDecl>(&ND)) {