30 lines
595 B
C++
30 lines
595 B
C++
|
// RUN: %clang %s -g -fexceptions %extra-clang-opts -o %t
|
||
|
// RUN: %Test_jit_debuginfo %s %t
|
||
|
|
||
|
// If debug info for my_number() is emitted outside function foo's scope
|
||
|
// then a debugger may not be able to handle it. At least one version of
|
||
|
// gdb crashes in such cases.
|
||
|
|
||
|
// DEBUGGER: set breakpoint pending on
|
||
|
// DEBUGGER: b nested-struct.cpp:28
|
||
|
// DEBUGGER: run
|
||
|
// DEBUGGER: ptype foo
|
||
|
// CHECK: type = int (void)
|
||
|
|
||
|
int foo() {
|
||
|
struct Local {
|
||
|
static int my_number() {
|
||
|
return 42;
|
||
|
}
|
||
|
};
|
||
|
|
||
|
int i = 0;
|
||
|
i = Local::my_number();
|
||
|
return i + 1;
|
||
|
}
|
||
|
|
||
|
int main() {
|
||
|
foo();
|
||
|
return 0;
|
||
|
}
|