| REQUIRES: system-windows, msvc |
| RUN: %build --compiler=msvc --arch=32 --nodefaultlib --output=%T/SimpleTypesTest.cpp.enums.exe %S/Inputs/SimpleTypesTest.cpp |
| RUN: lldb-test symbols %T/SimpleTypesTest.cpp.enums.exe | FileCheck --check-prefix=ENUM %s |
| RUN: lldb-test symbols %T/SimpleTypesTest.cpp.enums.exe | FileCheck --check-prefix=ENUM_CONST %s |
| RUN: lldb-test symbols %T/SimpleTypesTest.cpp.enums.exe | FileCheck --check-prefix=ENUM_EMPTY %s |
| RUN: lldb-test symbols %T/SimpleTypesTest.cpp.enums.exe | FileCheck --check-prefix=ENUM_UCHAR %s |
| RUN: lldb-test symbols %T/SimpleTypesTest.cpp.enums.exe | FileCheck --check-prefix=ENUM_CLASS %s |
| RUN: lldb-test symbols %T/SimpleTypesTest.cpp.enums.exe | FileCheck --check-prefix=ENUM_STRUCT %s |
| |
| ; FIXME: PDB does not have information about scoped enumeration (Enum class) so the |
| ; compiler type used is the same as the one for unscoped enumeration. |
| |
| ENUM: Type{{.*}} , name = "Enum", size = 4, decl = simpletypestest.cpp:19, compiler_type = {{.*}} enum Enum { |
| ENUM_NEXT: RED, |
| ENUM_NEXT: GREEN, |
| ENUM_NEXT: BLUE |
| ENUM_NEXT:} |
| |
| ENUM_CONST: Type{{.*}} , name = "EnumConst", size = 4, decl = simpletypestest.cpp:22, compiler_type = {{.*}} enum EnumConst { |
| ENUM_CONST-NEXT: LOW, |
| ENUM_CONST-NEXT: NORMAL, |
| ENUM_CONST-NEXT: HIGH |
| ENUM_CONST-NEXT:} |
| |
| ENUM_EMPTY: Type{{.*}} , name = "EnumEmpty", size = 4, decl = simpletypestest.cpp:25, compiler_type = {{.*}} enum EnumEmpty { |
| ENUM_EMPTY-NEXT:} |
| |
| ENUM_UCHAR: Type{{.*}} , name = "EnumUChar", size = 1, decl = simpletypestest.cpp:28, compiler_type = {{.*}} enum EnumUChar { |
| ENUM_UCHAR-NEXT: ON, |
| ENUM_UCHAR-NEXT: OFF, |
| ENUM_UCHAR-NEXT: AUTO |
| ENUM_UCHAR-NEXT:} |
| |
| ; Note that `enum EnumClass` is tested instead of `enum class EnumClass` |
| ENUM_CLASS: Type{{.*}} , name = "EnumClass", size = 4, decl = simpletypestest.cpp:32, compiler_type = {{.*}} enum EnumClass { |
| ENUM_CLASS-NEXT: YES, |
| ENUM_CLASS-NEXT: NO, |
| ENUM_CLASS-NEXT: DEFAULT |
| ENUM_CLASS-NEXT:} |
| |
| ENUM_STRUCT: Type{{.*}} , name = "EnumStruct", size = 4, decl = simpletypestest.cpp:35, compiler_type = {{.*}} enum EnumStruct { |
| ENUM_STRUCT-NEXT: red, |
| ENUM_STRUCT-NEXT: blue, |
| ENUM_STRUCT-NEXT: black |
| ENUM_STRUCT-NEXT:} |