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

References

gen/tools/clang/include/clang/AST/AttrImpl.inc
10683 UnavailableAttr *UnavailableAttr::clone(ASTContext &C) const {
10684   auto *A = new (C) UnavailableAttr(C, *this, getMessage(), implicitReason);
10684   auto *A = new (C) UnavailableAttr(C, *this, getMessage(), implicitReason);
12030     return cast<UnavailableAttr>(this)->getSpelling();
12610     return cast<UnavailableAttr>(this)->clone(C);
13190     return cast<UnavailableAttr>(this)->printPretty(OS, Policy);
gen/tools/clang/include/clang/AST/AttrTextNodeDump.inc
  757   void VisitUnavailableAttr(const UnavailableAttr *A) {
  758     const auto *SA = cast<UnavailableAttr>(A); (void)SA;
  758     const auto *SA = cast<UnavailableAttr>(A); (void)SA;
  761     case UnavailableAttr::IR_None:
  764     case UnavailableAttr::IR_ARCForbiddenType:
  767     case UnavailableAttr::IR_ForbiddenWeak:
  770     case UnavailableAttr::IR_ARCForbiddenConversion:
  773     case UnavailableAttr::IR_ARCInitReturnsUnrelated:
  776     case UnavailableAttr::IR_ARCFieldWithOwnership:
gen/tools/clang/include/clang/AST/AttrVisitor.inc
 1079   bool TraverseUnavailableAttr(UnavailableAttr *A);
 1080   bool VisitUnavailableAttr(UnavailableAttr *A) {
 3767 bool VISITORCLASS<Derived>::TraverseUnavailableAttr(UnavailableAttr *A) {
 4490       return getDerived().TraverseUnavailableAttr(cast<UnavailableAttr>(A));
gen/tools/clang/include/clang/AST/Attrs.inc
14456   static UnavailableAttr *CreateImplicit(ASTContext &Ctx, llvm::StringRef Message, ImplicitReason ImplicitReason, const AttributeCommonInfo &CommonInfo = {SourceRange{}}) {
14457     auto *A = new (Ctx) UnavailableAttr(Ctx, CommonInfo, Message, ImplicitReason);
14457     auto *A = new (Ctx) UnavailableAttr(Ctx, CommonInfo, Message, ImplicitReason);
14464   static UnavailableAttr *Create(ASTContext &Ctx, llvm::StringRef Message, ImplicitReason ImplicitReason, const AttributeCommonInfo &CommonInfo = {SourceRange{}}) {
14465     auto *A = new (Ctx) UnavailableAttr(Ctx, CommonInfo, Message, ImplicitReason);
14465     auto *A = new (Ctx) UnavailableAttr(Ctx, CommonInfo, Message, ImplicitReason);
14471   static UnavailableAttr *CreateImplicit(ASTContext &Ctx, llvm::StringRef Message, ImplicitReason ImplicitReason, SourceRange Range, AttributeCommonInfo::Syntax Syntax) {
14475   static UnavailableAttr *Create(ASTContext &Ctx, llvm::StringRef Message, ImplicitReason ImplicitReason, SourceRange Range, AttributeCommonInfo::Syntax Syntax) {
14479   static UnavailableAttr *CreateImplicit(ASTContext &Ctx, llvm::StringRef Message, const AttributeCommonInfo &CommonInfo = {SourceRange{}}) {
14480     auto *A = new (Ctx) UnavailableAttr(Ctx, CommonInfo, Message);
14480     auto *A = new (Ctx) UnavailableAttr(Ctx, CommonInfo, Message);
14487   static UnavailableAttr *Create(ASTContext &Ctx, llvm::StringRef Message, const AttributeCommonInfo &CommonInfo = {SourceRange{}}) {
14488     auto *A = new (Ctx) UnavailableAttr(Ctx, CommonInfo, Message);
14488     auto *A = new (Ctx) UnavailableAttr(Ctx, CommonInfo, Message);
14494   static UnavailableAttr *CreateImplicit(ASTContext &Ctx, llvm::StringRef Message, SourceRange Range, AttributeCommonInfo::Syntax Syntax) {
14498   static UnavailableAttr *Create(ASTContext &Ctx, llvm::StringRef Message, SourceRange Range, AttributeCommonInfo::Syntax Syntax) {
14533   UnavailableAttr *clone(ASTContext &C) const;
gen/tools/clang/include/clang/Sema/AttrTemplateInstantiate.inc
 1263       const auto *A = cast<UnavailableAttr>(At);
 1263       const auto *A = cast<UnavailableAttr>(At);
gen/tools/clang/include/clang/Serialization/AttrPCHRead.inc
 2363     UnavailableAttr::ImplicitReason implicitReason(static_cast<UnavailableAttr::ImplicitReason>(Record.readInt()));
 2364     New = new (Context) UnavailableAttr(Context, Info, message, implicitReason);
gen/tools/clang/include/clang/Serialization/AttrPCHWrite.inc
 1767     const auto *SA = cast<UnavailableAttr>(A);
 1767     const auto *SA = cast<UnavailableAttr>(A);
include/llvm/ADT/STLExtras.h
   75       typename std::add_pointer<typename std::add_const<T>::type>::type;
include/llvm/Support/Casting.h
   58     return To::classof(&Val);
   66   static inline bool doit(const From &) { return true; }
  104   static inline bool doit(const From *Val) {
  106     return isa_impl<To, From>::doit(*Val);
  106     return isa_impl<To, From>::doit(*Val);
  122     return isa_impl_wrap<To, SimpleFrom,
  132     return isa_impl_cl<To,FromTy>::doit(Val);
  142   return isa_impl_wrap<X, const Y,
  172   using ret_type = To *;       // Pointer arg case, return Ty*
  176   using ret_type = const To *; // Constant pointer arg case, return const Ty*
  198   using ret_type = typename cast_retty<To, SimpleFrom>::ret_type;
  204   using ret_type = typename cast_retty_impl<To,FromTy>::ret_type;
  210       To, From, typename simplify_type<From>::SimpleType>::ret_type;
  227   static typename cast_retty<To, FromTy>::ret_type doit(const FromTy &Val) {
  228     typename cast_retty<To, FromTy>::ret_type Res2
  256 inline typename cast_retty<X, Y>::ret_type cast(Y &Val) {
  263 inline typename cast_retty<X, Y *>::ret_type cast(Y *Val) {
  265   return cast_convert_val<X, Y*,
  337 LLVM_NODISCARD inline typename cast_retty<X, Y>::ret_type dyn_cast(Y &Val) {
  342 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type dyn_cast(Y *Val) {
  343   return isa<X>(Val) ? cast<X>(Val) : nullptr;
  343   return isa<X>(Val) ? cast<X>(Val) : nullptr;
tools/clang/include/clang/AST/AttrIterator.h
   47     while (!isa<SpecificAttr>(*Current))
   52     while (Current != I && !isa<SpecificAttr>(*Current))
   57   using value_type = SpecificAttr *;
   58   using reference = SpecificAttr *;
   59   using pointer = SpecificAttr *;
   68     return cast<SpecificAttr>(*Current);
  101 inline specific_attr_iterator<SpecificAttr, Container>
  106 inline specific_attr_iterator<SpecificAttr, Container>
  113   return specific_attr_begin<SpecificAttr>(container) !=
  114           specific_attr_end<SpecificAttr>(container);
  117 inline SpecificAttr *getSpecificAttr(const Container& container) {
  118   specific_attr_iterator<SpecificAttr, Container> i =
  119       specific_attr_begin<SpecificAttr>(container);
  120   if (i != specific_attr_end<SpecificAttr>(container))
tools/clang/include/clang/AST/DeclBase.h
  538   template<typename T> T *getAttr() const {
  539     return hasAttrs() ? getSpecificAttr<T>(getAttrs()) : nullptr;
  543     return hasAttrs() && hasSpecificAttr<T>(getAttrs());
tools/clang/include/clang/Sema/Sema.h
 4349                                      UnavailableAttr::ImplicitReason reason);
tools/clang/lib/AST/ASTContext.cpp
10523   if (MethodDecl->hasAttr<UnavailableAttr>()
tools/clang/lib/AST/CommentSema.cpp
  676       D->hasAttr<UnavailableAttr>())
tools/clang/lib/AST/DeclBase.cpp
  596     if (const auto *Unavailable = dyn_cast<UnavailableAttr>(A)) {
  596     if (const auto *Unavailable = dyn_cast<UnavailableAttr>(A)) {
tools/clang/lib/CodeGen/Address.h
  108 template <class U> inline U cast(CodeGen::Address addr) {
tools/clang/lib/Index/CommentToXML.cpp
  997         else if (const UnavailableAttr *UA = dyn_cast<UnavailableAttr>(Attrs[i])) {
  997         else if (const UnavailableAttr *UA = dyn_cast<UnavailableAttr>(Attrs[i])) {
tools/clang/lib/Sema/Sema.cpp
  407                                       UnavailableAttr::ImplicitReason reason) {
  421   if (fn->hasAttr<UnavailableAttr>()) return true;
  423   fn->addAttr(UnavailableAttr::CreateImplicit(Context, "", reason, loc));
tools/clang/lib/Sema/SemaDecl.cpp
 2574   else if ((isa<DeprecatedAttr>(Attr) || isa<UnavailableAttr>(Attr)) &&
 2884         isa<UnavailableAttr>(I) ||
11317   return FD->hasAttr<UnavailableAttr>();
16217             if (!FD->hasAttr<UnavailableAttr>())
16218               FD->addAttr(UnavailableAttr::CreateImplicit(Context, "",
16219                             UnavailableAttr::IR_ARCFieldWithOwnership, Loc));
16587                !getLangOpts().CPlusPlus && !FD->hasAttr<UnavailableAttr>() &&
16596       FD->addAttr(UnavailableAttr::CreateImplicit(
16597           Context, "", UnavailableAttr::IR_ARCFieldWithOwnership,
tools/clang/lib/Sema/SemaDeclAttr.cpp
 2124   D->addAttr(::new (S.Context) AttrTy(S.Context, AL, Str));
 6851     handleAttrWithMessage<UnavailableAttr>(S, D, AL);
 7454                                    UnavailableAttr::ImplicitReason &reason) {
 7470       reason = UnavailableAttr::IR_ForbiddenWeak;
 7479     reason = UnavailableAttr::IR_ARCForbiddenType;
 7489   auto Reason = UnavailableAttr::IR_None;
 7492     D->addAttr(UnavailableAttr::CreateImplicit(S.Context, "", Reason, DD.Loc));
 7499       if (FD->hasAttr<UnavailableAttr>() &&
 7923     if (auto AL = OffendingDecl->getAttr<UnavailableAttr>()) {
 7935         case UnavailableAttr::IR_None: break;
 7937         case UnavailableAttr::IR_ARCForbiddenType:
 7942         case UnavailableAttr::IR_ForbiddenWeak:
 7949         case UnavailableAttr::IR_ARCForbiddenConversion:
 7954         case UnavailableAttr::IR_ARCInitReturnsUnrelated:
 7959         case UnavailableAttr::IR_ARCFieldWithOwnership:
tools/clang/lib/Sema/SemaDeclObjC.cpp
  100     method->addAttr(UnavailableAttr::CreateImplicit(Context, "",
  101                       UnavailableAttr::IR_ARCInitReturnsUnrelated, loc));
 2608   if (MethodDecl->hasAttr<UnavailableAttr>() ||
 3518     if (M != BestMethod && !M->hasAttr<UnavailableAttr>())
tools/clang/lib/Sema/SemaExprObjC.cpp
 3679                                  UnavailableAttr::IR_ARCForbiddenConversion))
tools/clang/lib/Sema/SemaObjCProperty.cpp
 2312         isa<UnavailableAttr>(A) ||
tools/clang/tools/libclang/CIndex.cpp
 7850     if (UnavailableAttr *Unavailable = dyn_cast<UnavailableAttr>(A)) {
 7850     if (UnavailableAttr *Unavailable = dyn_cast<UnavailableAttr>(A)) {
usr/include/c++/7.4.0/type_traits
 1558     { typedef _Tp     type; };
 1580     { typedef _Tp const     type; };