diff options
author | Stella Stamenova <stilis@microsoft.com> | 2021-12-14 13:06:07 -0800 |
---|---|---|
committer | Stella Stamenova <stilis@microsoft.com> | 2021-12-14 13:06:07 -0800 |
commit | f4abf28c0a0ba2226379a1b1926a7c36d75265e9 (patch) | |
tree | 3a2949c0beddcbec2c3c26d5844cdec439305471 /lldb | |
parent | 1a60ae02c65d26981017f59bc5918d3c2e363bfd (diff) | |
download | llvm-f4abf28c0a0ba2226379a1b1926a7c36d75265e9.zip llvm-f4abf28c0a0ba2226379a1b1926a7c36d75265e9.tar.gz llvm-f4abf28c0a0ba2226379a1b1926a7c36d75265e9.tar.bz2 |
[lldb] Update the PDB tests to pass with the VS2019 toolset
The pdb lldb tests do not work correctly with both the VS2019 and VS2017 toolsets at the moment. This change updates several of the tests to work with both toolsets. Unfortunately, this makes the tests suboptimal for both toolsets, but we can update them to be better for VS2019 once we officially drop VS2017. This change is meant to bridge the gap until the update happens, so that the buildbots can work with either toolset.
Differential Revision: https://reviews.llvm.org/D115482
Diffstat (limited to 'lldb')
-rw-r--r-- | lldb/test/Shell/SymbolFile/PDB/ast-restore.test | 2 | ||||
-rw-r--r-- | lldb/test/Shell/SymbolFile/PDB/class-layout.test | 2 | ||||
-rw-r--r-- | lldb/test/Shell/SymbolFile/PDB/enums-layout.test | 12 | ||||
-rw-r--r-- | lldb/test/Shell/SymbolFile/PDB/typedefs.test | 1 | ||||
-rw-r--r-- | lldb/test/Shell/SymbolFile/PDB/variables.test | 4 |
5 files changed, 10 insertions, 11 deletions
diff --git a/lldb/test/Shell/SymbolFile/PDB/ast-restore.test b/lldb/test/Shell/SymbolFile/PDB/ast-restore.test index 2473bb1..2763f460 100644 --- a/lldb/test/Shell/SymbolFile/PDB/ast-restore.test +++ b/lldb/test/Shell/SymbolFile/PDB/ast-restore.test @@ -56,7 +56,7 @@ CLASS-DAG: static const N0::N1::(anonymous namespace)::Enum ClassSta CLASS-DAG: static const N0::N1::(anonymous namespace)::ScopedEnum ClassStaticConstScopedEnum = 4; CLASS-DAG: N0::N1::Class::Inner m_inner; CLASS-DAG: {{(inline )?}}Class(N0::N1::(anonymous namespace)::Enum); -CLASS-DAG: static {{(inline )?}}int StaticFunc(const N0::N1::Class &); +CLASS-DAG: {{(static )?}}{{(inline )?}}int StaticFunc(const N0::N1::Class &); CLASS-DAG: {{(inline )?}}int PrivateFunc(const N0::N1::Class::Inner &); CLASS: }; CLASS: } diff --git a/lldb/test/Shell/SymbolFile/PDB/class-layout.test b/lldb/test/Shell/SymbolFile/PDB/class-layout.test index fcd6b610..c99a180 100644 --- a/lldb/test/Shell/SymbolFile/PDB/class-layout.test +++ b/lldb/test/Shell/SymbolFile/PDB/class-layout.test @@ -85,7 +85,7 @@ CLASS: int m_protected; CLASS: Class(); CLASS: Class(int); CLASS: ~Class(); -CLASS: static int {{.*}}StaticMemberFunc(int, ...); +CLASS: {{(static )?}}int {{.*}}StaticMemberFunc(int, ...); CLASS: int Get(); CLASS: int f(MemberTest::Friend); CLASS: bool operator==(const MemberTest::Class &) diff --git a/lldb/test/Shell/SymbolFile/PDB/enums-layout.test b/lldb/test/Shell/SymbolFile/PDB/enums-layout.test index 79efb25..2bfb9eb 100644 --- a/lldb/test/Shell/SymbolFile/PDB/enums-layout.test +++ b/lldb/test/Shell/SymbolFile/PDB/enums-layout.test @@ -10,35 +10,35 @@ RUN: lldb-test symbols %T/SimpleTypesTest.cpp.enums.exe | FileCheck --check-pref ; 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: Type{{.*}} , name = "Enum", size = 4, decl = {{[Ss]}}imple{{[Tt]}}ypes{{[Tt]}}est.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: Type{{.*}} , name = "EnumConst", size = 4, decl = {{[Ss]}}imple{{[Tt]}}ypes{{[Tt]}}est.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: Type{{.*}} , name = "EnumEmpty", size = 4, decl = {{[Ss]}}imple{{[Tt]}}ypes{{[Tt]}}est.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: Type{{.*}} , name = "EnumUChar", size = 1, decl = {{[Ss]}}imple{{[Tt]}}ypes{{[Tt]}}est.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: Type{{.*}} , name = "EnumClass", size = 4, decl = {{[Ss]}}imple{{[Tt]}}ypes{{[Tt]}}est.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: Type{{.*}} , name = "EnumStruct", size = 4, decl = {{[Ss]}}imple{{[Tt]}}ypes{{[Tt]}}est.cpp:35, compiler_type = {{.*}} enum EnumStruct { ENUM_STRUCT-NEXT: red, ENUM_STRUCT-NEXT: blue, ENUM_STRUCT-NEXT: black diff --git a/lldb/test/Shell/SymbolFile/PDB/typedefs.test b/lldb/test/Shell/SymbolFile/PDB/typedefs.test index a0106dd..ebbcc4b 100644 --- a/lldb/test/Shell/SymbolFile/PDB/typedefs.test +++ b/lldb/test/Shell/SymbolFile/PDB/typedefs.test @@ -17,7 +17,6 @@ CHECK-DAG: name = "char32_t", size = 4, compiler_type = {{.*}} char32_t CHECK-DAG: name = "char16_t", size = 2, compiler_type = {{.*}} char16_t CHECK-DAG: Type{{.*}} , name = "unsigned long", size = 4, compiler_type = {{.*}} unsigned long CHECK-DAG: Type{{.*}} , size = 40, compiler_type = {{.*}} unsigned long[10] -CHECK-DAG: Type{{.*}} , name = "ULongArrayTypedef", compiler_type = {{.*}} typedef ULongArrayTypedef ; Note: compiler_type of `long double` is represented by the one for `double` CHECK-DAG: Type{{.*}} , name = "double", size = 8, compiler_type = {{.*}} double diff --git a/lldb/test/Shell/SymbolFile/PDB/variables.test b/lldb/test/Shell/SymbolFile/PDB/variables.test index a6c7153..0043ebb 100644 --- a/lldb/test/Shell/SymbolFile/PDB/variables.test +++ b/lldb/test/Shell/SymbolFile/PDB/variables.test @@ -51,7 +51,7 @@ FUNC-MAIN-SAME: scope = local FUNC-MAIN-NEXT: Variable{{.*}}, name = "a" FUNC-MAIN-SAME: scope = local -FUNC-CONSTRUCTOR: Function{{.*}}, mangled = ??0Class@@QEAA@H@Z +FUNC-CONSTRUCTOR: Function{{.*}}, {{(de)?}}mangled = {{.*}}{{(Class::)?}}Class{{.*}} FUNC-CONSTRUCTOR-NEXT: Block FUNC-CONSTRUCTOR-NEXT: Variable{{.*}}, name = "this" FUNC-CONSTRUCTOR-SAME: scope = parameter @@ -59,7 +59,7 @@ FUNC-CONSTRUCTOR-SAME: artificial FUNC-CONSTRUCTOR-NEXT: Variable{{.*}}, name = "a" FUNC-CONSTRUCTOR-SAME: scope = parameter -FUNC-MEMBER: Function{{.*}}, mangled = ?Func@Class@@QEAAXXZ +FUNC-MEMBER: Function{{.*}}, {{(de)?}}mangled = {{.*}}{{(Class::)?}}Func{{.*}} FUNC-MEMBER-NEXT: Block FUNC-MEMBER-NEXT: Variable{{.*}}, name = "this" FUNC-MEMBER-SAME: scope = parameter |