llvm/tools/clang/include/clang/AST/AttrVisitor.inc

/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
|*                                                                            *|
|* Used by RecursiveASTVisitor to visit attributes.                           *|
|*                                                                            *|
|* Automatically generated file, do not edit!                                 *|
|* From: Attr.td                                                              *|
|*                                                                            *|
\*===----------------------------------------------------------------------===*/

#ifdef ATTR_VISITOR_DECLS_ONLY

  bool TraverseAArch64SVEPcsAttr(AArch64SVEPcsAttr *A);
  bool VisitAArch64SVEPcsAttr(AArch64SVEPcsAttr *A) {}
  bool TraverseAArch64VectorPcsAttr(AArch64VectorPcsAttr *A);
  bool VisitAArch64VectorPcsAttr(AArch64VectorPcsAttr *A) {}
  bool TraverseAMDGPUFlatWorkGroupSizeAttr(AMDGPUFlatWorkGroupSizeAttr *A);
  bool VisitAMDGPUFlatWorkGroupSizeAttr(AMDGPUFlatWorkGroupSizeAttr *A) {}
  bool TraverseAMDGPUKernelCallAttr(AMDGPUKernelCallAttr *A);
  bool VisitAMDGPUKernelCallAttr(AMDGPUKernelCallAttr *A) {}
  bool TraverseAMDGPUMaxNumWorkGroupsAttr(AMDGPUMaxNumWorkGroupsAttr *A);
  bool VisitAMDGPUMaxNumWorkGroupsAttr(AMDGPUMaxNumWorkGroupsAttr *A) {}
  bool TraverseAMDGPUNumSGPRAttr(AMDGPUNumSGPRAttr *A);
  bool VisitAMDGPUNumSGPRAttr(AMDGPUNumSGPRAttr *A) {}
  bool TraverseAMDGPUNumVGPRAttr(AMDGPUNumVGPRAttr *A);
  bool VisitAMDGPUNumVGPRAttr(AMDGPUNumVGPRAttr *A) {}
  bool TraverseAMDGPUWavesPerEUAttr(AMDGPUWavesPerEUAttr *A);
  bool VisitAMDGPUWavesPerEUAttr(AMDGPUWavesPerEUAttr *A) {}
  bool TraverseARMInterruptAttr(ARMInterruptAttr *A);
  bool VisitARMInterruptAttr(ARMInterruptAttr *A) {}
  bool TraverseAVRInterruptAttr(AVRInterruptAttr *A);
  bool VisitAVRInterruptAttr(AVRInterruptAttr *A) {}
  bool TraverseAVRSignalAttr(AVRSignalAttr *A);
  bool VisitAVRSignalAttr(AVRSignalAttr *A) {}
  bool TraverseAbiTagAttr(AbiTagAttr *A);
  bool VisitAbiTagAttr(AbiTagAttr *A) {}
  bool TraverseAcquireCapabilityAttr(AcquireCapabilityAttr *A);
  bool VisitAcquireCapabilityAttr(AcquireCapabilityAttr *A) {}
  bool TraverseAcquireHandleAttr(AcquireHandleAttr *A);
  bool VisitAcquireHandleAttr(AcquireHandleAttr *A) {}
  bool TraverseAcquiredAfterAttr(AcquiredAfterAttr *A);
  bool VisitAcquiredAfterAttr(AcquiredAfterAttr *A) {}
  bool TraverseAcquiredBeforeAttr(AcquiredBeforeAttr *A);
  bool VisitAcquiredBeforeAttr(AcquiredBeforeAttr *A) {}
  bool TraverseAddressSpaceAttr(AddressSpaceAttr *A);
  bool VisitAddressSpaceAttr(AddressSpaceAttr *A) {}
  bool TraverseAliasAttr(AliasAttr *A);
  bool VisitAliasAttr(AliasAttr *A) {}
  bool TraverseAlignMac68kAttr(AlignMac68kAttr *A);
  bool VisitAlignMac68kAttr(AlignMac68kAttr *A) {}
  bool TraverseAlignNaturalAttr(AlignNaturalAttr *A);
  bool VisitAlignNaturalAttr(AlignNaturalAttr *A) {}
  bool TraverseAlignValueAttr(AlignValueAttr *A);
  bool VisitAlignValueAttr(AlignValueAttr *A) {}
  bool TraverseAlignedAttr(AlignedAttr *A);
  bool VisitAlignedAttr(AlignedAttr *A) {}
  bool TraverseAllocAlignAttr(AllocAlignAttr *A);
  bool VisitAllocAlignAttr(AllocAlignAttr *A) {}
  bool TraverseAllocSizeAttr(AllocSizeAttr *A);
  bool VisitAllocSizeAttr(AllocSizeAttr *A) {}
  bool TraverseAllocatingAttr(AllocatingAttr *A);
  bool VisitAllocatingAttr(AllocatingAttr *A) {}
  bool TraverseAlwaysDestroyAttr(AlwaysDestroyAttr *A);
  bool VisitAlwaysDestroyAttr(AlwaysDestroyAttr *A) {}
  bool TraverseAlwaysInlineAttr(AlwaysInlineAttr *A);
  bool VisitAlwaysInlineAttr(AlwaysInlineAttr *A) {}
  bool TraverseAnalyzerNoReturnAttr(AnalyzerNoReturnAttr *A);
  bool VisitAnalyzerNoReturnAttr(AnalyzerNoReturnAttr *A) {}
  bool TraverseAnnotateAttr(AnnotateAttr *A);
  bool VisitAnnotateAttr(AnnotateAttr *A) {}
  bool TraverseAnnotateTypeAttr(AnnotateTypeAttr *A);
  bool VisitAnnotateTypeAttr(AnnotateTypeAttr *A) {}
  bool TraverseAnyX86InterruptAttr(AnyX86InterruptAttr *A);
  bool VisitAnyX86InterruptAttr(AnyX86InterruptAttr *A) {}
  bool TraverseAnyX86NoCallerSavedRegistersAttr(AnyX86NoCallerSavedRegistersAttr *A);
  bool VisitAnyX86NoCallerSavedRegistersAttr(AnyX86NoCallerSavedRegistersAttr *A) {}
  bool TraverseAnyX86NoCfCheckAttr(AnyX86NoCfCheckAttr *A);
  bool VisitAnyX86NoCfCheckAttr(AnyX86NoCfCheckAttr *A) {}
  bool TraverseArcWeakrefUnavailableAttr(ArcWeakrefUnavailableAttr *A);
  bool VisitArcWeakrefUnavailableAttr(ArcWeakrefUnavailableAttr *A) {}
  bool TraverseArgumentWithTypeTagAttr(ArgumentWithTypeTagAttr *A);
  bool VisitArgumentWithTypeTagAttr(ArgumentWithTypeTagAttr *A) {}
  bool TraverseArmBuiltinAliasAttr(ArmBuiltinAliasAttr *A);
  bool VisitArmBuiltinAliasAttr(ArmBuiltinAliasAttr *A) {}
  bool TraverseArmInAttr(ArmInAttr *A);
  bool VisitArmInAttr(ArmInAttr *A) {}
  bool TraverseArmInOutAttr(ArmInOutAttr *A);
  bool VisitArmInOutAttr(ArmInOutAttr *A) {}
  bool TraverseArmLocallyStreamingAttr(ArmLocallyStreamingAttr *A);
  bool VisitArmLocallyStreamingAttr(ArmLocallyStreamingAttr *A) {}
  bool TraverseArmMveStrictPolymorphismAttr(ArmMveStrictPolymorphismAttr *A);
  bool VisitArmMveStrictPolymorphismAttr(ArmMveStrictPolymorphismAttr *A) {}
  bool TraverseArmNewAttr(ArmNewAttr *A);
  bool VisitArmNewAttr(ArmNewAttr *A) {}
  bool TraverseArmOutAttr(ArmOutAttr *A);
  bool VisitArmOutAttr(ArmOutAttr *A) {}
  bool TraverseArmPreservesAttr(ArmPreservesAttr *A);
  bool VisitArmPreservesAttr(ArmPreservesAttr *A) {}
  bool TraverseArmStreamingAttr(ArmStreamingAttr *A);
  bool VisitArmStreamingAttr(ArmStreamingAttr *A) {}
  bool TraverseArmStreamingCompatibleAttr(ArmStreamingCompatibleAttr *A);
  bool VisitArmStreamingCompatibleAttr(ArmStreamingCompatibleAttr *A) {}
  bool TraverseArtificialAttr(ArtificialAttr *A);
  bool VisitArtificialAttr(ArtificialAttr *A) {}
  bool TraverseAsmLabelAttr(AsmLabelAttr *A);
  bool VisitAsmLabelAttr(AsmLabelAttr *A) {}
  bool TraverseAssertCapabilityAttr(AssertCapabilityAttr *A);
  bool VisitAssertCapabilityAttr(AssertCapabilityAttr *A) {}
  bool TraverseAssertExclusiveLockAttr(AssertExclusiveLockAttr *A);
  bool VisitAssertExclusiveLockAttr(AssertExclusiveLockAttr *A) {}
  bool TraverseAssertSharedLockAttr(AssertSharedLockAttr *A);
  bool VisitAssertSharedLockAttr(AssertSharedLockAttr *A) {}
  bool TraverseAssumeAlignedAttr(AssumeAlignedAttr *A);
  bool VisitAssumeAlignedAttr(AssumeAlignedAttr *A) {}
  bool TraverseAvailabilityAttr(AvailabilityAttr *A);
  bool VisitAvailabilityAttr(AvailabilityAttr *A) {}
  bool TraverseAvailableOnlyInDefaultEvalMethodAttr(AvailableOnlyInDefaultEvalMethodAttr *A);
  bool VisitAvailableOnlyInDefaultEvalMethodAttr(AvailableOnlyInDefaultEvalMethodAttr *A) {}
  bool TraverseBPFFastCallAttr(BPFFastCallAttr *A);
  bool VisitBPFFastCallAttr(BPFFastCallAttr *A) {}
  bool TraverseBPFPreserveAccessIndexAttr(BPFPreserveAccessIndexAttr *A);
  bool VisitBPFPreserveAccessIndexAttr(BPFPreserveAccessIndexAttr *A) {}
  bool TraverseBPFPreserveStaticOffsetAttr(BPFPreserveStaticOffsetAttr *A);
  bool VisitBPFPreserveStaticOffsetAttr(BPFPreserveStaticOffsetAttr *A) {}
  bool TraverseBTFDeclTagAttr(BTFDeclTagAttr *A);
  bool VisitBTFDeclTagAttr(BTFDeclTagAttr *A) {}
  bool TraverseBTFTypeTagAttr(BTFTypeTagAttr *A);
  bool VisitBTFTypeTagAttr(BTFTypeTagAttr *A) {}
  bool TraverseBlockingAttr(BlockingAttr *A);
  bool VisitBlockingAttr(BlockingAttr *A) {}
  bool TraverseBlocksAttr(BlocksAttr *A);
  bool VisitBlocksAttr(BlocksAttr *A) {}
  bool TraverseBuiltinAttr(BuiltinAttr *A);
  bool VisitBuiltinAttr(BuiltinAttr *A) {}
  bool TraverseBuiltinAliasAttr(BuiltinAliasAttr *A);
  bool VisitBuiltinAliasAttr(BuiltinAliasAttr *A) {}
  bool TraverseC11NoReturnAttr(C11NoReturnAttr *A);
  bool VisitC11NoReturnAttr(C11NoReturnAttr *A) {}
  bool TraverseCDeclAttr(CDeclAttr *A);
  bool VisitCDeclAttr(CDeclAttr *A) {}
  bool TraverseCFAuditedTransferAttr(CFAuditedTransferAttr *A);
  bool VisitCFAuditedTransferAttr(CFAuditedTransferAttr *A) {}
  bool TraverseCFConsumedAttr(CFConsumedAttr *A);
  bool VisitCFConsumedAttr(CFConsumedAttr *A) {}
  bool TraverseCFGuardAttr(CFGuardAttr *A);
  bool VisitCFGuardAttr(CFGuardAttr *A) {}
  bool TraverseCFICanonicalJumpTableAttr(CFICanonicalJumpTableAttr *A);
  bool VisitCFICanonicalJumpTableAttr(CFICanonicalJumpTableAttr *A) {}
  bool TraverseCFReturnsNotRetainedAttr(CFReturnsNotRetainedAttr *A);
  bool VisitCFReturnsNotRetainedAttr(CFReturnsNotRetainedAttr *A) {}
  bool TraverseCFReturnsRetainedAttr(CFReturnsRetainedAttr *A);
  bool VisitCFReturnsRetainedAttr(CFReturnsRetainedAttr *A) {}
  bool TraverseCFUnknownTransferAttr(CFUnknownTransferAttr *A);
  bool VisitCFUnknownTransferAttr(CFUnknownTransferAttr *A) {}
  bool TraverseCPUDispatchAttr(CPUDispatchAttr *A);
  bool VisitCPUDispatchAttr(CPUDispatchAttr *A) {}
  bool TraverseCPUSpecificAttr(CPUSpecificAttr *A);
  bool VisitCPUSpecificAttr(CPUSpecificAttr *A) {}
  bool TraverseCUDAConstantAttr(CUDAConstantAttr *A);
  bool VisitCUDAConstantAttr(CUDAConstantAttr *A) {}
  bool TraverseCUDADeviceAttr(CUDADeviceAttr *A);
  bool VisitCUDADeviceAttr(CUDADeviceAttr *A) {}
  bool TraverseCUDADeviceBuiltinSurfaceTypeAttr(CUDADeviceBuiltinSurfaceTypeAttr *A);
  bool VisitCUDADeviceBuiltinSurfaceTypeAttr(CUDADeviceBuiltinSurfaceTypeAttr *A) {}
  bool TraverseCUDADeviceBuiltinTextureTypeAttr(CUDADeviceBuiltinTextureTypeAttr *A);
  bool VisitCUDADeviceBuiltinTextureTypeAttr(CUDADeviceBuiltinTextureTypeAttr *A) {}
  bool TraverseCUDAGlobalAttr(CUDAGlobalAttr *A);
  bool VisitCUDAGlobalAttr(CUDAGlobalAttr *A) {}
  bool TraverseCUDAHostAttr(CUDAHostAttr *A);
  bool VisitCUDAHostAttr(CUDAHostAttr *A) {}
  bool TraverseCUDAInvalidTargetAttr(CUDAInvalidTargetAttr *A);
  bool VisitCUDAInvalidTargetAttr(CUDAInvalidTargetAttr *A) {}
  bool TraverseCUDALaunchBoundsAttr(CUDALaunchBoundsAttr *A);
  bool VisitCUDALaunchBoundsAttr(CUDALaunchBoundsAttr *A) {}
  bool TraverseCUDASharedAttr(CUDASharedAttr *A);
  bool VisitCUDASharedAttr(CUDASharedAttr *A) {}
  bool TraverseCXX11NoReturnAttr(CXX11NoReturnAttr *A);
  bool VisitCXX11NoReturnAttr(CXX11NoReturnAttr *A) {}
  bool TraverseCXXAssumeAttr(CXXAssumeAttr *A);
  bool VisitCXXAssumeAttr(CXXAssumeAttr *A) {}
  bool TraverseCallableWhenAttr(CallableWhenAttr *A);
  bool VisitCallableWhenAttr(CallableWhenAttr *A) {}
  bool TraverseCallbackAttr(CallbackAttr *A);
  bool VisitCallbackAttr(CallbackAttr *A) {}
  bool TraverseCalledOnceAttr(CalledOnceAttr *A);
  bool VisitCalledOnceAttr(CalledOnceAttr *A) {}
  bool TraverseCapabilityAttr(CapabilityAttr *A);
  bool VisitCapabilityAttr(CapabilityAttr *A) {}
  bool TraverseCapturedRecordAttr(CapturedRecordAttr *A);
  bool VisitCapturedRecordAttr(CapturedRecordAttr *A) {}
  bool TraverseCarriesDependencyAttr(CarriesDependencyAttr *A);
  bool VisitCarriesDependencyAttr(CarriesDependencyAttr *A) {}
  bool TraverseCleanupAttr(CleanupAttr *A);
  bool VisitCleanupAttr(CleanupAttr *A) {}
  bool TraverseClspvLibclcBuiltinAttr(ClspvLibclcBuiltinAttr *A);
  bool VisitClspvLibclcBuiltinAttr(ClspvLibclcBuiltinAttr *A) {}
  bool TraverseCmseNSCallAttr(CmseNSCallAttr *A);
  bool VisitCmseNSCallAttr(CmseNSCallAttr *A) {}
  bool TraverseCmseNSEntryAttr(CmseNSEntryAttr *A);
  bool VisitCmseNSEntryAttr(CmseNSEntryAttr *A) {}
  bool TraverseCodeAlignAttr(CodeAlignAttr *A);
  bool VisitCodeAlignAttr(CodeAlignAttr *A) {}
  bool TraverseCodeModelAttr(CodeModelAttr *A);
  bool VisitCodeModelAttr(CodeModelAttr *A) {}
  bool TraverseCodeSegAttr(CodeSegAttr *A);
  bool VisitCodeSegAttr(CodeSegAttr *A) {}
  bool TraverseColdAttr(ColdAttr *A);
  bool VisitColdAttr(ColdAttr *A) {}
  bool TraverseCommonAttr(CommonAttr *A);
  bool VisitCommonAttr(CommonAttr *A) {}
  bool TraverseConstAttr(ConstAttr *A);
  bool VisitConstAttr(ConstAttr *A) {}
  bool TraverseConstInitAttr(ConstInitAttr *A);
  bool VisitConstInitAttr(ConstInitAttr *A) {}
  bool TraverseConstructorAttr(ConstructorAttr *A);
  bool VisitConstructorAttr(ConstructorAttr *A) {}
  bool TraverseConsumableAttr(ConsumableAttr *A);
  bool VisitConsumableAttr(ConsumableAttr *A) {}
  bool TraverseConsumableAutoCastAttr(ConsumableAutoCastAttr *A);
  bool VisitConsumableAutoCastAttr(ConsumableAutoCastAttr *A) {}
  bool TraverseConsumableSetOnReadAttr(ConsumableSetOnReadAttr *A);
  bool VisitConsumableSetOnReadAttr(ConsumableSetOnReadAttr *A) {}
  bool TraverseConvergentAttr(ConvergentAttr *A);
  bool VisitConvergentAttr(ConvergentAttr *A) {}
  bool TraverseCoroAwaitElidableAttr(CoroAwaitElidableAttr *A);
  bool VisitCoroAwaitElidableAttr(CoroAwaitElidableAttr *A) {}
  bool TraverseCoroAwaitElidableArgumentAttr(CoroAwaitElidableArgumentAttr *A);
  bool VisitCoroAwaitElidableArgumentAttr(CoroAwaitElidableArgumentAttr *A) {}
  bool TraverseCoroDisableLifetimeBoundAttr(CoroDisableLifetimeBoundAttr *A);
  bool VisitCoroDisableLifetimeBoundAttr(CoroDisableLifetimeBoundAttr *A) {}
  bool TraverseCoroLifetimeBoundAttr(CoroLifetimeBoundAttr *A);
  bool VisitCoroLifetimeBoundAttr(CoroLifetimeBoundAttr *A) {}
  bool TraverseCoroOnlyDestroyWhenCompleteAttr(CoroOnlyDestroyWhenCompleteAttr *A);
  bool VisitCoroOnlyDestroyWhenCompleteAttr(CoroOnlyDestroyWhenCompleteAttr *A) {}
  bool TraverseCoroReturnTypeAttr(CoroReturnTypeAttr *A);
  bool VisitCoroReturnTypeAttr(CoroReturnTypeAttr *A) {}
  bool TraverseCoroWrapperAttr(CoroWrapperAttr *A);
  bool VisitCoroWrapperAttr(CoroWrapperAttr *A) {}
  bool TraverseCountedByAttr(CountedByAttr *A);
  bool VisitCountedByAttr(CountedByAttr *A) {}
  bool TraverseCountedByOrNullAttr(CountedByOrNullAttr *A);
  bool VisitCountedByOrNullAttr(CountedByOrNullAttr *A) {}
  bool TraverseDLLExportAttr(DLLExportAttr *A);
  bool VisitDLLExportAttr(DLLExportAttr *A) {}
  bool TraverseDLLExportStaticLocalAttr(DLLExportStaticLocalAttr *A);
  bool VisitDLLExportStaticLocalAttr(DLLExportStaticLocalAttr *A) {}
  bool TraverseDLLImportAttr(DLLImportAttr *A);
  bool VisitDLLImportAttr(DLLImportAttr *A) {}
  bool TraverseDLLImportStaticLocalAttr(DLLImportStaticLocalAttr *A);
  bool VisitDLLImportStaticLocalAttr(DLLImportStaticLocalAttr *A) {}
  bool TraverseDeprecatedAttr(DeprecatedAttr *A);
  bool VisitDeprecatedAttr(DeprecatedAttr *A) {}
  bool TraverseDestructorAttr(DestructorAttr *A);
  bool VisitDestructorAttr(DestructorAttr *A) {}
  bool TraverseDiagnoseAsBuiltinAttr(DiagnoseAsBuiltinAttr *A);
  bool VisitDiagnoseAsBuiltinAttr(DiagnoseAsBuiltinAttr *A) {}
  bool TraverseDiagnoseIfAttr(DiagnoseIfAttr *A);
  bool VisitDiagnoseIfAttr(DiagnoseIfAttr *A) {}
  bool TraverseDisableSanitizerInstrumentationAttr(DisableSanitizerInstrumentationAttr *A);
  bool VisitDisableSanitizerInstrumentationAttr(DisableSanitizerInstrumentationAttr *A) {}
  bool TraverseDisableTailCallsAttr(DisableTailCallsAttr *A);
  bool VisitDisableTailCallsAttr(DisableTailCallsAttr *A) {}
  bool TraverseEmptyBasesAttr(EmptyBasesAttr *A);
  bool VisitEmptyBasesAttr(EmptyBasesAttr *A) {}
  bool TraverseEnableIfAttr(EnableIfAttr *A);
  bool VisitEnableIfAttr(EnableIfAttr *A) {}
  bool TraverseEnforceTCBAttr(EnforceTCBAttr *A);
  bool VisitEnforceTCBAttr(EnforceTCBAttr *A) {}
  bool TraverseEnforceTCBLeafAttr(EnforceTCBLeafAttr *A);
  bool VisitEnforceTCBLeafAttr(EnforceTCBLeafAttr *A) {}
  bool TraverseEnumExtensibilityAttr(EnumExtensibilityAttr *A);
  bool VisitEnumExtensibilityAttr(EnumExtensibilityAttr *A) {}
  bool TraverseErrorAttr(ErrorAttr *A);
  bool VisitErrorAttr(ErrorAttr *A) {}
  bool TraverseExcludeFromExplicitInstantiationAttr(ExcludeFromExplicitInstantiationAttr *A);
  bool VisitExcludeFromExplicitInstantiationAttr(ExcludeFromExplicitInstantiationAttr *A) {}
  bool TraverseExclusiveTrylockFunctionAttr(ExclusiveTrylockFunctionAttr *A);
  bool VisitExclusiveTrylockFunctionAttr(ExclusiveTrylockFunctionAttr *A) {}
  bool TraverseExternalSourceSymbolAttr(ExternalSourceSymbolAttr *A);
  bool VisitExternalSourceSymbolAttr(ExternalSourceSymbolAttr *A) {}
  bool TraverseFallThroughAttr(FallThroughAttr *A);
  bool VisitFallThroughAttr(FallThroughAttr *A) {}
  bool TraverseFastCallAttr(FastCallAttr *A);
  bool VisitFastCallAttr(FastCallAttr *A) {}
  bool TraverseFinalAttr(FinalAttr *A);
  bool VisitFinalAttr(FinalAttr *A) {}
  bool TraverseFlagEnumAttr(FlagEnumAttr *A);
  bool VisitFlagEnumAttr(FlagEnumAttr *A) {}
  bool TraverseFlattenAttr(FlattenAttr *A);
  bool VisitFlattenAttr(FlattenAttr *A) {}
  bool TraverseFormatAttr(FormatAttr *A);
  bool VisitFormatAttr(FormatAttr *A) {}
  bool TraverseFormatArgAttr(FormatArgAttr *A);
  bool VisitFormatArgAttr(FormatArgAttr *A) {}
  bool TraverseFunctionReturnThunksAttr(FunctionReturnThunksAttr *A);
  bool VisitFunctionReturnThunksAttr(FunctionReturnThunksAttr *A) {}
  bool TraverseGNUInlineAttr(GNUInlineAttr *A);
  bool VisitGNUInlineAttr(GNUInlineAttr *A) {}
  bool TraverseGuardedByAttr(GuardedByAttr *A);
  bool VisitGuardedByAttr(GuardedByAttr *A) {}
  bool TraverseGuardedVarAttr(GuardedVarAttr *A);
  bool VisitGuardedVarAttr(GuardedVarAttr *A) {}
  bool TraverseHIPManagedAttr(HIPManagedAttr *A);
  bool VisitHIPManagedAttr(HIPManagedAttr *A) {}
  bool TraverseHLSLContainedTypeAttr(HLSLContainedTypeAttr *A);
  bool VisitHLSLContainedTypeAttr(HLSLContainedTypeAttr *A) {}
  bool TraverseHLSLGroupSharedAddressSpaceAttr(HLSLGroupSharedAddressSpaceAttr *A);
  bool VisitHLSLGroupSharedAddressSpaceAttr(HLSLGroupSharedAddressSpaceAttr *A) {}
  bool TraverseHLSLLoopHintAttr(HLSLLoopHintAttr *A);
  bool VisitHLSLLoopHintAttr(HLSLLoopHintAttr *A) {}
  bool TraverseHLSLNumThreadsAttr(HLSLNumThreadsAttr *A);
  bool VisitHLSLNumThreadsAttr(HLSLNumThreadsAttr *A) {}
  bool TraverseHLSLPackOffsetAttr(HLSLPackOffsetAttr *A);
  bool VisitHLSLPackOffsetAttr(HLSLPackOffsetAttr *A) {}
  bool TraverseHLSLParamModifierAttr(HLSLParamModifierAttr *A);
  bool VisitHLSLParamModifierAttr(HLSLParamModifierAttr *A) {}
  bool TraverseHLSLROVAttr(HLSLROVAttr *A);
  bool VisitHLSLROVAttr(HLSLROVAttr *A) {}
  bool TraverseHLSLRawBufferAttr(HLSLRawBufferAttr *A);
  bool VisitHLSLRawBufferAttr(HLSLRawBufferAttr *A) {}
  bool TraverseHLSLResourceAttr(HLSLResourceAttr *A);
  bool VisitHLSLResourceAttr(HLSLResourceAttr *A) {}
  bool TraverseHLSLResourceBindingAttr(HLSLResourceBindingAttr *A);
  bool VisitHLSLResourceBindingAttr(HLSLResourceBindingAttr *A) {}
  bool TraverseHLSLResourceClassAttr(HLSLResourceClassAttr *A);
  bool VisitHLSLResourceClassAttr(HLSLResourceClassAttr *A) {}
  bool TraverseHLSLSV_DispatchThreadIDAttr(HLSLSV_DispatchThreadIDAttr *A);
  bool VisitHLSLSV_DispatchThreadIDAttr(HLSLSV_DispatchThreadIDAttr *A) {}
  bool TraverseHLSLSV_GroupIndexAttr(HLSLSV_GroupIndexAttr *A);
  bool VisitHLSLSV_GroupIndexAttr(HLSLSV_GroupIndexAttr *A) {}
  bool TraverseHLSLShaderAttr(HLSLShaderAttr *A);
  bool VisitHLSLShaderAttr(HLSLShaderAttr *A) {}
  bool TraverseHLSLWaveSizeAttr(HLSLWaveSizeAttr *A);
  bool VisitHLSLWaveSizeAttr(HLSLWaveSizeAttr *A) {}
  bool TraverseHotAttr(HotAttr *A);
  bool VisitHotAttr(HotAttr *A) {}
  bool TraverseHybridPatchableAttr(HybridPatchableAttr *A);
  bool VisitHybridPatchableAttr(HybridPatchableAttr *A) {}
  bool TraverseIBActionAttr(IBActionAttr *A);
  bool VisitIBActionAttr(IBActionAttr *A) {}
  bool TraverseIBOutletAttr(IBOutletAttr *A);
  bool VisitIBOutletAttr(IBOutletAttr *A) {}
  bool TraverseIBOutletCollectionAttr(IBOutletCollectionAttr *A);
  bool VisitIBOutletCollectionAttr(IBOutletCollectionAttr *A) {}
  bool TraverseIFuncAttr(IFuncAttr *A);
  bool VisitIFuncAttr(IFuncAttr *A) {}
  bool TraverseInitPriorityAttr(InitPriorityAttr *A);
  bool VisitInitPriorityAttr(InitPriorityAttr *A) {}
  bool TraverseInitSegAttr(InitSegAttr *A);
  bool VisitInitSegAttr(InitSegAttr *A) {}
  bool TraverseIntelOclBiccAttr(IntelOclBiccAttr *A);
  bool VisitIntelOclBiccAttr(IntelOclBiccAttr *A) {}
  bool TraverseInternalLinkageAttr(InternalLinkageAttr *A);
  bool VisitInternalLinkageAttr(InternalLinkageAttr *A) {}
  bool TraverseLTOVisibilityPublicAttr(LTOVisibilityPublicAttr *A);
  bool VisitLTOVisibilityPublicAttr(LTOVisibilityPublicAttr *A) {}
  bool TraverseLayoutVersionAttr(LayoutVersionAttr *A);
  bool VisitLayoutVersionAttr(LayoutVersionAttr *A) {}
  bool TraverseLeafAttr(LeafAttr *A);
  bool VisitLeafAttr(LeafAttr *A) {}
  bool TraverseLifetimeBoundAttr(LifetimeBoundAttr *A);
  bool VisitLifetimeBoundAttr(LifetimeBoundAttr *A) {}
  bool TraverseLikelyAttr(LikelyAttr *A);
  bool VisitLikelyAttr(LikelyAttr *A) {}
  bool TraverseLoaderUninitializedAttr(LoaderUninitializedAttr *A);
  bool VisitLoaderUninitializedAttr(LoaderUninitializedAttr *A) {}
  bool TraverseLockReturnedAttr(LockReturnedAttr *A);
  bool VisitLockReturnedAttr(LockReturnedAttr *A) {}
  bool TraverseLocksExcludedAttr(LocksExcludedAttr *A);
  bool VisitLocksExcludedAttr(LocksExcludedAttr *A) {}
  bool TraverseLoopHintAttr(LoopHintAttr *A);
  bool VisitLoopHintAttr(LoopHintAttr *A) {}
  bool TraverseM68kInterruptAttr(M68kInterruptAttr *A);
  bool VisitM68kInterruptAttr(M68kInterruptAttr *A) {}
  bool TraverseM68kRTDAttr(M68kRTDAttr *A);
  bool VisitM68kRTDAttr(M68kRTDAttr *A) {}
  bool TraverseMIGServerRoutineAttr(MIGServerRoutineAttr *A);
  bool VisitMIGServerRoutineAttr(MIGServerRoutineAttr *A) {}
  bool TraverseMSABIAttr(MSABIAttr *A);
  bool VisitMSABIAttr(MSABIAttr *A) {}
  bool TraverseMSAllocatorAttr(MSAllocatorAttr *A);
  bool VisitMSAllocatorAttr(MSAllocatorAttr *A) {}
  bool TraverseMSConstexprAttr(MSConstexprAttr *A);
  bool VisitMSConstexprAttr(MSConstexprAttr *A) {}
  bool TraverseMSInheritanceAttr(MSInheritanceAttr *A);
  bool VisitMSInheritanceAttr(MSInheritanceAttr *A) {}
  bool TraverseMSNoVTableAttr(MSNoVTableAttr *A);
  bool VisitMSNoVTableAttr(MSNoVTableAttr *A) {}
  bool TraverseMSP430InterruptAttr(MSP430InterruptAttr *A);
  bool VisitMSP430InterruptAttr(MSP430InterruptAttr *A) {}
  bool TraverseMSStructAttr(MSStructAttr *A);
  bool VisitMSStructAttr(MSStructAttr *A) {}
  bool TraverseMSVtorDispAttr(MSVtorDispAttr *A);
  bool VisitMSVtorDispAttr(MSVtorDispAttr *A) {}
  bool TraverseMaxFieldAlignmentAttr(MaxFieldAlignmentAttr *A);
  bool VisitMaxFieldAlignmentAttr(MaxFieldAlignmentAttr *A) {}
  bool TraverseMayAliasAttr(MayAliasAttr *A);
  bool VisitMayAliasAttr(MayAliasAttr *A) {}
  bool TraverseMaybeUndefAttr(MaybeUndefAttr *A);
  bool VisitMaybeUndefAttr(MaybeUndefAttr *A) {}
  bool TraverseMicroMipsAttr(MicroMipsAttr *A);
  bool VisitMicroMipsAttr(MicroMipsAttr *A) {}
  bool TraverseMinSizeAttr(MinSizeAttr *A);
  bool VisitMinSizeAttr(MinSizeAttr *A) {}
  bool TraverseMinVectorWidthAttr(MinVectorWidthAttr *A);
  bool VisitMinVectorWidthAttr(MinVectorWidthAttr *A) {}
  bool TraverseMips16Attr(Mips16Attr *A);
  bool VisitMips16Attr(Mips16Attr *A) {}
  bool TraverseMipsInterruptAttr(MipsInterruptAttr *A);
  bool VisitMipsInterruptAttr(MipsInterruptAttr *A) {}
  bool TraverseMipsLongCallAttr(MipsLongCallAttr *A);
  bool VisitMipsLongCallAttr(MipsLongCallAttr *A) {}
  bool TraverseMipsShortCallAttr(MipsShortCallAttr *A);
  bool VisitMipsShortCallAttr(MipsShortCallAttr *A) {}
  bool TraverseModeAttr(ModeAttr *A);
  bool VisitModeAttr(ModeAttr *A) {}
  bool TraverseMustTailAttr(MustTailAttr *A);
  bool VisitMustTailAttr(MustTailAttr *A) {}
  bool TraverseNSConsumedAttr(NSConsumedAttr *A);
  bool VisitNSConsumedAttr(NSConsumedAttr *A) {}
  bool TraverseNSConsumesSelfAttr(NSConsumesSelfAttr *A);
  bool VisitNSConsumesSelfAttr(NSConsumesSelfAttr *A) {}
  bool TraverseNSErrorDomainAttr(NSErrorDomainAttr *A);
  bool VisitNSErrorDomainAttr(NSErrorDomainAttr *A) {}
  bool TraverseNSReturnsAutoreleasedAttr(NSReturnsAutoreleasedAttr *A);
  bool VisitNSReturnsAutoreleasedAttr(NSReturnsAutoreleasedAttr *A) {}
  bool TraverseNSReturnsNotRetainedAttr(NSReturnsNotRetainedAttr *A);
  bool VisitNSReturnsNotRetainedAttr(NSReturnsNotRetainedAttr *A) {}
  bool TraverseNSReturnsRetainedAttr(NSReturnsRetainedAttr *A);
  bool VisitNSReturnsRetainedAttr(NSReturnsRetainedAttr *A) {}
  bool TraverseNVPTXKernelAttr(NVPTXKernelAttr *A);
  bool VisitNVPTXKernelAttr(NVPTXKernelAttr *A) {}
  bool TraverseNakedAttr(NakedAttr *A);
  bool VisitNakedAttr(NakedAttr *A) {}
  bool TraverseNoAliasAttr(NoAliasAttr *A);
  bool VisitNoAliasAttr(NoAliasAttr *A) {}
  bool TraverseNoBuiltinAttr(NoBuiltinAttr *A);
  bool VisitNoBuiltinAttr(NoBuiltinAttr *A) {}
  bool TraverseNoCommonAttr(NoCommonAttr *A);
  bool VisitNoCommonAttr(NoCommonAttr *A) {}
  bool TraverseNoConvergentAttr(NoConvergentAttr *A);
  bool VisitNoConvergentAttr(NoConvergentAttr *A) {}
  bool TraverseNoDebugAttr(NoDebugAttr *