1REQUIRES: target-windows, msvc 2RUN: %build --compiler=clang-cl --mode=compile --arch=32 --nodefaultlib --output=%T/PointerTypeTest.cpp.obj %S/Inputs/PointerTypeTest.cpp 3RUN: %build --compiler=msvc --mode=link --arch=32 --nodefaultlib --output=%T/PointerTypeTest.cpp.exe %T/PointerTypeTest.cpp.obj 4RUN: lldb-test symbols %T/PointerTypeTest.cpp.exe | FileCheck %s 5RUN: lldb-test symbols %T/PointerTypeTest.cpp.exe | FileCheck --check-prefix=MAIN-ST-F %s 6RUN: lldb-test symbols %T/PointerTypeTest.cpp.exe | FileCheck --check-prefix=MAIN-ST %s 7RUN: lldb-test symbols %T/PointerTypeTest.cpp.exe | FileCheck --check-prefix=MAIN %s 8RUN: lldb-test symbols %T/PointerTypeTest.cpp.exe | FileCheck --check-prefix=F %s 9 10CHECK: Module [[MOD:.*]] 11CHECK: {{^[0-9A-F]+}}: CompileUnit{{[{]0x[0-9a-f]+[}]}}, language = "c++", file = '{{.*}}\PointerTypeTest.cpp' 12 13MAIN-ST-F: name = "f" 14MAIN-ST-F-SAME: decl = PointerTypeTest.cpp:8 15MAIN-ST-F-SAME: compiler_type = {{.*}} int (int) 16 17MAIN-ST: name = "ST", size = 4, decl = PointerTypeTest.cpp:6, compiler_type = {{.*}} struct ST { 18MAIN-ST-NEXT: int a; 19MAIN-ST-NEXT: int {{.*}}f(int); 20MAIN-ST-NEXT:} 21 22MAIN: Function{[[FID1:.*]]}, mangled = {{_?}}main 23MAIN-NEXT: Block{[[FID1]]} 24MAIN: Variable{{.*}}, name = "array_pointer" 25MAIN-SAME: (int (*)[2][4]), scope = local 26MAIN: Variable{{.*}}, name = "p_int" 27MAIN-SAME: (int *), scope = local 28MAIN: Variable{{.*}}, name = "p_member_field" 29MAIN-SAME: (int ST::*), scope = local 30MAIN: Variable{{.*}}, name = "p_member_method" 31MAIN-SAME: (int (ST::*)(int){{( __attribute__\(\(thiscall\)\))?}}), scope = local 32 33F: Function{[[FID2:.*]]}, demangled = {{.*}}f(int) 34F-NEXT: Block{[[FID2]]} 35F: Variable{{.*}}, name = "this" 36F-SAME: (ST *), scope = parameter, location = {{(DW_OP.*)|(<empty>)}}, artificial 37F: Variable{{.*}}, name = "x" 38F-SAME: (int), scope = parameter, decl = PointerTypeTest.cpp:8 39