#ifndef LLVM_CLANG_ATTR_CLASSES_INC
#define LLVM_CLANG_ATTR_CLASSES_INC
static inline void DelimitAttributeArgument(raw_ostream& OS, bool& IsFirst) { … }
class AArch64SVEPcsAttr : public InheritableAttr { … };
class AArch64VectorPcsAttr : public InheritableAttr { … };
class AMDGPUFlatWorkGroupSizeAttr : public InheritableAttr { … };
class AMDGPUKernelCallAttr : public InheritableAttr { … };
class AMDGPUMaxNumWorkGroupsAttr : public InheritableAttr { … };
class AMDGPUNumSGPRAttr : public InheritableAttr { … };
class AMDGPUNumVGPRAttr : public InheritableAttr { … };
class AMDGPUWavesPerEUAttr : public InheritableAttr { … };
class ARMInterruptAttr : public InheritableAttr { … };
class AVRInterruptAttr : public InheritableAttr { … };
class AVRSignalAttr : public InheritableAttr { … };
class AbiTagAttr : public Attr { … };
class AcquireCapabilityAttr : public InheritableAttr { … };
class AcquireHandleAttr : public InheritableAttr { … };
class AcquiredAfterAttr : public InheritableAttr { … };
class AcquiredBeforeAttr : public InheritableAttr { … };
class AddressSpaceAttr : public TypeAttr { … };
class AliasAttr : public Attr { … };
class AlignMac68kAttr : public InheritableAttr { … };
class AlignNaturalAttr : public InheritableAttr { … };
class AlignValueAttr : public Attr { … };
class AlignedAttr : public InheritableAttr { … };
class AllocAlignAttr : public InheritableAttr { … };
class AllocSizeAttr : public InheritableAttr { … };
class AllocatingAttr : public TypeAttr { … };
class AlwaysDestroyAttr : public InheritableAttr { … };
class AlwaysInlineAttr : public DeclOrStmtAttr { … };
class AnalyzerNoReturnAttr : public InheritableAttr { … };
class AnnotateAttr : public InheritableParamOrStmtAttr { … };
class AnnotateTypeAttr : public TypeAttr { … };
class AnyX86InterruptAttr : public InheritableAttr { … };
class AnyX86NoCallerSavedRegistersAttr : public InheritableAttr { … };
class AnyX86NoCfCheckAttr : public InheritableAttr { … };
class ArcWeakrefUnavailableAttr : public InheritableAttr { … };
class ArgumentWithTypeTagAttr : public InheritableAttr { … };
class ArmBuiltinAliasAttr : public InheritableAttr { … };
class ArmInAttr : public TypeAttr { … };
class ArmInOutAttr : public TypeAttr { … };
class ArmLocallyStreamingAttr : public InheritableAttr { … };
class ArmMveStrictPolymorphismAttr : public TypeAttr { … };
class ArmNewAttr : public InheritableAttr { … };
class ArmOutAttr : public TypeAttr { … };
class ArmPreservesAttr : public TypeAttr { … };
class ArmStreamingAttr : public TypeAttr { … };
class ArmStreamingCompatibleAttr : public TypeAttr { … };
class ArtificialAttr : public InheritableAttr { … };
class AsmLabelAttr : public InheritableAttr { … };
class AssertCapabilityAttr : public InheritableAttr { … };
class AssertExclusiveLockAttr : public InheritableAttr { … };
class AssertSharedLockAttr : public InheritableAttr { … };
class AssumeAlignedAttr : public InheritableAttr { … };
class AvailabilityAttr : public InheritableAttr { … };
class AvailableOnlyInDefaultEvalMethodAttr : public InheritableAttr { … };
class BPFFastCallAttr : public InheritableAttr { … };
class BPFPreserveAccessIndexAttr : public InheritableAttr { … };
class BPFPreserveStaticOffsetAttr : public InheritableAttr { … };
class BTFDeclTagAttr : public InheritableAttr { … };
class BTFTypeTagAttr : public TypeAttr { … };
class BlockingAttr : public TypeAttr { … };
class BlocksAttr : public InheritableAttr { … };
class BuiltinAttr : public InheritableAttr { … };
class BuiltinAliasAttr : public Attr { … };
class C11NoReturnAttr : public InheritableAttr { … };
class CDeclAttr : public InheritableAttr { … };
class CFAuditedTransferAttr : public InheritableAttr { … };
class CFConsumedAttr : public InheritableParamAttr { … };
class CFGuardAttr : public InheritableAttr { … };
class CFICanonicalJumpTableAttr : public InheritableAttr { … };
class CFReturnsNotRetainedAttr : public InheritableAttr { … };
class CFReturnsRetainedAttr : public InheritableAttr { … };
class CFUnknownTransferAttr : public InheritableAttr { … };
class CPUDispatchAttr : public InheritableAttr { … };
class CPUSpecificAttr : public InheritableAttr { … };
class CUDAConstantAttr : public InheritableAttr { … };
class CUDADeviceAttr : public InheritableAttr { … };
class CUDADeviceBuiltinSurfaceTypeAttr : public InheritableAttr { … };
class CUDADeviceBuiltinTextureTypeAttr : public InheritableAttr { … };
class CUDAGlobalAttr : public InheritableAttr { … };
class CUDAHostAttr : public InheritableAttr { … };
class CUDAInvalidTargetAttr : public InheritableAttr { … };
class CUDALaunchBoundsAttr : public InheritableAttr { … };
class CUDASharedAttr : public InheritableAttr { … };
class CXX11NoReturnAttr : public InheritableAttr { … };
class CXXAssumeAttr : public StmtAttr { … };
class CallableWhenAttr : public InheritableAttr { … };
class CallbackAttr : public InheritableAttr { … };
class CalledOnceAttr : public Attr { … };
class CapabilityAttr : public InheritableAttr { … };
class CapturedRecordAttr : public InheritableAttr { … };
class CarriesDependencyAttr : public InheritableParamAttr { … };
class CleanupAttr : public InheritableAttr { … };
class ClspvLibclcBuiltinAttr : public InheritableAttr { … };
class CmseNSCallAttr : public TypeAttr { … };
class CmseNSEntryAttr : public InheritableAttr { … };
class CodeAlignAttr : public StmtAttr { … };
class CodeModelAttr : public InheritableAttr { … };
class CodeSegAttr : public InheritableAttr { … };
class ColdAttr : public InheritableAttr { … };
class CommonAttr : public InheritableAttr { … };
class ConstAttr : public InheritableAttr { … };
class ConstInitAttr : public InheritableAttr { … };
class ConstructorAttr : public InheritableAttr { … };
class ConsumableAttr : public InheritableAttr { … };
class ConsumableAutoCastAttr : public InheritableAttr { … };
class ConsumableSetOnReadAttr : public InheritableAttr { … };
class ConvergentAttr : public InheritableAttr { … };
class CoroAwaitElidableAttr : public InheritableAttr { … };
class CoroAwaitElidableArgumentAttr : public InheritableAttr { … };
class CoroDisableLifetimeBoundAttr : public InheritableAttr { … };
class CoroLifetimeBoundAttr : public InheritableAttr { … };
class CoroOnlyDestroyWhenCompleteAttr : public InheritableAttr { … };
class CoroReturnTypeAttr : public InheritableAttr { … };
class CoroWrapperAttr : public InheritableAttr { … };
class CountedByAttr : public InheritableAttr { … };
class CountedByOrNullAttr : public InheritableAttr { … };
class DLLExportAttr : public InheritableAttr { … };
class DLLExportStaticLocalAttr : public InheritableAttr { … };
class DLLImportAttr : public InheritableAttr { … };
class DLLImportStaticLocalAttr : public InheritableAttr { … };
class DeprecatedAttr : public InheritableAttr { … };
class DestructorAttr : public InheritableAttr { … };
class DiagnoseAsBuiltinAttr : public InheritableAttr { … };
class DiagnoseIfAttr : public InheritableAttr { … };
class DisableSanitizerInstrumentationAttr : public InheritableAttr { … };
class DisableTailCallsAttr : public InheritableAttr { … };
class EmptyBasesAttr : public InheritableAttr { … };
class EnableIfAttr : public InheritableAttr { … };
class EnforceTCBAttr : public InheritableAttr { … };
class EnforceTCBLeafAttr : public InheritableAttr { … };
class EnumExtensibilityAttr : public InheritableAttr { … };
class ErrorAttr : public InheritableAttr { … };
class ExcludeFromExplicitInstantiationAttr : public InheritableAttr { … };
class ExclusiveTrylockFunctionAttr : public InheritableAttr { … };
class ExternalSourceSymbolAttr : public InheritableAttr { … };
class FallThroughAttr : public StmtAttr { … };
class FastCallAttr : public InheritableAttr { … };
class FinalAttr : public InheritableAttr { … };
class FlagEnumAttr : public InheritableAttr { … };
class FlattenAttr : public InheritableAttr { … };
class FormatAttr : public InheritableAttr { … };
class FormatArgAttr : public InheritableAttr { … };
class FunctionReturnThunksAttr : public InheritableAttr { … };
class GNUInlineAttr : public InheritableAttr { … };
class GuardedByAttr : public InheritableAttr { … };
class GuardedVarAttr : public InheritableAttr { … };
class HIPManagedAttr : public InheritableAttr { … };
class HLSLContainedTypeAttr : public TypeAttr { … };
class HLSLGroupSharedAddressSpaceAttr : public TypeAttr { … };
class HLSLLoopHintAttr : public StmtAttr { … };
class HLSLNumThreadsAttr : public InheritableAttr { … };
class HLSLPackOffsetAttr : public HLSLAnnotationAttr { … };
class HLSLParamModifierAttr : public ParameterABIAttr { … };
class HLSLROVAttr : public TypeAttr { … };
class HLSLRawBufferAttr : public TypeAttr { … };
class HLSLResourceAttr : public InheritableAttr { … };
class HLSLResourceBindingAttr : public InheritableAttr { … };
class HLSLResourceClassAttr : public TypeAttr { … };
class HLSLSV_DispatchThreadIDAttr : public HLSLAnnotationAttr { … };
class HLSLSV_GroupIndexAttr : public HLSLAnnotationAttr { … };
class HLSLShaderAttr : public InheritableAttr { … };
class HLSLWaveSizeAttr : public InheritableAttr { … };
class HotAttr : public InheritableAttr { … };
class HybridPatchableAttr : public InheritableAttr { … };
class IBActionAttr : public InheritableAttr { … };
class IBOutletAttr : public InheritableAttr { … };
class IBOutletCollectionAttr : public InheritableAttr { … };
class IFuncAttr : public Attr { … };
class InitPriorityAttr : public InheritableAttr { … };
class InitSegAttr : public Attr { … };
class IntelOclBiccAttr : public InheritableAttr { … };
class InternalLinkageAttr : public InheritableAttr { … };
class LTOVisibilityPublicAttr : public InheritableAttr { … };
class LayoutVersionAttr : public InheritableAttr { … };
class LeafAttr : public InheritableAttr { … };
class LifetimeBoundAttr : public InheritableAttr { … };
class LikelyAttr : public StmtAttr { … };
class LoaderUninitializedAttr : public Attr { … };
class LockReturnedAttr : public InheritableAttr { … };
class LocksExcludedAttr : public InheritableAttr { … };
class LoopHintAttr : public Attr { … };
class M68kInterruptAttr : public InheritableAttr { … };
class M68kRTDAttr : public InheritableAttr { … };
class MIGServerRoutineAttr : public InheritableAttr { … };
class MSABIAttr : public InheritableAttr { … };
class MSAllocatorAttr : public InheritableAttr { … };
class MSConstexprAttr : public InheritableAttr { … };
class MSInheritanceAttr : public InheritableAttr { … };
class MSNoVTableAttr : public InheritableAttr { … };
class MSP430InterruptAttr : public InheritableAttr { … };
class MSStructAttr : public InheritableAttr { … };
class MSVtorDispAttr : public InheritableAttr { … };
class MaxFieldAlignmentAttr : public InheritableAttr { … };
class MayAliasAttr : public InheritableAttr { … };
class MaybeUndefAttr : public InheritableAttr { … };
class MicroMipsAttr : public InheritableAttr { … };
class MinSizeAttr : public InheritableAttr { … };
class MinVectorWidthAttr : public InheritableAttr { … };
class Mips16Attr : public InheritableAttr { … };
class MipsInterruptAttr : public InheritableAttr { … };
class MipsLongCallAttr : public InheritableAttr { … };
class MipsShortCallAttr : public InheritableAttr { … };
class ModeAttr : public Attr { … };
class MustTailAttr : public StmtAttr { … };
class NSConsumedAttr : public InheritableParamAttr { … };
class NSConsumesSelfAttr : public InheritableAttr { … };
class NSErrorDomainAttr : public InheritableAttr { … };
class NSReturnsAutoreleasedAttr : public InheritableAttr { … };
class NSReturnsNotRetainedAttr : public InheritableAttr { … };
class NSReturnsRetainedAttr : public InheritableAttr { … };
class NVPTXKernelAttr : public InheritableAttr { … };
class NakedAttr : public InheritableAttr { … };
class NoAliasAttr : public InheritableAttr { … };
class NoBuiltinAttr : public Attr { … };
class NoCommonAttr : public InheritableAttr { … };
class NoConvergentAttr : public InheritableAttr { … };
class NoDebugAttr : public InheritableAttr { … };
class NoDerefAttr : public TypeAttr { … };
class NoDestroyAttr : public InheritableAttr { … };
class NoDuplicateAttr : public InheritableAttr { … };
class NoEscapeAttr : public Attr { … };
class NoInlineAttr : public DeclOrStmtAttr { … };
class NoInstrumentFunctionAttr : public InheritableAttr { … };
class NoMergeAttr : public DeclOrStmtAttr { … };
class NoMicroMipsAttr : public InheritableAttr { … };
class NoMips16Attr : public InheritableAttr { … };
class NoProfileFunctionAttr : public InheritableAttr { … };
class NoRandomizeLayoutAttr : public InheritableAttr { … };
class NoReturnAttr : public InheritableAttr { … };
class NoSanitizeAttr : public InheritableAttr { … };
class NoSpeculativeLoadHardeningAttr : public InheritableAttr { … };
class NoSplitStackAttr : public InheritableAttr { … };
class NoStackProtectorAttr : public InheritableAttr { … };
class NoThreadSafetyAnalysisAttr : public InheritableAttr { … };
class NoThrowAttr : public InheritableAttr { … };
class NoUniqueAddressAttr : public InheritableAttr { … };
class NoUwtableAttr : public InheritableAttr { … };
class NonAllocatingAttr : public TypeAttr { … };
class NonBlockingAttr : public TypeAttr { … };
class NonNullAttr : public InheritableParamAttr { … };
class NotTailCalledAttr : public InheritableAttr { … };
class OMPAllocateDeclAttr : public InheritableAttr { … };
class OMPAssumeAttr : public InheritableAttr { … };
class OMPCaptureKindAttr : public Attr { … };
class OMPCaptureNoInitAttr : public InheritableAttr { … };
class OMPDeclareSimdDeclAttr : public Attr { … };
class OMPDeclareTargetDeclAttr : public InheritableAttr { … };
class OMPDeclareVariantAttr : public InheritableAttr { … };
class OMPReferencedVarAttr : public Attr { … };
class OMPThreadPrivateDeclAttr : public InheritableAttr { … };
class OSConsumedAttr : public InheritableParamAttr { … };
class OSConsumesThisAttr : public InheritableAttr { … };
class OSReturnsNotRetainedAttr : public InheritableAttr { … };
class OSReturnsRetainedAttr : public InheritableAttr { … };
class OSReturnsRetainedOnNonZeroAttr : public InheritableAttr { … };
class OSReturnsRetainedOnZeroAttr : public InheritableAttr { … };
class ObjCBoxableAttr : public Attr { … };
class ObjCBridgeAttr : public InheritableAttr { … };
class ObjCBridgeMutableAttr : public InheritableAttr { … };
class ObjCBridgeRelatedAttr : public InheritableAttr { … };
class ObjCClassStubAttr : public Attr { … };
class ObjCDesignatedInitializerAttr : public Attr { … };
class ObjCDirectAttr : public Attr { … };
class ObjCDirectMembersAttr : public Attr { … };
class ObjCExceptionAttr : public InheritableAttr { … };
class ObjCExplicitProtocolImplAttr : public InheritableAttr { … };
class ObjCExternallyRetainedAttr : public InheritableAttr { … };
class ObjCGCAttr : public TypeAttr { … };
class ObjCIndependentClassAttr : public InheritableAttr { … };
class ObjCInertUnsafeUnretainedAttr : public TypeAttr { … };
class ObjCKindOfAttr : public TypeAttr { … };
class ObjCMethodFamilyAttr : public InheritableAttr { … };
class ObjCNSObjectAttr : public InheritableAttr { … };
class ObjCNonLazyClassAttr : public Attr { … };
class ObjCNonRuntimeProtocolAttr : public Attr { … };
class ObjCOwnershipAttr : public InheritableAttr { … };
class ObjCPreciseLifetimeAttr : public InheritableAttr { … };
class ObjCRequiresPropertyDefsAttr : public InheritableAttr { … };
class ObjCRequiresSuperAttr : public InheritableAttr { … };
class ObjCReturnsInnerPointerAttr : public InheritableAttr { … };
class ObjCRootClassAttr : public InheritableAttr { … };
class ObjCRuntimeNameAttr : public Attr { … };
class ObjCRuntimeVisibleAttr : public Attr { … };
class ObjCSubclassingRestrictedAttr : public InheritableAttr { … };
class OpenCLAccessAttr : public Attr { … };
class OpenCLConstantAddressSpaceAttr : public TypeAttr { … };
class OpenCLGenericAddressSpaceAttr : public TypeAttr { … };
class OpenCLGlobalAddressSpaceAttr : public TypeAttr { … };
class OpenCLGlobalDeviceAddressSpaceAttr : public TypeAttr { … };
class OpenCLGlobalHostAddressSpaceAttr : public TypeAttr { … };
class OpenCLIntelReqdSubGroupSizeAttr : public InheritableAttr { … };
class OpenCLKernelAttr : public InheritableAttr { … };
class OpenCLLocalAddressSpaceAttr : public TypeAttr { … };
class OpenCLPrivateAddressSpaceAttr : public TypeAttr { … };
class OpenCLUnrollHintAttr : public StmtAttr { … };
class OptimizeNoneAttr : public InheritableAttr { … };
class OverloadableAttr : public Attr { … };
class OverrideAttr : public InheritableAttr { … };
class OwnerAttr : public InheritableAttr { … };
class OwnershipAttr : public InheritableAttr { … };
class PackedAttr : public InheritableAttr { … };
class ParamTypestateAttr : public InheritableAttr { … };
class PascalAttr : public InheritableAttr { … };
class PassObjectSizeAttr : public InheritableParamAttr { … };
class PatchableFunctionEntryAttr : public InheritableAttr { … };
class PcsAttr : public InheritableAttr { … };
class PointerAttr : public InheritableAttr { … };
class PragmaClangBSSSectionAttr : public InheritableAttr { … };
class PragmaClangDataSectionAttr : public InheritableAttr { … };
class PragmaClangRelroSectionAttr : public InheritableAttr { … };
class PragmaClangRodataSectionAttr : public InheritableAttr { … };
class PragmaClangTextSectionAttr : public InheritableAttr { … };
class PreferredNameAttr : public InheritableAttr { … };
class PreferredTypeAttr : public InheritableAttr { … };
class PreserveAllAttr : public InheritableAttr { … };
class PreserveMostAttr : public InheritableAttr { … };
class PreserveNoneAttr : public InheritableAttr { … };
class PtGuardedByAttr : public InheritableAttr { … };
class PtGuardedVarAttr : public InheritableAttr { … };
class Ptr32Attr : public TypeAttr { … };
class Ptr64Attr : public TypeAttr { … };
class PureAttr : public InheritableAttr { … };
class RISCVInterruptAttr : public InheritableAttr { … };
class RISCVVectorCCAttr : public InheritableAttr { … };
class RandomizeLayoutAttr : public InheritableAttr { … };
class ReadOnlyPlacementAttr : public InheritableAttr { … };
class RegCallAttr : public InheritableAttr { … };
class ReinitializesAttr : public InheritableAttr { … };
class ReleaseCapabilityAttr : public InheritableAttr { … };
class ReleaseHandleAttr : public InheritableParamAttr { … };
class RenderScriptKernelAttr : public Attr { … };
class ReqdWorkGroupSizeAttr : public InheritableAttr { … };
class RequiresCapabilityAttr : public InheritableAttr { … };
class RestrictAttr : public InheritableAttr { … };
class RetainAttr : public InheritableAttr { … };
class ReturnTypestateAttr : public InheritableAttr { … };
class ReturnsNonNullAttr : public InheritableAttr { … };
class ReturnsTwiceAttr : public InheritableAttr { … };
class SPtrAttr : public TypeAttr { … };
class SYCLKernelAttr : public InheritableAttr { … };
class SYCLSpecialClassAttr : public InheritableAttr { … };
class ScopedLockableAttr : public InheritableAttr { … };
class SectionAttr : public InheritableAttr { … };
class SelectAnyAttr : public InheritableAttr { … };
class SentinelAttr : public InheritableAttr { … };
class SetTypestateAttr : public InheritableAttr { … };
class SharedTrylockFunctionAttr : public InheritableAttr { … };
class SizedByAttr : public InheritableAttr { … };
class SizedByOrNullAttr : public InheritableAttr { … };
class SpeculativeLoadHardeningAttr : public InheritableAttr { … };
class StandaloneDebugAttr : public InheritableAttr { … };
class StdCallAttr : public InheritableAttr { … };
class StrictFPAttr : public InheritableAttr { … };
class StrictGuardStackCheckAttr : public InheritableAttr { … };
class SuppressAttr : public DeclOrStmtAttr { … };
class SwiftAsyncAttr : public InheritableAttr { … };
class SwiftAsyncCallAttr : public InheritableAttr { … };
class SwiftAsyncContextAttr : public ParameterABIAttr { … };
class SwiftAsyncErrorAttr : public InheritableAttr { … };
class SwiftAsyncNameAttr : public InheritableAttr { … };
class SwiftAttrAttr : public InheritableAttr { … };
class SwiftBridgeAttr : public InheritableAttr { … };
class SwiftBridgedTypedefAttr : public InheritableAttr { … };
class SwiftCallAttr : public InheritableAttr { … };
class SwiftContextAttr : public ParameterABIAttr { … };
class SwiftErrorAttr : public InheritableAttr { … };
class SwiftErrorResultAttr : public ParameterABIAttr { … };
class SwiftImportAsNonGenericAttr : public InheritableAttr { … };
class SwiftImportPropertyAsAccessorsAttr : public InheritableAttr { … };
class SwiftIndirectResultAttr : public ParameterABIAttr { … };
class SwiftNameAttr : public InheritableAttr { … };
class SwiftNewTypeAttr : public InheritableAttr { … };
class SwiftObjCMembersAttr : public Attr { … };
class SwiftPrivateAttr : public InheritableAttr { … };
class SwiftVersionedAdditionAttr : public Attr { … };
class SwiftVersionedRemovalAttr : public Attr { … };
class SysVABIAttr : public InheritableAttr { … };
class TLSModelAttr : public InheritableAttr { … };
class TargetAttr : public InheritableAttr { … };
class TargetClonesAttr : public InheritableAttr { … };
class TargetVersionAttr : public InheritableAttr { … };
class TestTypestateAttr : public InheritableAttr { … };
class ThisCallAttr : public InheritableAttr { … };
class ThreadAttr : public Attr { … };
class TransparentUnionAttr : public InheritableAttr { … };
class TrivialABIAttr : public InheritableAttr { … };
class TryAcquireCapabilityAttr : public InheritableAttr { … };
class TypeNonNullAttr : public TypeAttr { … };
class TypeNullUnspecifiedAttr : public TypeAttr { … };
class TypeNullableAttr : public InheritableAttr { … };
class TypeNullableResultAttr : public TypeAttr { … };
class TypeTagForDatatypeAttr : public InheritableAttr { … };
class TypeVisibilityAttr : public InheritableAttr { … };
class UPtrAttr : public TypeAttr { … };
class UnavailableAttr : public InheritableAttr { … };
class UninitializedAttr : public InheritableAttr { … };
class UnlikelyAttr : public StmtAttr { … };
class UnsafeBufferUsageAttr : public InheritableAttr { … };
class UnusedAttr : public InheritableAttr { … };
class UseHandleAttr : public InheritableParamAttr { … };
class UsedAttr : public InheritableAttr { … };
class UsingIfExistsAttr : public InheritableAttr { … };
class UuidAttr : public InheritableAttr { … };
class VTablePointerAuthenticationAttr : public InheritableAttr { … };
class VecReturnAttr : public InheritableAttr { … };
class VecTypeHintAttr : public InheritableAttr { … };
class VectorCallAttr : public InheritableAttr { … };
class VisibilityAttr : public InheritableAttr { … };
class WarnUnusedAttr : public InheritableAttr { … };
class WarnUnusedResultAttr : public InheritableAttr { … };
class WeakAttr : public InheritableAttr { … };
class WeakImportAttr : public InheritableAttr { … };
class WeakRefAttr : public InheritableAttr { … };
class WebAssemblyExportNameAttr : public InheritableAttr { … };
class WebAssemblyFuncrefAttr : public TypeAttr { … };
class WebAssemblyImportModuleAttr : public InheritableAttr { … };
class WebAssemblyImportNameAttr : public InheritableAttr { … };
class WorkGroupSizeHintAttr : public InheritableAttr { … };
class X86ForceAlignArgPointerAttr : public InheritableAttr { … };
class XRayInstrumentAttr : public InheritableAttr { … };
class XRayLogArgsAttr : public InheritableAttr { … };
class ZeroCallUsedRegsAttr : public InheritableAttr { … };
#endif