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

References

gen/tools/clang/include/clang/AST/AttrImpl.inc
 4670 MSInheritanceAttr *MSInheritanceAttr::clone(ASTContext &C) const {
 4671   auto *A = new (C) MSInheritanceAttr(C, *this, bestCase);
 4671   auto *A = new (C) MSInheritanceAttr(C, *this, bestCase);
11724     return cast<MSInheritanceAttr>(this)->getSpelling();
12304     return cast<MSInheritanceAttr>(this)->clone(C);
12884     return cast<MSInheritanceAttr>(this)->printPretty(OS, Policy);
gen/tools/clang/include/clang/AST/AttrTextNodeDump.inc
  328   void VisitMSInheritanceAttr(const MSInheritanceAttr *A) {
  329     const auto *SA = cast<MSInheritanceAttr>(A); (void)SA;
  329     const auto *SA = cast<MSInheritanceAttr>(A); (void)SA;
gen/tools/clang/include/clang/AST/AttrVisitor.inc
  467   bool TraverseMSInheritanceAttr(MSInheritanceAttr *A);
  468   bool VisitMSInheritanceAttr(MSInheritanceAttr *A) {
 2293 bool VISITORCLASS<Derived>::TraverseMSInheritanceAttr(MSInheritanceAttr *A) {
 4184       return getDerived().TraverseMSInheritanceAttr(cast<MSInheritanceAttr>(A));
gen/tools/clang/include/clang/AST/Attrs.inc
 6375   static MSInheritanceAttr *CreateImplicit(ASTContext &Ctx, bool BestCase, const AttributeCommonInfo &CommonInfo = {SourceRange{}}) {
 6376     auto *A = new (Ctx) MSInheritanceAttr(Ctx, CommonInfo, BestCase);
 6376     auto *A = new (Ctx) MSInheritanceAttr(Ctx, CommonInfo, BestCase);
 6383   static MSInheritanceAttr *Create(ASTContext &Ctx, bool BestCase, const AttributeCommonInfo &CommonInfo = {SourceRange{}}) {
 6384     auto *A = new (Ctx) MSInheritanceAttr(Ctx, CommonInfo, BestCase);
 6384     auto *A = new (Ctx) MSInheritanceAttr(Ctx, CommonInfo, BestCase);
 6388   static MSInheritanceAttr *CreateImplicit(ASTContext &Ctx, bool BestCase, SourceRange Range, AttributeCommonInfo::Syntax Syntax, MSInheritanceAttr::Spelling S = static_cast<Spelling>(SpellingNotCalculated)) {
 6388   static MSInheritanceAttr *CreateImplicit(ASTContext &Ctx, bool BestCase, SourceRange Range, AttributeCommonInfo::Syntax Syntax, MSInheritanceAttr::Spelling S = static_cast<Spelling>(SpellingNotCalculated)) {
 6392   static MSInheritanceAttr *Create(ASTContext &Ctx, bool BestCase, SourceRange Range, AttributeCommonInfo::Syntax Syntax, MSInheritanceAttr::Spelling S = static_cast<Spelling>(SpellingNotCalculated)) {
 6392   static MSInheritanceAttr *Create(ASTContext &Ctx, bool BestCase, SourceRange Range, AttributeCommonInfo::Syntax Syntax, MSInheritanceAttr::Spelling S = static_cast<Spelling>(SpellingNotCalculated)) {
 6396   static MSInheritanceAttr *CreateImplicit(ASTContext &Ctx, const AttributeCommonInfo &CommonInfo = {SourceRange{}}) {
 6397     auto *A = new (Ctx) MSInheritanceAttr(Ctx, CommonInfo);
 6397     auto *A = new (Ctx) MSInheritanceAttr(Ctx, CommonInfo);
 6404   static MSInheritanceAttr *Create(ASTContext &Ctx, const AttributeCommonInfo &CommonInfo = {SourceRange{}}) {
 6405     auto *A = new (Ctx) MSInheritanceAttr(Ctx, CommonInfo);
 6405     auto *A = new (Ctx) MSInheritanceAttr(Ctx, CommonInfo);
 6409   static MSInheritanceAttr *CreateImplicit(ASTContext &Ctx, SourceRange Range, AttributeCommonInfo::Syntax Syntax, MSInheritanceAttr::Spelling S = static_cast<Spelling>(SpellingNotCalculated)) {
 6409   static MSInheritanceAttr *CreateImplicit(ASTContext &Ctx, SourceRange Range, AttributeCommonInfo::Syntax Syntax, MSInheritanceAttr::Spelling S = static_cast<Spelling>(SpellingNotCalculated)) {
 6413   static MSInheritanceAttr *Create(ASTContext &Ctx, SourceRange Range, AttributeCommonInfo::Syntax Syntax, MSInheritanceAttr::Spelling S = static_cast<Spelling>(SpellingNotCalculated)) {
 6413   static MSInheritanceAttr *Create(ASTContext &Ctx, SourceRange Range, AttributeCommonInfo::Syntax Syntax, MSInheritanceAttr::Spelling S = static_cast<Spelling>(SpellingNotCalculated)) {
 6432   MSInheritanceAttr *clone(ASTContext &C) const;
gen/tools/clang/include/clang/Sema/AttrTemplateInstantiate.inc
  590       const auto *A = cast<MSInheritanceAttr>(At);
  590       const auto *A = cast<MSInheritanceAttr>(At);
gen/tools/clang/include/clang/Serialization/AttrPCHRead.inc
 1054     New = new (Context) MSInheritanceAttr(Context, Info, bestCase);
gen/tools/clang/include/clang/Serialization/AttrPCHWrite.inc
  799     const auto *SA = cast<MSInheritanceAttr>(A);
  799     const auto *SA = cast<MSInheritanceAttr>(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
  517     Vec.erase(std::remove_if(Vec.begin(), Vec.end(), isa<T, Attr*>), Vec.end());
  538   template<typename T> T *getAttr() const {
  539     return hasAttrs() ? getSpecificAttr<T>(getAttrs()) : nullptr;
  543     return hasAttrs() && hasSpecificAttr<T>(getAttrs());
tools/clang/include/clang/AST/DeclCXX.h
 1740   MSInheritanceAttr::Spelling getMSInheritanceModel() const;
 1743   MSInheritanceAttr::Spelling calculateInheritanceModel() const;
 1752     return !MSInheritanceAttr::hasOnlyOneField(/*IsMemberFunction=*/false,
tools/clang/include/clang/Sema/Sema.h
 2800   MSInheritanceAttr *
 2802                          MSInheritanceAttr::Spelling SemanticSpelling);
 3740       MSInheritanceAttr::Spelling SemanticSpelling);
tools/clang/lib/AST/MicrosoftCXXABI.cpp
  157 MSInheritanceAttr::Spelling CXXRecordDecl::calculateInheritanceModel() const {
  159     return MSInheritanceAttr::Keyword_unspecified_inheritance;
  161     return MSInheritanceAttr::Keyword_virtual_inheritance;
  163     return MSInheritanceAttr::Keyword_multiple_inheritance;
  164   return MSInheritanceAttr::Keyword_single_inheritance;
  167 MSInheritanceAttr::Spelling
  169   MSInheritanceAttr *IA = getAttr<MSInheritanceAttr>();
  169   MSInheritanceAttr *IA = getAttr<MSInheritanceAttr>();
  212   MSInheritanceAttr::Spelling Inheritance = RD->getMSInheritanceModel();
  219   if (MSInheritanceAttr::hasNVOffsetField(MPT->isMemberFunctionPointer(),
  222   if (MSInheritanceAttr::hasVBPtrOffsetField(Inheritance))
  224   if (MSInheritanceAttr::hasVBTableOffsetField(Inheritance))
tools/clang/lib/AST/MicrosoftMangle.cpp
  595   MSInheritanceAttr::Spelling IM = RD->getMSInheritanceModel();
  604     if (IM == MSInheritanceAttr::Keyword_virtual_inheritance)
  614   case MSInheritanceAttr::Keyword_single_inheritance:      Code = '0'; break;
  615   case MSInheritanceAttr::Keyword_multiple_inheritance:    Code = '0'; break;
  616   case MSInheritanceAttr::Keyword_virtual_inheritance:     Code = 'F'; break;
  617   case MSInheritanceAttr::Keyword_unspecified_inheritance: Code = 'G'; break;
  618   case MSInheritanceAttr::SpellingNotCalculated:
  629   if (MSInheritanceAttr::hasVBPtrOffsetField(IM))
  631   if (MSInheritanceAttr::hasVBTableOffsetField(IM))
  643   MSInheritanceAttr::Spelling IM = RD->getMSInheritanceModel();
  647   case MSInheritanceAttr::Keyword_single_inheritance:      Code = '1'; break;
  648   case MSInheritanceAttr::Keyword_multiple_inheritance:    Code = 'H'; break;
  649   case MSInheritanceAttr::Keyword_virtual_inheritance:     Code = 'I'; break;
  650   case MSInheritanceAttr::Keyword_unspecified_inheritance: Code = 'J'; break;
  651   case MSInheritanceAttr::SpellingNotCalculated:
  680         IM == MSInheritanceAttr::Keyword_virtual_inheritance)
  684     if (IM == MSInheritanceAttr::Keyword_single_inheritance) {
  688     if (IM == MSInheritanceAttr::Keyword_unspecified_inheritance)
  693   if (MSInheritanceAttr::hasNVOffsetField(/*IsMemberFunction=*/true, IM))
  695   if (MSInheritanceAttr::hasVBPtrOffsetField(IM))
  697   if (MSInheritanceAttr::hasVBTableOffsetField(IM))
tools/clang/lib/AST/Type.cpp
 2166     if (RD->hasAttr<MSInheritanceAttr>())
tools/clang/lib/CodeGen/Address.h
  108 template <class U> inline U cast(CodeGen::Address addr) {
tools/clang/lib/CodeGen/CGDebugInfo.cpp
 2714       case MSInheritanceAttr::Keyword_single_inheritance:
 2717       case MSInheritanceAttr::Keyword_multiple_inheritance:
 2720       case MSInheritanceAttr::Keyword_virtual_inheritance:
 2723       case MSInheritanceAttr::Keyword_unspecified_inheritance:
 2725       case MSInheritanceAttr::SpellingNotCalculated:
tools/clang/lib/CodeGen/MicrosoftCXXABI.cpp
  629     return RD->hasAttr<MSInheritanceAttr>();
 2604   MSInheritanceAttr::Spelling Inheritance = RD->getMSInheritanceModel();
 2605   return (!MSInheritanceAttr::hasVBTableOffsetField(Inheritance) &&
 2612   MSInheritanceAttr::Spelling Inheritance = RD->getMSInheritanceModel();
 2619   if (MSInheritanceAttr::hasNVOffsetField(MPT->isMemberFunctionPointer(),
 2622   if (MSInheritanceAttr::hasVBPtrOffsetField(Inheritance))
 2624   if (MSInheritanceAttr::hasVBTableOffsetField(Inheritance))
 2637   MSInheritanceAttr::Spelling Inheritance = RD->getMSInheritanceModel();
 2648   if (MSInheritanceAttr::hasNVOffsetField(MPT->isMemberFunctionPointer(),
 2651   if (MSInheritanceAttr::hasVBPtrOffsetField(Inheritance))
 2653   if (MSInheritanceAttr::hasVBTableOffsetField(Inheritance))
 2674   MSInheritanceAttr::Spelling Inheritance = RD->getMSInheritanceModel();
 2678   if (MSInheritanceAttr::hasOnlyOneField(IsMemberFunction, Inheritance))
 2684   if (MSInheritanceAttr::hasNVOffsetField(IsMemberFunction, Inheritance))
 2688   if (MSInheritanceAttr::hasVBPtrOffsetField(Inheritance)) {
 2696   if (MSInheritanceAttr::hasVBTableOffsetField(Inheritance))
 2707       MSInheritanceAttr::Keyword_virtual_inheritance)
 2804           MSInheritanceAttr::Keyword_virtual_inheritance)
 2840   MSInheritanceAttr::Spelling Inheritance = RD->getMSInheritanceModel();
 2841   if (MSInheritanceAttr::hasOnlyOneField(MPT->isMemberFunctionPointer(),
 3042   MSInheritanceAttr::Spelling Inheritance = RD->getMSInheritanceModel();
 3053     if (MSInheritanceAttr::hasVBPtrOffsetField(Inheritance))
 3055     if (MSInheritanceAttr::hasVBTableOffsetField(Inheritance))
 3150   MSInheritanceAttr::Spelling SrcInheritance = SrcRD->getMSInheritanceModel();
 3151   MSInheritanceAttr::Spelling DstInheritance = DstRD->getMSInheritanceModel();
 3160   if (!MSInheritanceAttr::hasOnlyOneField(IsFunc, SrcInheritance)) {
 3164     if (MSInheritanceAttr::hasNVOffsetField(IsFunc, SrcInheritance))
 3166     if (MSInheritanceAttr::hasVBPtrOffsetField(SrcInheritance))
 3168     if (MSInheritanceAttr::hasVBTableOffsetField(SrcInheritance))
 3187   if (SrcInheritance == MSInheritanceAttr::Keyword_virtual_inheritance) {
 3221   if (MSInheritanceAttr::hasVBTableOffsetField(DstInheritance) &&
 3222       MSInheritanceAttr::hasVBTableOffsetField(SrcInheritance)) {
 3245   if (MSInheritanceAttr::hasVBPtrOffsetField(DstInheritance)) {
 3256   if (DstInheritance == MSInheritanceAttr::Keyword_virtual_inheritance) {
 3269   if (MSInheritanceAttr::hasOnlyOneField(IsFunc, DstInheritance)) {
 3275     if (MSInheritanceAttr::hasNVOffsetField(IsFunc, DstInheritance))
 3277     if (MSInheritanceAttr::hasVBPtrOffsetField(DstInheritance))
 3279     if (MSInheritanceAttr::hasVBTableOffsetField(DstInheritance))
 3335   MSInheritanceAttr::Spelling Inheritance = RD->getMSInheritanceModel();
 3347     if (MSInheritanceAttr::hasNVOffsetField(MPT, Inheritance))
 3349     if (MSInheritanceAttr::hasVBPtrOffsetField(Inheritance))
 3351     if (MSInheritanceAttr::hasVBTableOffsetField(Inheritance))
tools/clang/lib/Sema/SemaDecl.cpp
 2550   else if (const auto *IA = dyn_cast<MSInheritanceAttr>(Attr))
 2550   else if (const auto *IA = dyn_cast<MSInheritanceAttr>(Attr))
 2590     if (isa<MSInheritanceAttr>(NewAttr))
16732       if (const MSInheritanceAttr *IA = Record->getAttr<MSInheritanceAttr>())
16732       if (const MSInheritanceAttr *IA = Record->getAttr<MSInheritanceAttr>())
tools/clang/lib/Sema/SemaDeclAttr.cpp
 3802     MSInheritanceAttr::Spelling SemanticSpelling) {
 3811   if (SemanticSpelling == MSInheritanceAttr::Keyword_unspecified_inheritance)
 5374   MSInheritanceAttr *IA = S.mergeMSInheritanceAttr(
 6007 MSInheritanceAttr *
 6010                              MSInheritanceAttr::Spelling SemanticSpelling) {
 6011   if (MSInheritanceAttr *IA = D->getAttr<MSInheritanceAttr>()) {
 6011   if (MSInheritanceAttr *IA = D->getAttr<MSInheritanceAttr>()) {
 6017     D->dropAttr<MSInheritanceAttr>();
 6039   return ::new (Context) MSInheritanceAttr(Context, CI, BestCase);
tools/clang/lib/Sema/SemaType.cpp
 7948   if (!RD->hasAttr<MSInheritanceAttr>()) {
 7949     MSInheritanceAttr::Spelling IM;
 7956       IM = MSInheritanceAttr::Keyword_single_inheritance;
 7959       IM = MSInheritanceAttr::Keyword_multiple_inheritance;
 7962       IM = MSInheritanceAttr::Keyword_unspecified_inheritance;
 7969     RD->addAttr(MSInheritanceAttr::CreateImplicit(
tools/lldb/source/Plugins/SymbolFile/PDB/PDBASTParser.cpp
  258 static clang::MSInheritanceAttr::Spelling
  272     return clang::MSInheritanceAttr::Keyword_virtual_inheritance;
  274     return clang::MSInheritanceAttr::Keyword_multiple_inheritance;
  275   return clang::MSInheritanceAttr::Keyword_single_inheritance;
  430       auto inheritance_attr = clang::MSInheritanceAttr::CreateImplicit(
usr/include/c++/7.4.0/type_traits
 1558     { typedef _Tp     type; };
 1580     { typedef _Tp const     type; };