aboutsummaryrefslogtreecommitdiff
path: root/lldb/test/Shell/SymbolFile/PDB/add-symbols.cpp
blob: 64fbc84a98f24c8b3b601e11a7d80930b673b43d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
// REQUIRES: lld, target-windows

// Test that `target symbols add <pdb>` works.
// RUN: %build --compiler=clang-cl --nodefaultlib --output=%t.exe %s
// RUN: mv %t.pdb %t-renamed.pdb

// RUN: env LLDB_USE_NATIVE_PDB_READER=0 %lldb \
// RUN:   -o "b main" \
// RUN:   -o "target symbols add %t-renamed.pdb" \
// RUN:   -o r \
// RUN:   -o "target variable a" \
// RUN:   -o "target modules dump symtab" \
// RUN:   -b %t.exe | FileCheck %s

// RUN: env LLDB_USE_NATIVE_PDB_READER=1 %lldb \
// RUN:   -o "b main" \
// RUN:   -o "target symbols add %t-renamed.pdb" \
// RUN:   -o r \
// RUN:   -o "target variable a" \
// RUN:   -o "target modules dump symtab" \
// RUN:   -b %t.exe | FileCheck %s

// CHECK: target create
// CHECK: (lldb) b main
// CHECK-NEXT: Breakpoint 1: no locations (pending).
// CHECK: (lldb) target symbols add
// CHECK: 1 location added to breakpoint 1

// CHECK: * thread #1, stop reason = breakpoint 1.1
// CHECK: (lldb) target variable a
// CHECK-NEXT: (A) a = (x = 47)
// CHECK: (lldb) target modules dump symtab
// CHECK: [{{.*}} main

struct A {
  int x = 47;
};
A a;
int main() {}