DIAG_ENUM(OACCReductionTy)
DIAG_ENUM_ITEM(0, NotScalar)
DIAG_ENUM_ITEM(1, MemberNotScalar)
DIAG_ENUM_ITEM(2, NotAgg)
DIAG_ENUM_ITEM(3, NotComplete)
DIAG_ENUM_ITEM(4, NotClassStruct)
DIAG_ENUM_END()
DIAG_ENUM(ParsingInitFor)
DIAG_ENUM_ITEM(0, Var)
DIAG_ENUM_ITEM(1, VarTemplate)
DIAG_ENUM_ITEM(2, VarTemplatePartialSpec)
DIAG_ENUM_ITEM(3, VarTemplateExplicitSpec)
DIAG_ENUM_END()
DIAG_ENUM(DeferJumpKind)
DIAG_ENUM_ITEM(0, Break)
DIAG_ENUM_ITEM(1, Continue)
DIAG_ENUM_ITEM(2, Return)
DIAG_ENUM_ITEM(3, SEHLeave)
DIAG_ENUM_END()
DIAG_ENUM(InvalidSKEPReason)
DIAG_ENUM_ITEM(0, NonStaticMemberFn)
DIAG_ENUM_ITEM(1, VariadicFn)
DIAG_ENUM_ITEM(2, DeletedFn)
DIAG_ENUM_ITEM(3, DefaultedFn)
DIAG_ENUM_ITEM(4, ConstexprFn)
DIAG_ENUM_ITEM(5, ConstevalFn)
DIAG_ENUM_ITEM(6, NoreturnFn)
DIAG_ENUM_ITEM(7, Coroutine)
DIAG_ENUM_ITEM(8, FunctionTryBlock)
DIAG_ENUM_END()
DIAG_ENUM(AssignmentAction)
DIAG_ENUM_ITEM(0, Assigning)
DIAG_ENUM_ITEM(1, Passing)
DIAG_ENUM_ITEM(2, Returning)
DIAG_ENUM_ITEM(3, Converting)
DIAG_ENUM_ITEM(4, Initializing)
DIAG_ENUM_ITEM(5, Sending)
DIAG_ENUM_ITEM(6, Casting)
DIAG_ENUM_END()
DIAG_ENUM(ACCDeviceTypeApp)
DIAG_ENUM_ITEM(0, Active)
DIAG_ENUM_ITEM(1, Applies)
DIAG_ENUM_END()
DIAG_ENUM(OACCAtomicExpr)
DIAG_ENUM_ITEM(0, Assign)
DIAG_ENUM_ITEM(1, UnaryCompAssign)
DIAG_ENUM_END()
DIAG_ENUM(OACCAtomicOpKind)
DIAG_ENUM_ITEM(0, Assign)
DIAG_ENUM_ITEM(1, CompoundAssign)
DIAG_ENUM_ITEM(2, Inc)
DIAG_ENUM_ITEM(3, Dec)
DIAG_ENUM_END()
DIAG_ENUM(OACCLValScalar)
DIAG_ENUM_ITEM(0, LVal)
DIAG_ENUM_ITEM(1, Scalar)
DIAG_ENUM_END()
DIAG_ENUM(OACCReductionArray)
DIAG_ENUM_ITEM(0, Section)
DIAG_ENUM_ITEM(1, Subscript)
DIAG_ENUM_ITEM(2, ArrayTy)
DIAG_ENUM_END()
DIAG_ENUM(TraitName)
DIAG_ENUM_ITEM(0, TriviallyRelocatable)
DIAG_ENUM_ITEM(1, TriviallyCopyable)
DIAG_ENUM_ITEM(2, Empty)
DIAG_ENUM_ITEM(3, StandardLayout)
DIAG_ENUM_ITEM(4, Aggregate)
DIAG_ENUM_ITEM(5, Final)
DIAG_ENUM_ITEM(6, Abstract)
DIAG_ENUM_END()
DIAG_ENUM(TraitNotSatisfiedReason)
DIAG_ENUM_ITEM(0, Ref)
DIAG_ENUM_ITEM(1, Const)
DIAG_ENUM_ITEM(2, Volatile)
DIAG_ENUM_ITEM(3, HasArcLifetime)
DIAG_ENUM_ITEM(4, VLA)
DIAG_ENUM_ITEM(5, VBase)
DIAG_ENUM_ITEM(6, NotScalarOrClass)
DIAG_ENUM_ITEM(7, NTRBase)
DIAG_ENUM_ITEM(8, NTRField)
DIAG_ENUM_ITEM(9, NTCBase)
DIAG_ENUM_ITEM(10, NTCField)
DIAG_ENUM_ITEM(11, NonEmptyMember)
DIAG_ENUM_ITEM(12, PolymorphicType)
DIAG_ENUM_ITEM(13, VirtualFunction)
DIAG_ENUM_ITEM(14, NonEmptyBase)
DIAG_ENUM_ITEM(15, NonZeroLengthField)
DIAG_ENUM_ITEM(16, NonStandardLayoutBase)
DIAG_ENUM_ITEM(17, MixedAccess)
DIAG_ENUM_ITEM(18, MixedAccessField)
DIAG_ENUM_ITEM(19, MultipleDataBase)
DIAG_ENUM_ITEM(20, NonStandardLayoutMember)
DIAG_ENUM_ITEM(21, IndirectBaseWithFields)
DIAG_ENUM_ITEM(22, DeletedDtr)
DIAG_ENUM_ITEM(23, UserProvidedCtr)
DIAG_ENUM_ITEM(24, UserDeclaredCtr)
DIAG_ENUM_ITEM(25, InheritedCtr)
DIAG_ENUM_ITEM(26, DeletedCtr)
DIAG_ENUM_ITEM(27, UserProvidedAssign)
DIAG_ENUM_ITEM(28, DeletedAssign)
DIAG_ENUM_ITEM(29, UnionWithUserDeclaredSMF)
DIAG_ENUM_ITEM(30, FunctionType)
DIAG_ENUM_ITEM(31, CVVoidType)
DIAG_ENUM_ITEM(32, IncompleteArrayType)
DIAG_ENUM_ITEM(33, PrivateProtectedDirectDataMember)
DIAG_ENUM_ITEM(34, PrivateProtectedDirectBase)
DIAG_ENUM_ITEM(35, NotClassOrUnion)
DIAG_ENUM_ITEM(36, NotMarkedFinal)
DIAG_ENUM_ITEM(37, PointerType)
DIAG_ENUM_ITEM(38, ArrayType)
DIAG_ENUM_ITEM(39, UnionType)
DIAG_ENUM_ITEM(40, NotStructOrClass)
DIAG_ENUM_ITEM(41, OverridesAllPureVirtual)
DIAG_ENUM_END()
DIAG_ENUM(MemClassWorkaround)
DIAG_ENUM_ITEM(0, AliasDecl)
DIAG_ENUM_ITEM(1, TypedefDecl)
DIAG_ENUM_ITEM(2, ReferenceDecl)
DIAG_ENUM_ITEM(3, ConstVar)
DIAG_ENUM_ITEM(4, ConstexprVar)
DIAG_ENUM_END()
DIAG_ENUM(AccVarReferencedReason)
DIAG_ENUM_ITEM(0, DefCtor)
DIAG_ENUM_ITEM(1, CopyCtor)
DIAG_ENUM_ITEM(2, Dtor)
DIAG_ENUM_END()
DIAG_ENUM(CVQualList)
DIAG_ENUM_ITEM(0, Both)
DIAG_ENUM_ITEM(1, Const)
DIAG_ENUM_ITEM(2, Volatile)
DIAG_ENUM_END()
DIAG_ENUM(FalloffFunctionKind)
DIAG_ENUM_ITEM(0, Function)
DIAG_ENUM_ITEM(1, Block)
DIAG_ENUM_ITEM(2, Lambda)
DIAG_ENUM_ITEM(3, Coroutine)
DIAG_ENUM_END()
