Home | History | Annotate | Download | only in host-tests
      1 // RUN: %clang %s -g -fexceptions %extra-clang-opts -o %t
      2 // RUN: %Test_jit_debuginfo %s %t
      3 
      4 // If debug info for my_number() is emitted outside function foo's scope
      5 // then a debugger may not be able to handle it. At least one version of
      6 // gdb crashes in such cases.
      7 
      8 // DEBUGGER: set breakpoint pending on
      9 // DEBUGGER: b nested-struct.cpp:28
     10 // DEBUGGER: run
     11 // DEBUGGER: ptype foo
     12 // CHECK: type = int (void)
     13 
     14 int foo() {
     15   struct Local {
     16     static int my_number() {
     17       return 42;
     18     }
     19   };
     20 
     21   int i = 0;
     22   i = Local::my_number();
     23   return i + 1;
     24 }
     25 
     26 int main() {
     27   foo();
     28   return 0;
     29 }
     30