diff options
author | Vy Nguyen <vyng@google.com> | 2025-05-19 11:04:01 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-05-19 11:04:01 -0400 |
commit | dc25ab389c2d441ba378d4db56a4a61e3eedb889 (patch) | |
tree | 0ccc3c556e612bce81b95e0c926da25e549605d8 /clang/lib/Serialization/ModuleCache.cpp | |
parent | 59f8af35b6bb15c0794873786cb34c7867be357b (diff) | |
download | llvm-dc25ab389c2d441ba378d4db56a4a61e3eedb889.zip llvm-dc25ab389c2d441ba378d4db56a4a61e3eedb889.tar.gz llvm-dc25ab389c2d441ba378d4db56a4a61e3eedb889.tar.bz2 |
[lldb]Make `list` command work with headers when possible. (#139002)
Given this simple test case:
```
// foo.h
extern int* ptr;
inline void g(int x) {
*ptr = x; // should raise a SIGILL
}
//--------------
// foo.cc
#include "foo.h"
int* ptr;
//--------------
// main.cc
#include "foo.h"
int main() {
g(123); // Call the inlined function and crash
return 0;
}
$ clang -g main.cc foo.cc -o main.out
$ lldb main.out
```
When you run `main.out` under lldb, it'd stop inside `void g(int)`
because of the crash.
The stack trace would show that it had crashed in `foo.h`, but if you do
`list foo.h:2`, lldb would complain that it could not find the source
file, which is confusing.
This patch make `list` work with headers.
Diffstat (limited to 'clang/lib/Serialization/ModuleCache.cpp')
0 files changed, 0 insertions, 0 deletions