| REQUIRES: windows |
| RUN: clang-cl -m32 /Z7 /c /GS- %S/Inputs/SimpleTypesTest.cpp /o %T/SimpleTypesTest.cpp.enums.obj |
| RUN: link %T/SimpleTypesTest.cpp.enums.obj /DEBUG /nodefaultlib /ENTRY:main /OUT:%T/SimpleTypesTest.cpp.enums.exe |
| RUN: lldb-test symbols %T/SimpleTypesTest.cpp.enums.exe | FileCheck %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. |
| |
| CHECK: Module [[CU:.*]] |
| CHECK-DAG: {{^[0-9A-F]+}}: SymbolVendor ([[CU]]) |
| CHECK: Type{{.*}} , name = "Enum", size = 4, decl = SimpleTypesTest.cpp:19, compiler_type = {{.*}} enum Enum { |
| CHECK-NEXT: RED, |
| CHECK-NEXT: GREEN, |
| CHECK-NEXT: BLUE |
| CHECK-NEXT:} |
| |
| CHECK: Type{{.*}} , name = "EnumConst", size = 4, decl = SimpleTypesTest.cpp:22, compiler_type = {{.*}} enum EnumConst { |
| CHECK-NEXT: LOW, |
| CHECK-NEXT: NORMAL, |
| CHECK-NEXT: HIGH |
| CHECK-NEXT:} |
| |
| CHECK: Type{{.*}} , name = "EnumEmpty", size = 4, decl = SimpleTypesTest.cpp:25, compiler_type = {{.*}} enum EnumEmpty { |
| CHECK-NEXT:} |
| |
| CHECK: Type{{.*}} , name = "EnumUChar", size = 1, decl = SimpleTypesTest.cpp:28, compiler_type = {{.*}} enum EnumUChar { |
| CHECK-NEXT: ON, |
| CHECK-NEXT: OFF, |
| CHECK-NEXT: AUTO |
| CHECK-NEXT:} |
| |
| ; Note that `enum EnumClass` is tested instead of `enum class EnumClass` |
| CHECK: Type{{.*}} , name = "EnumClass", size = 4, decl = SimpleTypesTest.cpp:32, compiler_type = {{.*}} enum EnumClass { |
| CHECK-NEXT: YES, |
| CHECK-NEXT: NO, |
| CHECK-NEXT: DEFAULT |
| CHECK-NEXT:} |
| |
| CHECK: Type{{.*}} , name = "EnumStruct", size = 4, decl = SimpleTypesTest.cpp:35, compiler_type = {{.*}} enum EnumStruct { |
| CHECK-NEXT: red, |
| CHECK-NEXT: blue, |
| CHECK-NEXT: black |
| CHECK-NEXT:} |
| |
| CHECK-DAG: {{^[0-9A-F]+}}: CompileUnit{{[{]0x[0-9a-f]+[}]}}, language = "c++", file = '{{.*}}\SimpleTypesTest.cpp' |