Hal Finkel | ec264b2 | 2016-05-25 22:08:27 +0000 | [diff] [blame] | 1 | // RUN: %clang_cc1 -triple x86_64-unknown_unknown -emit-llvm -debug-info-kind=standalone -dwarf-column-info %s -o - | FileCheck %s |
| 2 | void ext(); |
| 3 | |
| 4 | struct Bar { |
| 5 | void bar() { ext(); } |
| 6 | }; |
| 7 | |
| 8 | struct Foo { |
| 9 | Bar *b; |
| 10 | |
| 11 | Bar *foo() { return b; } |
| 12 | }; |
| 13 | |
| 14 | void test(Foo *f) { |
| 15 | f->foo()->bar(); |
| 16 | } |
| 17 | |
| 18 | // CHECK-LABEL: @_Z4testP3Foo |
| 19 | // CHECK: call {{.*}} @_ZN3Foo3fooEv{{.*}}, !dbg ![[CALL1LOC:.*]] |
| 20 | // CHECK: call void @_ZN3Bar3barEv{{.*}}, !dbg ![[CALL2LOC:.*]] |
| 21 | |
| 22 | // CHECK: ![[CALL1LOC]] = !DILocation(line: [[LINE:[0-9]+]], column: 6, |
| 23 | // CHECK: ![[CALL2LOC]] = !DILocation(line: [[LINE]], column: 13, |
| 24 | |