Lines Matching refs:SD
311 /// \param SD Declaration checked for nested-name-specifier.
314 bool Sema::isAcceptableNestedNameSpecifier(const NamedDecl *SD,
316 if (!SD)
319 SD = SD->getUnderlyingDecl();
322 if (isa<NamespaceDecl>(SD))
325 if (!isa<TypeDecl>(SD))
330 QualType T = Context.getTypeDeclType(cast<TypeDecl>(SD));
333 if (const TypedefNameDecl *TD = dyn_cast<TypedefNameDecl>(SD)) {
342 } else if (isa<RecordDecl>(SD)) {
344 } else if (isa<EnumDecl>(SD)) {
646 NamedDecl *SD =
649 bool AcceptSpec = isAcceptableNestedNameSpecifier(SD, &IsExtension);
677 OuterDecl->getCanonicalDecl() != SD->getCanonicalDecl() &&
678 (!isa<TypeDecl>(OuterDecl) || !isa<TypeDecl>(SD) ||
681 Context.getTypeDeclType(cast<TypeDecl>(SD))))) {
688 Diag(SD->getLocation(), diag::note_ambig_member_ref_object_type)
697 if (auto *TD = dyn_cast_or_null<TypedefNameDecl>(SD))
706 DiagnoseUseOfDecl(SD, CCLoc);
709 if (NamespaceDecl *Namespace = dyn_cast<NamespaceDecl>(SD)) {
714 if (NamespaceAliasDecl *Alias = dyn_cast<NamespaceAliasDecl>(SD)) {
720 Context.getTypeDeclType(cast<TypeDecl>(SD->getUnderlyingDecl()));