diff options
Diffstat (limited to 'clang-r353983/include/clang/AST/AttrTextNodeDump.inc')
| -rw-r--r-- | clang-r353983/include/clang/AST/AttrTextNodeDump.inc | 751 |
1 files changed, 751 insertions, 0 deletions
diff --git a/clang-r353983/include/clang/AST/AttrTextNodeDump.inc b/clang-r353983/include/clang/AST/AttrTextNodeDump.inc new file mode 100644 index 00000000..239b5326 --- /dev/null +++ b/clang-r353983/include/clang/AST/AttrTextNodeDump.inc @@ -0,0 +1,751 @@ +/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\ +|* *| +|* Attribute text node dumper *| +|* *| +|* Automatically generated file, do not edit! *| +|* *| +\*===----------------------------------------------------------------------===*/ + + void VisitAMDGPUFlatWorkGroupSizeAttr(const AMDGPUFlatWorkGroupSizeAttr *A) { + const auto *SA = cast<AMDGPUFlatWorkGroupSizeAttr>(A); (void)SA; + OS << " " << SA->getMin(); + OS << " " << SA->getMax(); + } + void VisitAMDGPUNumSGPRAttr(const AMDGPUNumSGPRAttr *A) { + const auto *SA = cast<AMDGPUNumSGPRAttr>(A); (void)SA; + OS << " " << SA->getNumSGPR(); + } + void VisitAMDGPUNumVGPRAttr(const AMDGPUNumVGPRAttr *A) { + const auto *SA = cast<AMDGPUNumVGPRAttr>(A); (void)SA; + OS << " " << SA->getNumVGPR(); + } + void VisitAMDGPUWavesPerEUAttr(const AMDGPUWavesPerEUAttr *A) { + const auto *SA = cast<AMDGPUWavesPerEUAttr>(A); (void)SA; + OS << " " << SA->getMin(); + OS << " " << SA->getMax(); + } + void VisitARMInterruptAttr(const ARMInterruptAttr *A) { + const auto *SA = cast<ARMInterruptAttr>(A); (void)SA; + switch(SA->getInterrupt()) { + case ARMInterruptAttr::IRQ: + OS << " IRQ"; + break; + case ARMInterruptAttr::FIQ: + OS << " FIQ"; + break; + case ARMInterruptAttr::SWI: + OS << " SWI"; + break; + case ARMInterruptAttr::ABORT: + OS << " ABORT"; + break; + case ARMInterruptAttr::UNDEF: + OS << " UNDEF"; + break; + case ARMInterruptAttr::Generic: + OS << " Generic"; + break; + } + } + void VisitAbiTagAttr(const AbiTagAttr *A) { + const auto *SA = cast<AbiTagAttr>(A); (void)SA; + for (const auto &Val : SA->tags()) + OS << " " << Val; + } + void VisitAcquireCapabilityAttr(const AcquireCapabilityAttr *A) { + const auto *SA = cast<AcquireCapabilityAttr>(A); (void)SA; + OS << " " << A->getSpelling(); + } + void VisitAddressSpaceAttr(const AddressSpaceAttr *A) { + const auto *SA = cast<AddressSpaceAttr>(A); (void)SA; + OS << " " << SA->getAddressSpace(); + } + void VisitAliasAttr(const AliasAttr *A) { + const auto *SA = cast<AliasAttr>(A); (void)SA; + OS << " \"" << SA->getAliasee() << "\""; + } + void VisitAlignedAttr(const AlignedAttr *A) { + const auto *SA = cast<AlignedAttr>(A); (void)SA; + OS << " " << A->getSpelling(); + if (!SA->isAlignmentExpr()) + dumpType(SA->getAlignmentType()->getType()); + } + void VisitAllocAlignAttr(const AllocAlignAttr *A) { + const auto *SA = cast<AllocAlignAttr>(A); (void)SA; + OS << " " << SA->getParamIndex().getSourceIndex(); + } + void VisitAllocSizeAttr(const AllocSizeAttr *A) { + const auto *SA = cast<AllocSizeAttr>(A); (void)SA; + OS << " " << SA->getElemSizeParam().getSourceIndex(); + if (SA->getNumElemsParam().isValid()) + OS << " " << SA->getNumElemsParam().getSourceIndex(); + } + void VisitAlwaysInlineAttr(const AlwaysInlineAttr *A) { + OS << " " << A->getSpelling(); + } + void VisitAnnotateAttr(const AnnotateAttr *A) { + const auto *SA = cast<AnnotateAttr>(A); (void)SA; + OS << " \"" << SA->getAnnotation() << "\""; + } + void VisitArgumentWithTypeTagAttr(const ArgumentWithTypeTagAttr *A) { + const auto *SA = cast<ArgumentWithTypeTagAttr>(A); (void)SA; + OS << " " << A->getSpelling(); + if (SA->getArgumentKind()) + OS << " " << SA->getArgumentKind()->getName(); + OS << " " << SA->getArgumentIdx().getSourceIndex(); + OS << " " << SA->getTypeTagIdx().getSourceIndex(); + if (SA->getIsPointer()) OS << " IsPointer"; + } + void VisitAsmLabelAttr(const AsmLabelAttr *A) { + const auto *SA = cast<AsmLabelAttr>(A); (void)SA; + OS << " \"" << SA->getLabel() << "\""; + } + void VisitAssertCapabilityAttr(const AssertCapabilityAttr *A) { + const auto *SA = cast<AssertCapabilityAttr>(A); (void)SA; + OS << " " << A->getSpelling(); + } + void VisitAvailabilityAttr(const AvailabilityAttr *A) { + const auto *SA = cast<AvailabilityAttr>(A); (void)SA; + if (SA->getPlatform()) + OS << " " << SA->getPlatform()->getName(); + OS << " " << SA->getIntroduced(); + OS << " " << SA->getDeprecated(); + OS << " " << SA->getObsoleted(); + if (SA->getUnavailable()) OS << " Unavailable"; + OS << " \"" << SA->getMessage() << "\""; + if (SA->getStrict()) OS << " Strict"; + OS << " \"" << SA->getReplacement() << "\""; + OS << " " << SA->getPriority(); + } + void VisitBlocksAttr(const BlocksAttr *A) { + const auto *SA = cast<BlocksAttr>(A); (void)SA; + switch(SA->getType()) { + case BlocksAttr::ByRef: + OS << " ByRef"; + break; + } + } + void VisitCPUDispatchAttr(const CPUDispatchAttr *A) { + const auto *SA = cast<CPUDispatchAttr>(A); (void)SA; + for (const auto &Val : SA->cpus()) + OS << " " << Val; + } + void VisitCPUSpecificAttr(const CPUSpecificAttr *A) { + const auto *SA = cast<CPUSpecificAttr>(A); (void)SA; + for (const auto &Val : SA->cpus()) + OS << " " << Val; + } + void VisitCallableWhenAttr(const CallableWhenAttr *A) { + const auto *SA = cast<CallableWhenAttr>(A); (void)SA; + for (CallableWhenAttr::callableStates_iterator I = SA->callableStates_begin(), E = SA->callableStates_end(); I != E; ++I) { + switch(*I) { + case CallableWhenAttr::Unknown: + OS << " Unknown"; + break; + case CallableWhenAttr::Consumed: + OS << " Consumed"; + break; + case CallableWhenAttr::Unconsumed: + OS << " Unconsumed"; + break; + } + } + } + void VisitCallbackAttr(const CallbackAttr *A) { + const auto *SA = cast<CallbackAttr>(A); (void)SA; + for (const auto &Val : SA->encoding()) + OS << " " << Val; + } + void VisitCapabilityAttr(const CapabilityAttr *A) { + const auto *SA = cast<CapabilityAttr>(A); (void)SA; + OS << " " << A->getSpelling(); + OS << " \"" << SA->getName() << "\""; + } + void VisitCleanupAttr(const CleanupAttr *A) { + const auto *SA = cast<CleanupAttr>(A); (void)SA; + OS << " "; + dumpBareDeclRef(SA->getFunctionDecl()); + } + void VisitCodeSegAttr(const CodeSegAttr *A) { + const auto *SA = cast<CodeSegAttr>(A); (void)SA; + OS << " \"" << SA->getName() << "\""; + } + void VisitConstructorAttr(const ConstructorAttr *A) { + const auto *SA = cast<ConstructorAttr>(A); (void)SA; + OS << " " << SA->getPriority(); + } + void VisitConsumableAttr(const ConsumableAttr *A) { + const auto *SA = cast<ConsumableAttr>(A); (void)SA; + switch(SA->getDefaultState()) { + case ConsumableAttr::Unknown: + OS << " Unknown"; + break; + case ConsumableAttr::Consumed: + OS << " Consumed"; + break; + case ConsumableAttr::Unconsumed: + OS << " Unconsumed"; + break; + } + } + void VisitDeprecatedAttr(const DeprecatedAttr *A) { + const auto *SA = cast<DeprecatedAttr>(A); (void)SA; + OS << " \"" << SA->getMessage() << "\""; + OS << " \"" << SA->getReplacement() << "\""; + } + void VisitDestructorAttr(const DestructorAttr *A) { + const auto *SA = cast<DestructorAttr>(A); (void)SA; + OS << " " << SA->getPriority(); + } + void VisitDiagnoseIfAttr(const DiagnoseIfAttr *A) { + const auto *SA = cast<DiagnoseIfAttr>(A); (void)SA; + OS << " \"" << SA->getMessage() << "\""; + switch(SA->getDiagnosticType()) { + case DiagnoseIfAttr::DT_Error: + OS << " DT_Error"; + break; + case DiagnoseIfAttr::DT_Warning: + OS << " DT_Warning"; + break; + } + if (SA->getArgDependent()) OS << " ArgDependent"; + OS << " "; + dumpBareDeclRef(SA->getParent()); + } + void VisitEnableIfAttr(const EnableIfAttr *A) { + const auto *SA = cast<EnableIfAttr>(A); (void)SA; + OS << " \"" << SA->getMessage() << "\""; + } + void VisitEnumExtensibilityAttr(const EnumExtensibilityAttr *A) { + const auto *SA = cast<EnumExtensibilityAttr>(A); (void)SA; + switch(SA->getExtensibility()) { + case EnumExtensibilityAttr::Closed: + OS << " Closed"; + break; + case EnumExtensibilityAttr::Open: + OS << " Open"; + break; + } + } + void VisitExternalSourceSymbolAttr(const ExternalSourceSymbolAttr *A) { + const auto *SA = cast<ExternalSourceSymbolAttr>(A); (void)SA; + OS << " \"" << SA->getLanguage() << "\""; + OS << " \"" << SA->getDefinedIn() << "\""; + if (SA->getGeneratedDeclaration()) OS << " GeneratedDeclaration"; + } + void VisitFinalAttr(const FinalAttr *A) { + OS << " " << A->getSpelling(); + } + void VisitFormatAttr(const FormatAttr *A) { + const auto *SA = cast<FormatAttr>(A); (void)SA; + if (SA->getType()) + OS << " " << SA->getType()->getName(); + OS << " " << SA->getFormatIdx(); + OS << " " << SA->getFirstArg(); + } + void VisitFormatArgAttr(const FormatArgAttr *A) { + const auto *SA = cast<FormatArgAttr>(A); (void)SA; + OS << " " << SA->getFormatIdx().getSourceIndex(); + } + void VisitFortifyStdLibAttr(const FortifyStdLibAttr *A) { + const auto *SA = cast<FortifyStdLibAttr>(A); (void)SA; + OS << " " << SA->getType(); + OS << " " << SA->getFlag(); + } + void VisitIBOutletCollectionAttr(const IBOutletCollectionAttr *A) { + const auto *SA = cast<IBOutletCollectionAttr>(A); (void)SA; + OS << " " << SA->getInterface().getAsString(); + } + void VisitIFuncAttr(const IFuncAttr *A) { + const auto *SA = cast<IFuncAttr>(A); (void)SA; + OS << " \"" << SA->getResolver() << "\""; + } + void VisitInitPriorityAttr(const InitPriorityAttr *A) { + const auto *SA = cast<InitPriorityAttr>(A); (void)SA; + OS << " " << SA->getPriority(); + } + void VisitInitSegAttr(const InitSegAttr *A) { + const auto *SA = cast<InitSegAttr>(A); (void)SA; + OS << " \"" << SA->getSection() << "\""; + } + void VisitLayoutVersionAttr(const LayoutVersionAttr *A) { + const auto *SA = cast<LayoutVersionAttr>(A); (void)SA; + OS << " " << SA->getVersion(); + } + void VisitLoopHintAttr(const LoopHintAttr *A) { + const auto *SA = cast<LoopHintAttr>(A); (void)SA; + OS << " " << A->getSpelling(); + switch(SA->getOption()) { + case LoopHintAttr::Vectorize: + OS << " Vectorize"; + break; + case LoopHintAttr::VectorizeWidth: + OS << " VectorizeWidth"; + break; + case LoopHintAttr::Interleave: + OS << " Interleave"; + break; + case LoopHintAttr::InterleaveCount: + OS << " InterleaveCount"; + break; + case LoopHintAttr::Unroll: + OS << " Unroll"; + break; + case LoopHintAttr::UnrollCount: + OS << " UnrollCount"; + break; + case LoopHintAttr::UnrollAndJam: + OS << " UnrollAndJam"; + break; + case LoopHintAttr::UnrollAndJamCount: + OS << " UnrollAndJamCount"; + break; + case LoopHintAttr::PipelineDisabled: + OS << " PipelineDisabled"; + break; + case LoopHintAttr::PipelineInitiationInterval: + OS << " PipelineInitiationInterval"; + break; + case LoopHintAttr::Distribute: + OS << " Distribute"; + break; + } + switch(SA->getState()) { + case LoopHintAttr::Enable: + OS << " Enable"; + break; + case LoopHintAttr::Disable: + OS << " Disable"; + break; + case LoopHintAttr::Numeric: + OS << " Numeric"; + break; + case LoopHintAttr::AssumeSafety: + OS << " AssumeSafety"; + break; + case LoopHintAttr::Full: + OS << " Full"; + break; + } + } + void VisitMSInheritanceAttr(const MSInheritanceAttr *A) { + const auto *SA = cast<MSInheritanceAttr>(A); (void)SA; + OS << " " << A->getSpelling(); + if (SA->getBestCase()) OS << " BestCase"; + } + void VisitMSP430InterruptAttr(const MSP430InterruptAttr *A) { + const auto *SA = cast<MSP430InterruptAttr>(A); (void)SA; + OS << " " << SA->getNumber(); + } + void VisitMSVtorDispAttr(const MSVtorDispAttr *A) { + const auto *SA = cast<MSVtorDispAttr>(A); (void)SA; + OS << " " << SA->getVdm(); + } + void VisitMaxFieldAlignmentAttr(const MaxFieldAlignmentAttr *A) { + const auto *SA = cast<MaxFieldAlignmentAttr>(A); (void)SA; + OS << " " << SA->getAlignment(); + } + void VisitMinVectorWidthAttr(const MinVectorWidthAttr *A) { + const auto *SA = cast<MinVectorWidthAttr>(A); (void)SA; + OS << " " << SA->getVectorWidth(); + } + void VisitMipsInterruptAttr(const MipsInterruptAttr *A) { + const auto *SA = cast<MipsInterruptAttr>(A); (void)SA; + switch(SA->getInterrupt()) { + case MipsInterruptAttr::sw0: + OS << " sw0"; + break; + case MipsInterruptAttr::sw1: + OS << " sw1"; + break; + case MipsInterruptAttr::hw0: + OS << " hw0"; + break; + case MipsInterruptAttr::hw1: + OS << " hw1"; + break; + case MipsInterruptAttr::hw2: + OS << " hw2"; + break; + case MipsInterruptAttr::hw3: + OS << " hw3"; + break; + case MipsInterruptAttr::hw4: + OS << " hw4"; + break; + case MipsInterruptAttr::hw5: + OS << " hw5"; + break; + case MipsInterruptAttr::eic: + OS << " eic"; + break; + } + } + void VisitMipsLongCallAttr(const MipsLongCallAttr *A) { + OS << " " << A->getSpelling(); + } + void VisitMipsShortCallAttr(const MipsShortCallAttr *A) { + OS << " " << A->getSpelling(); + } + void VisitModeAttr(const ModeAttr *A) { + const auto *SA = cast<ModeAttr>(A); (void)SA; + if (SA->getMode()) + OS << " " << SA->getMode()->getName(); + } + void VisitNoSanitizeAttr(const NoSanitizeAttr *A) { + const auto *SA = cast<NoSanitizeAttr>(A); (void)SA; + for (const auto &Val : SA->sanitizers()) + OS << " " << Val; + } + void VisitNonNullAttr(const NonNullAttr *A) { + const auto *SA = cast<NonNullAttr>(A); (void)SA; + for (const auto &Val : SA->args()) + OS << " " << Val.getSourceIndex(); + } + void VisitOMPCaptureKindAttr(const OMPCaptureKindAttr *A) { + const auto *SA = cast<OMPCaptureKindAttr>(A); (void)SA; + OS << " " << SA->getCaptureKind(); + } + void VisitOMPDeclareSimdDeclAttr(const OMPDeclareSimdDeclAttr *A) { + const auto *SA = cast<OMPDeclareSimdDeclAttr>(A); (void)SA; + switch(SA->getBranchState()) { + case OMPDeclareSimdDeclAttr::BS_Undefined: + OS << " BS_Undefined"; + break; + case OMPDeclareSimdDeclAttr::BS_Inbranch: + OS << " BS_Inbranch"; + break; + case OMPDeclareSimdDeclAttr::BS_Notinbranch: + OS << " BS_Notinbranch"; + break; + } + for (const auto &Val : SA->modifiers()) + OS << " " << Val; + } + void VisitOMPDeclareTargetDeclAttr(const OMPDeclareTargetDeclAttr *A) { + const auto *SA = cast<OMPDeclareTargetDeclAttr>(A); (void)SA; + switch(SA->getMapType()) { + case OMPDeclareTargetDeclAttr::MT_To: + OS << " MT_To"; + break; + case OMPDeclareTargetDeclAttr::MT_Link: + OS << " MT_Link"; + break; + } + } + void VisitObjCBridgeAttr(const ObjCBridgeAttr *A) { + const auto *SA = cast<ObjCBridgeAttr>(A); (void)SA; + if (SA->getBridgedType()) + OS << " " << SA->getBridgedType()->getName(); + } + void VisitObjCBridgeMutableAttr(const ObjCBridgeMutableAttr *A) { + const auto *SA = cast<ObjCBridgeMutableAttr>(A); (void)SA; + if (SA->getBridgedType()) + OS << " " << SA->getBridgedType()->getName(); + } + void VisitObjCBridgeRelatedAttr(const ObjCBridgeRelatedAttr *A) { + const auto *SA = cast<ObjCBridgeRelatedAttr>(A); (void)SA; + if (SA->getRelatedClass()) + OS << " " << SA->getRelatedClass()->getName(); + if (SA->getClassMethod()) + OS << " " << SA->getClassMethod()->getName(); + if (SA->getInstanceMethod()) + OS << " " << SA->getInstanceMethod()->getName(); + } + void VisitObjCGCAttr(const ObjCGCAttr *A) { + const auto *SA = cast<ObjCGCAttr>(A); (void)SA; + if (SA->getKind()) + OS << " " << SA->getKind()->getName(); + } + void VisitObjCMethodFamilyAttr(const ObjCMethodFamilyAttr *A) { + const auto *SA = cast<ObjCMethodFamilyAttr>(A); (void)SA; + switch(SA->getFamily()) { + case ObjCMethodFamilyAttr::OMF_None: + OS << " OMF_None"; + break; + case ObjCMethodFamilyAttr::OMF_alloc: + OS << " OMF_alloc"; + break; + case ObjCMethodFamilyAttr::OMF_copy: + OS << " OMF_copy"; + break; + case ObjCMethodFamilyAttr::OMF_init: + OS << " OMF_init"; + break; + case ObjCMethodFamilyAttr::OMF_mutableCopy: + OS << " OMF_mutableCopy"; + break; + case ObjCMethodFamilyAttr::OMF_new: + OS << " OMF_new"; + break; + } + } + void VisitObjCOwnershipAttr(const ObjCOwnershipAttr *A) { + const auto *SA = cast<ObjCOwnershipAttr>(A); (void)SA; + if (SA->getKind()) + OS << " " << SA->getKind()->getName(); + } + void VisitObjCRuntimeNameAttr(const ObjCRuntimeNameAttr *A) { + const auto *SA = cast<ObjCRuntimeNameAttr>(A); (void)SA; + OS << " \"" << SA->getMetadataName() << "\""; + } + void VisitOpenCLAccessAttr(const OpenCLAccessAttr *A) { + OS << " " << A->getSpelling(); + } + void VisitOpenCLIntelReqdSubGroupSizeAttr(const OpenCLIntelReqdSubGroupSizeAttr *A) { + const auto *SA = cast<OpenCLIntelReqdSubGroupSizeAttr>(A); (void)SA; + OS << " " << SA->getSubGroupSize(); + } + void VisitOpenCLUnrollHintAttr(const OpenCLUnrollHintAttr *A) { + const auto *SA = cast<OpenCLUnrollHintAttr>(A); (void)SA; + OS << " " << SA->getUnrollHint(); + } + void VisitOwnershipAttr(const OwnershipAttr *A) { + const auto *SA = cast<OwnershipAttr>(A); (void)SA; + OS << " " << A->getSpelling(); + if (SA->getModule()) + OS << " " << SA->getModule()->getName(); + for (const auto &Val : SA->args()) + OS << " " << Val.getSourceIndex(); + } + void VisitParamTypestateAttr(const ParamTypestateAttr *A) { + const auto *SA = cast<ParamTypestateAttr>(A); (void)SA; + switch(SA->getParamState()) { + case ParamTypestateAttr::Unknown: + OS << " Unknown"; + break; + case ParamTypestateAttr::Consumed: + OS << " Consumed"; + break; + case ParamTypestateAttr::Unconsumed: + OS << " Unconsumed"; + break; + } + } + void VisitPassObjectSizeAttr(const PassObjectSizeAttr *A) { + const auto *SA = cast<PassObjectSizeAttr>(A); (void)SA; + OS << " " << SA->getType(); + } + void VisitPcsAttr(const PcsAttr *A) { + const auto *SA = cast<PcsAttr>(A); (void)SA; + switch(SA->getPCS()) { + case PcsAttr::AAPCS: + OS << " AAPCS"; + break; + case PcsAttr::AAPCS_VFP: + OS << " AAPCS_VFP"; + break; + } + } + void VisitPragmaClangBSSSectionAttr(const PragmaClangBSSSectionAttr *A) { + const auto *SA = cast<PragmaClangBSSSectionAttr>(A); (void)SA; + OS << " \"" << SA->getName() << "\""; + } + void VisitPragmaClangDataSectionAttr(const PragmaClangDataSectionAttr *A) { + const auto *SA = cast<PragmaClangDataSectionAttr>(A); (void)SA; + OS << " \"" << SA->getName() << "\""; + } + void VisitPragmaClangRodataSectionAttr(const PragmaClangRodataSectionAttr *A) { + const auto *SA = cast<PragmaClangRodataSectionAttr>(A); (void)SA; + OS << " \"" << SA->getName() << "\""; + } + void VisitPragmaClangTextSectionAttr(const PragmaClangTextSectionAttr *A) { + const auto *SA = cast<PragmaClangTextSectionAttr>(A); (void)SA; + OS << " \"" << SA->getName() << "\""; + } + void VisitRISCVInterruptAttr(const RISCVInterruptAttr *A) { + const auto *SA = cast<RISCVInterruptAttr>(A); (void)SA; + switch(SA->getInterrupt()) { + case RISCVInterruptAttr::user: + OS << " user"; + break; + case RISCVInterruptAttr::supervisor: + OS << " supervisor"; + break; + case RISCVInterruptAttr::machine: + OS << " machine"; + break; + } + } + void VisitReleaseCapabilityAttr(const ReleaseCapabilityAttr *A) { + const auto *SA = cast<ReleaseCapabilityAttr>(A); (void)SA; + OS << " " << A->getSpelling(); + } + void VisitReqdWorkGroupSizeAttr(const ReqdWorkGroupSizeAttr *A) { + const auto *SA = cast<ReqdWorkGroupSizeAttr>(A); (void)SA; + OS << " " << SA->getXDim(); + OS << " " << SA->getYDim(); + OS << " " << SA->getZDim(); + } + void VisitRequiresCapabilityAttr(const RequiresCapabilityAttr *A) { + const auto *SA = cast<RequiresCapabilityAttr>(A); (void)SA; + OS << " " << A->getSpelling(); + } + void VisitRestrictAttr(const RestrictAttr *A) { + OS << " " << A->getSpelling(); + } + void VisitReturnTypestateAttr(const ReturnTypestateAttr *A) { + const auto *SA = cast<ReturnTypestateAttr>(A); (void)SA; + switch(SA->getState()) { + case ReturnTypestateAttr::Unknown: + OS << " Unknown"; + break; + case ReturnTypestateAttr::Consumed: + OS << " Consumed"; + break; + case ReturnTypestateAttr::Unconsumed: + OS << " Unconsumed"; + break; + } + } + void VisitSectionAttr(const SectionAttr *A) { + const auto *SA = cast<SectionAttr>(A); (void)SA; + OS << " " << A->getSpelling(); + OS << " \"" << SA->getName() << "\""; + } + void VisitSentinelAttr(const SentinelAttr *A) { + const auto *SA = cast<SentinelAttr>(A); (void)SA; + OS << " " << SA->getSentinel(); + OS << " " << SA->getNullPos(); + } + void VisitSetTypestateAttr(const SetTypestateAttr *A) { + const auto *SA = cast<SetTypestateAttr>(A); (void)SA; + switch(SA->getNewState()) { + case SetTypestateAttr::Unknown: + OS << " Unknown"; + break; + case SetTypestateAttr::Consumed: + OS << " Consumed"; + break; + case SetTypestateAttr::Unconsumed: + OS << " Unconsumed"; + break; + } + } + void VisitSuppressAttr(const SuppressAttr *A) { + const auto *SA = cast<SuppressAttr>(A); (void)SA; + for (const auto &Val : SA->diagnosticIdentifiers()) + OS << " " << Val; + } + void VisitTLSModelAttr(const TLSModelAttr *A) { + const auto *SA = cast<TLSModelAttr>(A); (void)SA; + OS << " \"" << SA->getModel() << "\""; + } + void VisitTargetAttr(const TargetAttr *A) { + const auto *SA = cast<TargetAttr>(A); (void)SA; + OS << " \"" << SA->getFeaturesStr() << "\""; + } + void VisitTestTypestateAttr(const TestTypestateAttr *A) { + const auto *SA = cast<TestTypestateAttr>(A); (void)SA; + switch(SA->getTestState()) { + case TestTypestateAttr::Consumed: + OS << " Consumed"; + break; + case TestTypestateAttr::Unconsumed: + OS << " Unconsumed"; + break; + } + } + void VisitTryAcquireCapabilityAttr(const TryAcquireCapabilityAttr *A) { + const auto *SA = cast<TryAcquireCapabilityAttr>(A); (void)SA; + OS << " " << A->getSpelling(); + } + void VisitTypeTagForDatatypeAttr(const TypeTagForDatatypeAttr *A) { + const auto *SA = cast<TypeTagForDatatypeAttr>(A); (void)SA; + if (SA->getArgumentKind()) + OS << " " << SA->getArgumentKind()->getName(); + OS << " " << SA->getMatchingCType().getAsString(); + if (SA->getLayoutCompatible()) OS << " LayoutCompatible"; + if (SA->getMustBeNull()) OS << " MustBeNull"; + } + void VisitTypeVisibilityAttr(const TypeVisibilityAttr *A) { + const auto *SA = cast<TypeVisibilityAttr>(A); (void)SA; + switch(SA->getVisibility()) { + case TypeVisibilityAttr::Default: + OS << " Default"; + break; + case TypeVisibilityAttr::Hidden: + OS << " Hidden"; + break; + case TypeVisibilityAttr::Protected: + OS << " Protected"; + break; + } + } + void VisitUnavailableAttr(const UnavailableAttr *A) { + const auto *SA = cast<UnavailableAttr>(A); (void)SA; + OS << " \"" << SA->getMessage() << "\""; + switch(SA->getImplicitReason()) { + case UnavailableAttr::IR_None: + OS << " IR_None"; + break; + case UnavailableAttr::IR_ARCForbiddenType: + OS << " IR_ARCForbiddenType"; + break; + case UnavailableAttr::IR_ForbiddenWeak: + OS << " IR_ForbiddenWeak"; + break; + case UnavailableAttr::IR_ARCForbiddenConversion: + OS << " IR_ARCForbiddenConversion"; + break; + case UnavailableAttr::IR_ARCInitReturnsUnrelated: + OS << " IR_ARCInitReturnsUnrelated"; + break; + case UnavailableAttr::IR_ARCFieldWithOwnership: + OS << " IR_ARCFieldWithOwnership"; + break; + } + } + void VisitUnusedAttr(const UnusedAttr *A) { + OS << " " << A->getSpelling(); + } + void VisitUuidAttr(const UuidAttr *A) { + const auto *SA = cast<UuidAttr>(A); (void)SA; + OS << " \"" << SA->getGuid() << "\""; + } + void VisitVecTypeHintAttr(const VecTypeHintAttr *A) { + const auto *SA = cast<VecTypeHintAttr>(A); (void)SA; + OS << " " << SA->getTypeHint().getAsString(); + } + void VisitVisibilityAttr(const VisibilityAttr *A) { + const auto *SA = cast<VisibilityAttr>(A); (void)SA; + switch(SA->getVisibility()) { + case VisibilityAttr::Default: + OS << " Default"; + break; + case VisibilityAttr::Hidden: + OS << " Hidden"; + break; + case VisibilityAttr::Protected: + OS << " Protected"; + break; + } + } + void VisitWarnUnusedResultAttr(const WarnUnusedResultAttr *A) { + OS << " " << A->getSpelling(); + } + void VisitWeakRefAttr(const WeakRefAttr *A) { + const auto *SA = cast<WeakRefAttr>(A); (void)SA; + OS << " \"" << SA->getAliasee() << "\""; + } + void VisitWebAssemblyImportModuleAttr(const WebAssemblyImportModuleAttr *A) { + const auto *SA = cast<WebAssemblyImportModuleAttr>(A); (void)SA; + OS << " \"" << SA->getImportModule() << "\""; + } + void VisitWebAssemblyImportNameAttr(const WebAssemblyImportNameAttr *A) { + const auto *SA = cast<WebAssemblyImportNameAttr>(A); (void)SA; + OS << " \"" << SA->getImportName() << "\""; + } + void VisitWorkGroupSizeHintAttr(const WorkGroupSizeHintAttr *A) { + const auto *SA = cast<WorkGroupSizeHintAttr>(A); (void)SA; + OS << " " << SA->getXDim(); + OS << " " << SA->getYDim(); + OS << " " << SA->getZDim(); + } + void VisitXRayInstrumentAttr(const XRayInstrumentAttr *A) { + OS << " " << A->getSpelling(); + } + void VisitXRayLogArgsAttr(const XRayLogArgsAttr *A) { + const auto *SA = cast<XRayLogArgsAttr>(A); (void)SA; + OS << " " << SA->getArgumentCount(); + } |
