#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 *A);
bool VisitNoDebugAttr(NoDebugAttr *A) { … }
bool TraverseNoDerefAttr(NoDerefAttr *A);
bool VisitNoDerefAttr(NoDerefAttr *A) { … }
bool TraverseNoDestroyAttr(NoDestroyAttr *A);
bool VisitNoDestroyAttr(NoDestroyAttr *A) { … }
bool TraverseNoDuplicateAttr(NoDuplicateAttr *A);
bool VisitNoDuplicateAttr(NoDuplicateAttr *A) { … }
bool TraverseNoEscapeAttr(NoEscapeAttr *A);
bool VisitNoEscapeAttr(NoEscapeAttr *A) { … }
bool TraverseNoInlineAttr(NoInlineAttr *A);
bool VisitNoInlineAttr(NoInlineAttr *A) { … }
bool TraverseNoInstrumentFunctionAttr(NoInstrumentFunctionAttr *A);
bool VisitNoInstrumentFunctionAttr(NoInstrumentFunctionAttr *A) { … }
bool TraverseNoMergeAttr(NoMergeAttr *A);
bool VisitNoMergeAttr(NoMergeAttr *A) { … }
bool TraverseNoMicroMipsAttr(NoMicroMipsAttr *A);
bool VisitNoMicroMipsAttr(NoMicroMipsAttr *A) { … }
bool TraverseNoMips16Attr(NoMips16Attr *A);
bool VisitNoMips16Attr(NoMips16Attr *A) { … }
bool TraverseNoProfileFunctionAttr(NoProfileFunctionAttr *A);
bool VisitNoProfileFunctionAttr(NoProfileFunctionAttr *A) { … }
bool TraverseNoRandomizeLayoutAttr(NoRandomizeLayoutAttr *A);
bool VisitNoRandomizeLayoutAttr(NoRandomizeLayoutAttr *A) { … }
bool TraverseNoReturnAttr(NoReturnAttr *A);
bool VisitNoReturnAttr(NoReturnAttr *A) { … }
bool TraverseNoSanitizeAttr(NoSanitizeAttr *A);
bool VisitNoSanitizeAttr(NoSanitizeAttr *A) { … }
bool TraverseNoSpeculativeLoadHardeningAttr(NoSpeculativeLoadHardeningAttr *A);
bool VisitNoSpeculativeLoadHardeningAttr(NoSpeculativeLoadHardeningAttr *A) { … }
bool TraverseNoSplitStackAttr(NoSplitStackAttr *A);
bool VisitNoSplitStackAttr(NoSplitStackAttr *A) { … }
bool TraverseNoStackProtectorAttr(NoStackProtectorAttr *A);
bool VisitNoStackProtectorAttr(NoStackProtectorAttr *A) { … }
bool TraverseNoThreadSafetyAnalysisAttr(NoThreadSafetyAnalysisAttr *A);
bool VisitNoThreadSafetyAnalysisAttr(NoThreadSafetyAnalysisAttr *A) { … }
bool TraverseNoThrowAttr(NoThrowAttr *A);
bool VisitNoThrowAttr(NoThrowAttr *A) { … }
bool TraverseNoUniqueAddressAttr(NoUniqueAddressAttr *A);
bool VisitNoUniqueAddressAttr(NoUniqueAddressAttr *A) { … }
bool TraverseNoUwtableAttr(NoUwtableAttr *A);
bool VisitNoUwtableAttr(NoUwtableAttr *A) { … }
bool TraverseNonAllocatingAttr(NonAllocatingAttr *A);
bool VisitNonAllocatingAttr(NonAllocatingAttr *A) { … }
bool TraverseNonBlockingAttr(NonBlockingAttr *A);
bool VisitNonBlockingAttr(NonBlockingAttr *A) { … }
bool TraverseNonNullAttr(NonNullAttr *A);
bool VisitNonNullAttr(NonNullAttr *A) { … }
bool TraverseNotTailCalledAttr(NotTailCalledAttr *A);
bool VisitNotTailCalledAttr(NotTailCalledAttr *A) { … }
bool TraverseOMPAllocateDeclAttr(OMPAllocateDeclAttr *A);
bool VisitOMPAllocateDeclAttr(OMPAllocateDeclAttr *A) { … }
bool TraverseOMPAssumeAttr(OMPAssumeAttr *A);
bool VisitOMPAssumeAttr(OMPAssumeAttr *A) { … }
bool TraverseOMPCaptureKindAttr(OMPCaptureKindAttr *A);
bool VisitOMPCaptureKindAttr(OMPCaptureKindAttr *A) { … }
bool TraverseOMPCaptureNoInitAttr(OMPCaptureNoInitAttr *A);
bool VisitOMPCaptureNoInitAttr(OMPCaptureNoInitAttr *A) { … }
bool TraverseOMPDeclareSimdDeclAttr(OMPDeclareSimdDeclAttr *A);
bool VisitOMPDeclareSimdDeclAttr(OMPDeclareSimdDeclAttr *A) { … }
bool TraverseOMPDeclareTargetDeclAttr(OMPDeclareTargetDeclAttr *A);
bool VisitOMPDeclareTargetDeclAttr(OMPDeclareTargetDeclAttr *A) { … }
bool TraverseOMPDeclareVariantAttr(OMPDeclareVariantAttr *A);
bool VisitOMPDeclareVariantAttr(OMPDeclareVariantAttr *A) { … }
bool TraverseOMPReferencedVarAttr(OMPReferencedVarAttr *A);
bool VisitOMPReferencedVarAttr(OMPReferencedVarAttr *A) { … }
bool TraverseOMPThreadPrivateDeclAttr(OMPThreadPrivateDeclAttr *A);
bool VisitOMPThreadPrivateDeclAttr(OMPThreadPrivateDeclAttr *A) { … }
bool TraverseOSConsumedAttr(OSConsumedAttr *A);
bool VisitOSConsumedAttr(OSConsumedAttr *A) { … }
bool TraverseOSConsumesThisAttr(OSConsumesThisAttr *A);
bool VisitOSConsumesThisAttr(OSConsumesThisAttr *A) { … }
bool TraverseOSReturnsNotRetainedAttr(OSReturnsNotRetainedAttr *A);
bool VisitOSReturnsNotRetainedAttr(OSReturnsNotRetainedAttr *A) { … }
bool TraverseOSReturnsRetainedAttr(OSReturnsRetainedAttr *A);
bool VisitOSReturnsRetainedAttr(OSReturnsRetainedAttr *A) { … }
bool TraverseOSReturnsRetainedOnNonZeroAttr(OSReturnsRetainedOnNonZeroAttr *A);
bool VisitOSReturnsRetainedOnNonZeroAttr(OSReturnsRetainedOnNonZeroAttr *A) { … }
bool TraverseOSReturnsRetainedOnZeroAttr(OSReturnsRetainedOnZeroAttr *A);
bool VisitOSReturnsRetainedOnZeroAttr(OSReturnsRetainedOnZeroAttr *A) { … }
bool TraverseObjCBoxableAttr(ObjCBoxableAttr *A);
bool VisitObjCBoxableAttr(ObjCBoxableAttr *A) { … }
bool TraverseObjCBridgeAttr(ObjCBridgeAttr *A);
bool VisitObjCBridgeAttr(ObjCBridgeAttr *A) { … }
bool TraverseObjCBridgeMutableAttr(ObjCBridgeMutableAttr *A);
bool VisitObjCBridgeMutableAttr(ObjCBridgeMutableAttr *A) { … }
bool TraverseObjCBridgeRelatedAttr(ObjCBridgeRelatedAttr *A);
bool VisitObjCBridgeRelatedAttr(ObjCBridgeRelatedAttr *A) { … }
bool TraverseObjCClassStubAttr(ObjCClassStubAttr *A);
bool VisitObjCClassStubAttr(ObjCClassStubAttr *A) { … }
bool TraverseObjCDesignatedInitializerAttr(ObjCDesignatedInitializerAttr *A);
bool VisitObjCDesignatedInitializerAttr(ObjCDesignatedInitializerAttr *A) { … }
bool TraverseObjCDirectAttr(ObjCDirectAttr *A);
bool VisitObjCDirectAttr(ObjCDirectAttr *A) { … }
bool TraverseObjCDirectMembersAttr(ObjCDirectMembersAttr *A);
bool VisitObjCDirectMembersAttr(ObjCDirectMembersAttr *A) { … }
bool TraverseObjCExceptionAttr(ObjCExceptionAttr *A);
bool VisitObjCExceptionAttr(ObjCExceptionAttr *A) { … }
bool TraverseObjCExplicitProtocolImplAttr(ObjCExplicitProtocolImplAttr *A);
bool VisitObjCExplicitProtocolImplAttr(ObjCExplicitProtocolImplAttr *A) { … }
bool TraverseObjCExternallyRetainedAttr(ObjCExternallyRetainedAttr *A);
bool VisitObjCExternallyRetainedAttr(ObjCExternallyRetainedAttr *A) { … }
bool TraverseObjCGCAttr(ObjCGCAttr *A);
bool VisitObjCGCAttr(ObjCGCAttr *A) { … }
bool TraverseObjCIndependentClassAttr(ObjCIndependentClassAttr *A);
bool VisitObjCIndependentClassAttr(ObjCIndependentClassAttr *A) { … }
bool TraverseObjCInertUnsafeUnretainedAttr(ObjCInertUnsafeUnretainedAttr *A);
bool VisitObjCInertUnsafeUnretainedAttr(ObjCInertUnsafeUnretainedAttr *A) { … }
bool TraverseObjCKindOfAttr(ObjCKindOfAttr *A);
bool VisitObjCKindOfAttr(ObjCKindOfAttr *A) { … }
bool TraverseObjCMethodFamilyAttr(ObjCMethodFamilyAttr *A);
bool VisitObjCMethodFamilyAttr(ObjCMethodFamilyAttr *A) { … }
bool TraverseObjCNSObjectAttr(ObjCNSObjectAttr *A);
bool VisitObjCNSObjectAttr(ObjCNSObjectAttr *A) { … }
bool TraverseObjCNonLazyClassAttr(ObjCNonLazyClassAttr *A);
bool VisitObjCNonLazyClassAttr(ObjCNonLazyClassAttr *A) { … }
bool TraverseObjCNonRuntimeProtocolAttr(ObjCNonRuntimeProtocolAttr *A);
bool VisitObjCNonRuntimeProtocolAttr(ObjCNonRuntimeProtocolAttr *A) { … }
bool TraverseObjCOwnershipAttr(ObjCOwnershipAttr *A);
bool VisitObjCOwnershipAttr(ObjCOwnershipAttr *A) { … }
bool TraverseObjCPreciseLifetimeAttr(ObjCPreciseLifetimeAttr *A);
bool VisitObjCPreciseLifetimeAttr(ObjCPreciseLifetimeAttr *A) { … }
bool TraverseObjCRequiresPropertyDefsAttr(ObjCRequiresPropertyDefsAttr *A);
bool VisitObjCRequiresPropertyDefsAttr(ObjCRequiresPropertyDefsAttr *A) { … }
bool TraverseObjCRequiresSuperAttr(ObjCRequiresSuperAttr *A);
bool VisitObjCRequiresSuperAttr(ObjCRequiresSuperAttr *A) { … }
bool TraverseObjCReturnsInnerPointerAttr(ObjCReturnsInnerPointerAttr *A);
bool VisitObjCReturnsInnerPointerAttr(ObjCReturnsInnerPointerAttr *A) { … }
bool TraverseObjCRootClassAttr(ObjCRootClassAttr *A);
bool VisitObjCRootClassAttr(ObjCRootClassAttr *A) { … }
bool TraverseObjCRuntimeNameAttr(ObjCRuntimeNameAttr *A);
bool VisitObjCRuntimeNameAttr(ObjCRuntimeNameAttr *A) { … }
bool TraverseObjCRuntimeVisibleAttr(ObjCRuntimeVisibleAttr *A);
bool VisitObjCRuntimeVisibleAttr(ObjCRuntimeVisibleAttr *A) { … }
bool TraverseObjCSubclassingRestrictedAttr(ObjCSubclassingRestrictedAttr *A);
bool VisitObjCSubclassingRestrictedAttr(ObjCSubclassingRestrictedAttr *A) { … }
bool TraverseOpenCLAccessAttr(OpenCLAccessAttr *A);
bool VisitOpenCLAccessAttr(OpenCLAccessAttr *A) { … }
bool TraverseOpenCLConstantAddressSpaceAttr(OpenCLConstantAddressSpaceAttr *A);
bool VisitOpenCLConstantAddressSpaceAttr(OpenCLConstantAddressSpaceAttr *A) { … }
bool TraverseOpenCLGenericAddressSpaceAttr(OpenCLGenericAddressSpaceAttr *A);
bool VisitOpenCLGenericAddressSpaceAttr(OpenCLGenericAddressSpaceAttr *A) { … }
bool TraverseOpenCLGlobalAddressSpaceAttr(OpenCLGlobalAddressSpaceAttr *A);
bool VisitOpenCLGlobalAddressSpaceAttr(OpenCLGlobalAddressSpaceAttr *A) { … }
bool TraverseOpenCLGlobalDeviceAddressSpaceAttr(OpenCLGlobalDeviceAddressSpaceAttr *A);
bool VisitOpenCLGlobalDeviceAddressSpaceAttr(OpenCLGlobalDeviceAddressSpaceAttr *A) { … }
bool TraverseOpenCLGlobalHostAddressSpaceAttr(OpenCLGlobalHostAddressSpaceAttr *A);
bool VisitOpenCLGlobalHostAddressSpaceAttr(OpenCLGlobalHostAddressSpaceAttr *A) { … }
bool TraverseOpenCLIntelReqdSubGroupSizeAttr(OpenCLIntelReqdSubGroupSizeAttr *A);
bool VisitOpenCLIntelReqdSubGroupSizeAttr(OpenCLIntelReqdSubGroupSizeAttr *A) { … }
bool TraverseOpenCLKernelAttr(OpenCLKernelAttr *A);
bool VisitOpenCLKernelAttr(OpenCLKernelAttr *A) { … }
bool TraverseOpenCLLocalAddressSpaceAttr(OpenCLLocalAddressSpaceAttr *A);
bool VisitOpenCLLocalAddressSpaceAttr(OpenCLLocalAddressSpaceAttr *A) { … }
bool TraverseOpenCLPrivateAddressSpaceAttr(OpenCLPrivateAddressSpaceAttr *A);
bool VisitOpenCLPrivateAddressSpaceAttr(OpenCLPrivateAddressSpaceAttr *A) { … }
bool TraverseOpenCLUnrollHintAttr(OpenCLUnrollHintAttr *A);
bool VisitOpenCLUnrollHintAttr(OpenCLUnrollHintAttr *A) { … }
bool TraverseOptimizeNoneAttr(OptimizeNoneAttr *A);
bool VisitOptimizeNoneAttr(OptimizeNoneAttr *A) { … }
bool TraverseOverloadableAttr(OverloadableAttr *A);
bool VisitOverloadableAttr(OverloadableAttr *A) { … }
bool TraverseOverrideAttr(OverrideAttr *A);
bool VisitOverrideAttr(OverrideAttr *A) { … }
bool TraverseOwnerAttr(OwnerAttr *A);
bool VisitOwnerAttr(OwnerAttr *A) { … }
bool TraverseOwnershipAttr(OwnershipAttr *A);
bool VisitOwnershipAttr(OwnershipAttr *A) { … }
bool TraversePackedAttr(PackedAttr *A);
bool VisitPackedAttr(PackedAttr *A) { … }
bool TraverseParamTypestateAttr(ParamTypestateAttr *A);
bool VisitParamTypestateAttr(ParamTypestateAttr *A) { … }
bool TraversePascalAttr(PascalAttr *A);
bool VisitPascalAttr(PascalAttr *A) { … }
bool TraversePassObjectSizeAttr(PassObjectSizeAttr *A);
bool VisitPassObjectSizeAttr(PassObjectSizeAttr *A) { … }
bool TraversePatchableFunctionEntryAttr(PatchableFunctionEntryAttr *A);
bool VisitPatchableFunctionEntryAttr(PatchableFunctionEntryAttr *A) { … }
bool TraversePcsAttr(PcsAttr *A);
bool VisitPcsAttr(PcsAttr *A) { … }
bool TraversePointerAttr(PointerAttr *A);
bool VisitPointerAttr(PointerAttr *A) { … }
bool TraversePragmaClangBSSSectionAttr(PragmaClangBSSSectionAttr *A);
bool VisitPragmaClangBSSSectionAttr(PragmaClangBSSSectionAttr *A) { … }
bool TraversePragmaClangDataSectionAttr(PragmaClangDataSectionAttr *A);
bool VisitPragmaClangDataSectionAttr(PragmaClangDataSectionAttr *A) { … }
bool TraversePragmaClangRelroSectionAttr(PragmaClangRelroSectionAttr *A);
bool VisitPragmaClangRelroSectionAttr(PragmaClangRelroSectionAttr *A) { … }
bool TraversePragmaClangRodataSectionAttr(PragmaClangRodataSectionAttr *A);
bool VisitPragmaClangRodataSectionAttr(PragmaClangRodataSectionAttr *A) { … }
bool TraversePragmaClangTextSectionAttr(PragmaClangTextSectionAttr *A);
bool VisitPragmaClangTextSectionAttr(PragmaClangTextSectionAttr *A) { … }
bool TraversePreferredNameAttr(PreferredNameAttr *A);
bool VisitPreferredNameAttr(PreferredNameAttr *A) { … }
bool TraversePreferredTypeAttr(PreferredTypeAttr *A);
bool VisitPreferredTypeAttr(PreferredTypeAttr *A) { … }
bool TraversePreserveAllAttr(PreserveAllAttr *A);
bool VisitPreserveAllAttr(PreserveAllAttr *A) { … }
bool TraversePreserveMostAttr(PreserveMostAttr *A);
bool VisitPreserveMostAttr(PreserveMostAttr *A) { … }
bool TraversePreserveNoneAttr(PreserveNoneAttr *A);
bool VisitPreserveNoneAttr(PreserveNoneAttr *A) { … }
bool TraversePtGuardedByAttr(PtGuardedByAttr *A);
bool VisitPtGuardedByAttr(PtGuardedByAttr *A) { … }
bool TraversePtGuardedVarAttr(PtGuardedVarAttr *A);
bool VisitPtGuardedVarAttr(PtGuardedVarAttr *A) { … }
bool TraversePtr32Attr(Ptr32Attr *A);
bool VisitPtr32Attr(Ptr32Attr *A) { … }
bool TraversePtr64Attr(Ptr64Attr *A);
bool VisitPtr64Attr(Ptr64Attr *A) { … }
bool TraversePureAttr(PureAttr *A);
bool VisitPureAttr(PureAttr *A) { … }
bool TraverseRISCVInterruptAttr(RISCVInterruptAttr *A);
bool VisitRISCVInterruptAttr(RISCVInterruptAttr *A) { … }
bool TraverseRISCVVectorCCAttr(RISCVVectorCCAttr *A);
bool VisitRISCVVectorCCAttr(RISCVVectorCCAttr *A) { … }
bool TraverseRandomizeLayoutAttr(RandomizeLayoutAttr *A);
bool VisitRandomizeLayoutAttr(RandomizeLayoutAttr *A) { … }
bool TraverseReadOnlyPlacementAttr(ReadOnlyPlacementAttr *A);
bool VisitReadOnlyPlacementAttr(ReadOnlyPlacementAttr *A) { … }
bool TraverseRegCallAttr(RegCallAttr *A);
bool VisitRegCallAttr(RegCallAttr *A) { … }
bool TraverseReinitializesAttr(ReinitializesAttr *A);
bool VisitReinitializesAttr(ReinitializesAttr *A) { … }
bool TraverseReleaseCapabilityAttr(ReleaseCapabilityAttr *A);
bool VisitReleaseCapabilityAttr(ReleaseCapabilityAttr *A) { … }
bool TraverseReleaseHandleAttr(ReleaseHandleAttr *A);
bool VisitReleaseHandleAttr(ReleaseHandleAttr *A) { … }
bool TraverseRenderScriptKernelAttr(RenderScriptKernelAttr *A);
bool VisitRenderScriptKernelAttr(RenderScriptKernelAttr *A) { … }
bool TraverseReqdWorkGroupSizeAttr(ReqdWorkGroupSizeAttr *A);
bool VisitReqdWorkGroupSizeAttr(ReqdWorkGroupSizeAttr *A) { … }
bool TraverseRequiresCapabilityAttr(RequiresCapabilityAttr *A);
bool VisitRequiresCapabilityAttr(RequiresCapabilityAttr *A) { … }
bool TraverseRestrictAttr(RestrictAttr *A);
bool VisitRestrictAttr(RestrictAttr *A) { … }
bool TraverseRetainAttr(RetainAttr *A);
bool VisitRetainAttr(RetainAttr *A) { … }
bool TraverseReturnTypestateAttr(ReturnTypestateAttr *A);
bool VisitReturnTypestateAttr(ReturnTypestateAttr *A) { … }
bool TraverseReturnsNonNullAttr(ReturnsNonNullAttr *A);
bool VisitReturnsNonNullAttr(ReturnsNonNullAttr *A) { … }
bool TraverseReturnsTwiceAttr(ReturnsTwiceAttr *A);
bool VisitReturnsTwiceAttr(ReturnsTwiceAttr *A) { … }
bool TraverseSPtrAttr(SPtrAttr *A);
bool VisitSPtrAttr(SPtrAttr *A) { … }
bool TraverseSYCLKernelAttr(SYCLKernelAttr *A);
bool VisitSYCLKernelAttr(SYCLKernelAttr *A) { … }
bool TraverseSYCLSpecialClassAttr(SYCLSpecialClassAttr *A);
bool VisitSYCLSpecialClassAttr(SYCLSpecialClassAttr *A) { … }
bool TraverseScopedLockableAttr(ScopedLockableAttr *A);
bool VisitScopedLockableAttr(ScopedLockableAttr *A) { … }
bool TraverseSectionAttr(SectionAttr *A);
bool VisitSectionAttr(SectionAttr *A) { … }
bool TraverseSelectAnyAttr(SelectAnyAttr *A);
bool VisitSelectAnyAttr(SelectAnyAttr *A) { … }
bool TraverseSentinelAttr(SentinelAttr *A);
bool VisitSentinelAttr(SentinelAttr *A) { … }
bool TraverseSetTypestateAttr(SetTypestateAttr *A);
bool VisitSetTypestateAttr(SetTypestateAttr *A) { … }
bool TraverseSharedTrylockFunctionAttr(SharedTrylockFunctionAttr *A);
bool VisitSharedTrylockFunctionAttr(SharedTrylockFunctionAttr *A) { … }
bool TraverseSizedByAttr(SizedByAttr *A);
bool VisitSizedByAttr(SizedByAttr *A) { … }
bool TraverseSizedByOrNullAttr(SizedByOrNullAttr *A);
bool VisitSizedByOrNullAttr(SizedByOrNullAttr *A) { … }
bool TraverseSpeculativeLoadHardeningAttr(SpeculativeLoadHardeningAttr *A);
bool VisitSpeculativeLoadHardeningAttr(SpeculativeLoadHardeningAttr *A) { … }
bool TraverseStandaloneDebugAttr(StandaloneDebugAttr *A);
bool VisitStandaloneDebugAttr(StandaloneDebugAttr *A) { … }
bool TraverseStdCallAttr(StdCallAttr *A);
bool VisitStdCallAttr(StdCallAttr *A) { … }
bool TraverseStrictFPAttr(StrictFPAttr *A);
bool VisitStrictFPAttr(StrictFPAttr *A) { … }
bool TraverseStrictGuardStackCheckAttr(StrictGuardStackCheckAttr *A);
bool VisitStrictGuardStackCheckAttr(StrictGuardStackCheckAttr *A) { … }
bool TraverseSuppressAttr(SuppressAttr *A);
bool VisitSuppressAttr(SuppressAttr *A) { … }
bool TraverseSwiftAsyncAttr(SwiftAsyncAttr *A);
bool VisitSwiftAsyncAttr(SwiftAsyncAttr *A) { … }
bool TraverseSwiftAsyncCallAttr(SwiftAsyncCallAttr *A);
bool VisitSwiftAsyncCallAttr(SwiftAsyncCallAttr *A) { … }
bool TraverseSwiftAsyncContextAttr(SwiftAsyncContextAttr *A);
bool VisitSwiftAsyncContextAttr(SwiftAsyncContextAttr *A) { … }
bool TraverseSwiftAsyncErrorAttr(SwiftAsyncErrorAttr *A);
bool VisitSwiftAsyncErrorAttr(SwiftAsyncErrorAttr *A) { … }
bool TraverseSwiftAsyncNameAttr(SwiftAsyncNameAttr *A);
bool VisitSwiftAsyncNameAttr(SwiftAsyncNameAttr *A) { … }
bool TraverseSwiftAttrAttr(SwiftAttrAttr *A);
bool VisitSwiftAttrAttr(SwiftAttrAttr *A) { … }
bool TraverseSwiftBridgeAttr(SwiftBridgeAttr *A);
bool VisitSwiftBridgeAttr(SwiftBridgeAttr *A) { … }
bool TraverseSwiftBridgedTypedefAttr(SwiftBridgedTypedefAttr *A);
bool VisitSwiftBridgedTypedefAttr(SwiftBridgedTypedefAttr *A) { … }
bool TraverseSwiftCallAttr(SwiftCallAttr *A);
bool VisitSwiftCallAttr(SwiftCallAttr *A) { … }
bool TraverseSwiftContextAttr(SwiftContextAttr *A);
bool VisitSwiftContextAttr(SwiftContextAttr *A) { … }
bool TraverseSwiftErrorAttr(SwiftErrorAttr *A);
bool VisitSwiftErrorAttr(SwiftErrorAttr *A) { … }
bool TraverseSwiftErrorResultAttr(SwiftErrorResultAttr *A);
bool VisitSwiftErrorResultAttr(SwiftErrorResultAttr *A) { … }
bool TraverseSwiftImportAsNonGenericAttr(SwiftImportAsNonGenericAttr *A);
bool VisitSwiftImportAsNonGenericAttr(SwiftImportAsNonGenericAttr *A) { … }
bool TraverseSwiftImportPropertyAsAccessorsAttr(SwiftImportPropertyAsAccessorsAttr *A);
bool VisitSwiftImportPropertyAsAccessorsAttr(SwiftImportPropertyAsAccessorsAttr *A) { … }
bool TraverseSwiftIndirectResultAttr(SwiftIndirectResultAttr *A);
bool VisitSwiftIndirectResultAttr(SwiftIndirectResultAttr *A) { … }
bool TraverseSwiftNameAttr(SwiftNameAttr *A);
bool VisitSwiftNameAttr(SwiftNameAttr *A) { … }
bool TraverseSwiftNewTypeAttr(SwiftNewTypeAttr *A);
bool VisitSwiftNewTypeAttr(SwiftNewTypeAttr *A) { … }
bool TraverseSwiftObjCMembersAttr(SwiftObjCMembersAttr *A);
bool VisitSwiftObjCMembersAttr(SwiftObjCMembersAttr *A) { … }
bool TraverseSwiftPrivateAttr(SwiftPrivateAttr *A);
bool VisitSwiftPrivateAttr(SwiftPrivateAttr *A) { … }
bool TraverseSwiftVersionedAdditionAttr(SwiftVersionedAdditionAttr *A);
bool VisitSwiftVersionedAdditionAttr(SwiftVersionedAdditionAttr *A) { … }
bool TraverseSwiftVersionedRemovalAttr(SwiftVersionedRemovalAttr *A);
bool VisitSwiftVersionedRemovalAttr(SwiftVersionedRemovalAttr *A) { … }
bool TraverseSysVABIAttr(SysVABIAttr *A);
bool VisitSysVABIAttr(SysVABIAttr *A) { … }
bool TraverseTLSModelAttr(TLSModelAttr *A);
bool VisitTLSModelAttr(TLSModelAttr *A) { … }
bool TraverseTargetAttr(TargetAttr *A);
bool VisitTargetAttr(TargetAttr *A) { … }
bool TraverseTargetClonesAttr(TargetClonesAttr *A);
bool VisitTargetClonesAttr(TargetClonesAttr *A) { … }
bool TraverseTargetVersionAttr(TargetVersionAttr *A);
bool VisitTargetVersionAttr(TargetVersionAttr *A) { … }
bool TraverseTestTypestateAttr(TestTypestateAttr *A);
bool VisitTestTypestateAttr(TestTypestateAttr *A) { … }
bool TraverseThisCallAttr(ThisCallAttr *A);
bool VisitThisCallAttr(ThisCallAttr *A) { … }
bool TraverseThreadAttr(ThreadAttr *A);
bool VisitThreadAttr(ThreadAttr *A) { … }
bool TraverseTransparentUnionAttr(TransparentUnionAttr *A);
bool VisitTransparentUnionAttr(TransparentUnionAttr *A) { … }
bool TraverseTrivialABIAttr(TrivialABIAttr *A);
bool VisitTrivialABIAttr(TrivialABIAttr *A) { … }
bool TraverseTryAcquireCapabilityAttr(TryAcquireCapabilityAttr *A);
bool VisitTryAcquireCapabilityAttr(TryAcquireCapabilityAttr *A) { … }
bool TraverseTypeNonNullAttr(TypeNonNullAttr *A);
bool VisitTypeNonNullAttr(TypeNonNullAttr *A) { … }
bool TraverseTypeNullUnspecifiedAttr(TypeNullUnspecifiedAttr *A);
bool VisitTypeNullUnspecifiedAttr(TypeNullUnspecifiedAttr *A) { … }
bool TraverseTypeNullableAttr(TypeNullableAttr *A);
bool VisitTypeNullableAttr(TypeNullableAttr *A) { … }
bool TraverseTypeNullableResultAttr(TypeNullableResultAttr *A);
bool VisitTypeNullableResultAttr(TypeNullableResultAttr *A) { … }
bool TraverseTypeTagForDatatypeAttr(TypeTagForDatatypeAttr *A);
bool VisitTypeTagForDatatypeAttr(TypeTagForDatatypeAttr *A) { … }
bool TraverseTypeVisibilityAttr(TypeVisibilityAttr *A);
bool VisitTypeVisibilityAttr(TypeVisibilityAttr *A) { … }
bool TraverseUPtrAttr(UPtrAttr *A);
bool VisitUPtrAttr(UPtrAttr *A) { … }
bool TraverseUnavailableAttr(UnavailableAttr *A);
bool VisitUnavailableAttr(UnavailableAttr *A) { … }
bool TraverseUninitializedAttr(UninitializedAttr *A);
bool VisitUninitializedAttr(UninitializedAttr *A) { … }
bool TraverseUnlikelyAttr(UnlikelyAttr *A);
bool VisitUnlikelyAttr(UnlikelyAttr *A) { … }
bool TraverseUnsafeBufferUsageAttr(UnsafeBufferUsageAttr *A);
bool VisitUnsafeBufferUsageAttr(UnsafeBufferUsageAttr *A) { … }
bool TraverseUnusedAttr(UnusedAttr *A);
bool VisitUnusedAttr(UnusedAttr *A) { … }
bool TraverseUseHandleAttr(UseHandleAttr *A);
bool VisitUseHandleAttr(UseHandleAttr *A) { … }
bool TraverseUsedAttr(UsedAttr *A);
bool VisitUsedAttr(UsedAttr *A) { … }
bool TraverseUsingIfExistsAttr(UsingIfExistsAttr *A);
bool VisitUsingIfExistsAttr(UsingIfExistsAttr *A) { … }
bool TraverseUuidAttr(UuidAttr *A);
bool VisitUuidAttr(UuidAttr *A) { … }
bool TraverseVTablePointerAuthenticationAttr(VTablePointerAuthenticationAttr *A);
bool VisitVTablePointerAuthenticationAttr(VTablePointerAuthenticationAttr *A) { … }
bool TraverseVecReturnAttr(VecReturnAttr *A);
bool VisitVecReturnAttr(VecReturnAttr *A) { … }
bool TraverseVecTypeHintAttr(VecTypeHintAttr *A);
bool VisitVecTypeHintAttr(VecTypeHintAttr *A) { … }
bool TraverseVectorCallAttr(VectorCallAttr *A);
bool VisitVectorCallAttr(VectorCallAttr *A) { … }
bool TraverseVisibilityAttr(VisibilityAttr *A);
bool VisitVisibilityAttr(VisibilityAttr *A) { … }
bool TraverseWarnUnusedAttr(WarnUnusedAttr *A);
bool VisitWarnUnusedAttr(WarnUnusedAttr *A) { … }
bool TraverseWarnUnusedResultAttr(WarnUnusedResultAttr *A);
bool VisitWarnUnusedResultAttr(WarnUnusedResultAttr *A) { … }
bool TraverseWeakAttr(WeakAttr *A);
bool VisitWeakAttr(WeakAttr *A) { … }
bool TraverseWeakImportAttr(WeakImportAttr *A);
bool VisitWeakImportAttr(WeakImportAttr *A) { … }
bool TraverseWeakRefAttr(WeakRefAttr *A);
bool VisitWeakRefAttr(WeakRefAttr *A) { … }
bool TraverseWebAssemblyExportNameAttr(WebAssemblyExportNameAttr *A);
bool VisitWebAssemblyExportNameAttr(WebAssemblyExportNameAttr *A) { … }
bool TraverseWebAssemblyFuncrefAttr(WebAssemblyFuncrefAttr *A);
bool VisitWebAssemblyFuncrefAttr(WebAssemblyFuncrefAttr *A) { … }
bool TraverseWebAssemblyImportModuleAttr(WebAssemblyImportModuleAttr *A);
bool VisitWebAssemblyImportModuleAttr(WebAssemblyImportModuleAttr *A) { … }
bool TraverseWebAssemblyImportNameAttr(WebAssemblyImportNameAttr *A);
bool VisitWebAssemblyImportNameAttr(WebAssemblyImportNameAttr *A) { … }
bool TraverseWorkGroupSizeHintAttr(WorkGroupSizeHintAttr *A);
bool VisitWorkGroupSizeHintAttr(WorkGroupSizeHintAttr *A) { … }
bool TraverseX86ForceAlignArgPointerAttr(X86ForceAlignArgPointerAttr *A);
bool VisitX86ForceAlignArgPointerAttr(X86ForceAlignArgPointerAttr *A) { … }
bool TraverseXRayInstrumentAttr(XRayInstrumentAttr *A);
bool VisitXRayInstrumentAttr(XRayInstrumentAttr *A) { … }
bool TraverseXRayLogArgsAttr(XRayLogArgsAttr *A);
bool VisitXRayLogArgsAttr(XRayLogArgsAttr *A) { … }
bool TraverseZeroCallUsedRegsAttr(ZeroCallUsedRegsAttr *A);
bool VisitZeroCallUsedRegsAttr(ZeroCallUsedRegsAttr *A) { … }
#else
template <typename Derived>
bool VISITORCLASS<Derived>::TraverseAArch64SVEPcsAttr(AArch64SVEPcsAttr *A) { … }
if (!getDerived().VisitAttr(A))
return false;
if (!getDerived().VisitAArch64SVEPcsAttr(A))
return false;
return true;
}
template <typename Derived>
bool VISITORCLASS<Derived>::TraverseAArch64VectorPcsAttr(AArch64VectorPcsAttr *A) { … }
if (!getDerived().VisitAttr(A))
return false;
if (!getDerived().VisitAArch64VectorPcsAttr(A))
return false;
return true;
}
template <typename Derived>
bool VISITORCLASS<Derived>::TraverseAMDGPUFlatWorkGroupSizeAttr(AMDGPUFlatWorkGroupSizeAttr *A) { … }
if (!getDerived().VisitAttr(A))
return false;
if (!getDerived().VisitAMDGPUFlatWorkGroupSizeAttr(A))
return false;
if (!getDerived().TraverseStmt(A->getMin()))
return false;
if (!getDerived().TraverseStmt(A->getMax()))
return false;
return true;
}
template <typename Derived>
bool VISITORCLASS<Derived>::TraverseAMDGPUKernelCallAttr(AMDGPUKernelCallAttr *A) { … }
if (!getDerived().VisitAttr(A))
return false;
if (!getDerived().VisitAMDGPUKernelCallAttr(A))
return false;
return true;
}
template <typename Derived>
bool VISITORCLASS<Derived>::TraverseAMDGPUMaxNumWorkGroupsAttr(AMDGPUMaxNumWorkGroupsAttr *A) { … }
if (!getDerived().VisitAttr(A))
return false;
if (!getDerived().VisitAMDGPUMaxNumWorkGroupsAttr(A))
return false;
if (!getDerived().TraverseStmt(A->getMaxNumWorkGroupsX()))
return false;
if (!getDerived().TraverseStmt(A->getMaxNumWorkGroupsY()))
return false;
if (!getDerived().TraverseStmt(A->getMaxNumWorkGroupsZ()))
return false;
return true;
}
template <typename Derived>
bool VISITORCLASS<Derived>::TraverseAMDGPUNumSGPRAttr(AMDGPUNumSGPRAttr *A) { … }
if (!getDerived().VisitAttr(A))
return false;
if (!getDerived().VisitAMDGPUNumSGPRAttr(A))
return false;
return true;
}
template <typename Derived>
bool VISITORCLASS<Derived>::TraverseAMDGPUNumVGPRAttr(AMDGPUNumVGPRAttr *A) { … }
if (!getDerived().VisitAttr(A))
return false;
if (!getDerived().VisitAMDGPUNumVGPRAttr(A))
return false;
return true;
}
template <typename Derived>
bool VISITORCLASS<Derived>::TraverseAMDGPUWavesPerEUAttr(AMDGPUWavesPerEUAttr *A) { … }
if (!getDerived().VisitAttr(A))
return false;
if (!getDerived().VisitAMDGPUWavesPerEUAttr(A))
return false;
if (!getDerived().TraverseStmt(A->getMin()))
return false;
if (!getDerived().TraverseStmt(A->getMax()))
return false;
return true;
}
template <typename Derived>
bool VISITORCLASS<Derived>::TraverseARMInterruptAttr(ARMInterruptAttr *A) { … }
if (!getDerived().VisitAttr(A))
return false;
if (!getDerived().VisitARMInterruptAttr(A))
return false;
return true;
}
template <typename Derived>
bool VISITORCLASS<Derived>::TraverseAVRInterruptAttr(AVRInterruptAttr *A) { … }
if (!getDerived().VisitAttr(A))
return false;
if (!getDerived().VisitAVRInterruptAttr(A))
return false;
return true;
}
template <typename Derived>
bool VISITORCLASS<Derived>::TraverseAVRSignalAttr(AVRSignalAttr *A) { … }
if (!getDerived().VisitAttr(A))
return false;
if (!getDerived().VisitAVRSignalAttr(A))
return false;
return true;
}
template <typename Derived>
bool VISITORCLASS<Derived>::TraverseAbiTagAttr(AbiTagAttr *A) { … }
if (!getDerived().VisitAttr(A))
return false;
if (!getDerived().VisitAbiTagAttr(A))
return false;
return true;
}
template <typename Derived>
bool VISITORCLASS<Derived>::TraverseAcquireCapabilityAttr(AcquireCapabilityAttr *A) { … }
if (!getDerived().VisitAttr(A))
return false;
if (!getDerived().VisitAcquireCapabilityAttr(A))
return false;
{ … }
Expr * *I = …