llvm/lldb/test/Shell/SymbolFile/DWARF/inlined-file0-line0-col0.test

# RUN: yaml2obj %S/Inputs/inlined-file0-line0-col0.yaml -o %t
# RUN: %lldb %t -s %s -o exit | FileCheck %s

#  1 void abort(void);
#  2 int g1 = 4, g2 = 6;
#  3
#  4 inline __attribute__((always_inline)) void bar(int q) {
#  5   if (q > 5)
#  6     abort();
#  7 }
#  8
#  9 inline __attribute__((always_inline)) void foo(int q) {
# 10   bar(q);
# 11 }
# 12
# 13 int main() {
# 14   foo(g1);
# 15   foo(g2);
# 16   return 0;
# 17 }

# The input object file contains a single abort invocation for the two inlined
# instances of foo() in main() at line 0. As the file, line and column numbers
# are all 0, file and line number information would be missing for foo and main
# in the lookup information.
#
# A line number 0 is not printed for main in this case, but the same holds
# for a non-inlined location with line number 0.

# CHECK: Summary: inlined-file0-line0-col0.test.tmp`main + 30 [inlined] bar + 4 at inlined-file0-line0-col0.c:6:5
# CHECK-NEXT:     inlined-file0-line0-col0.test.tmp`main + 26 [inlined] foo at inlined-file0-line0-col0.c:10:3
# CHECK-NEXT:     inlined-file0-line0-col0.test.tmp`main + 26 at inlined-file0-line0-col0.c

image lookup -a 0x1e