| // RUN: %clang_cc1 -emit-llvm -debug-info-kind=limited %s -o - | FileCheck %s | 
 |  | 
 | // CHECK-NOT:  enumKind | 
 | // CHECK:      !DICompositeType(tag: DW_TAG_enumeration_type, name: "ClosedEnum" | 
 | // CHECK-SAME:                  enumKind: DW_APPLE_ENUM_KIND_Closed) | 
 | // CHECK:      !DICompositeType(tag: DW_TAG_enumeration_type, name: "OpenEnum" | 
 | // CHECK-SAME:                  enumKind: DW_APPLE_ENUM_KIND_Open) | 
 | // CHECK:      !DICompositeType(tag: DW_TAG_enumeration_type, name: "ClosedFlagEnum" | 
 | // CHECK-SAME:                  enumKind: DW_APPLE_ENUM_KIND_Closed) | 
 | // CHECK:      !DICompositeType(tag: DW_TAG_enumeration_type, name: "OpenFlagEnum" | 
 | // CHECK-SAME:                  enumKind: DW_APPLE_ENUM_KIND_Open) | 
 | // CHECK:      !DICompositeType(tag: DW_TAG_enumeration_type, name: "MixedEnum" | 
 | // CHECK-SAME:                  enumKind: DW_APPLE_ENUM_KIND_Open) | 
 |  | 
 | enum Enum { | 
 |   E0, E1 | 
 | }; | 
 |  | 
 | enum FlagEnum { | 
 |   FE0 = 1 << 0, FE1 = 1 << 1 | 
 | }; | 
 |  | 
 | enum __attribute__((enum_extensibility(closed))) ClosedEnum { | 
 |   A0, A1 | 
 | }; | 
 |  | 
 | enum __attribute__((enum_extensibility(open))) OpenEnum { | 
 |   B0, B1 | 
 | }; | 
 |  | 
 | enum __attribute__((enum_extensibility(closed),flag_enum)) ClosedFlagEnum { | 
 |   C0 = 1 << 0, C1 = 1 << 1 | 
 | }; | 
 |  | 
 | enum __attribute__((enum_extensibility(open),flag_enum)) OpenFlagEnum { | 
 |   D0 = 1 << 0, D1 = 1 << 1 | 
 | }; | 
 |  | 
 | enum __attribute__((enum_extensibility(open), enum_extensibility(closed))) MixedEnum { | 
 |   M0, M1 | 
 | }; | 
 |  | 
 | enum Enum e; | 
 | enum FlagEnum fe; | 
 | enum ClosedEnum ce; | 
 | enum OpenEnum oe; | 
 | enum ClosedFlagEnum cfe; | 
 | enum OpenFlagEnum ofe; | 
 | enum MixedEnum me; |