181e5a936a510f32ccbe85303147f1b0a587b6504Eric Christopher// RUN: %clang_cc1 -g -S -emit-llvm %s -o - | FileCheck %s 281e5a936a510f32ccbe85303147f1b0a587b6504Eric Christopher 3cd9199eb3dd1a665ea642f3918020a53e5ecb673Devang Patelclass A { int a; }; 4cd9199eb3dd1a665ea642f3918020a53e5ecb673Devang Patelclass B { 5cd9199eb3dd1a665ea642f3918020a53e5ecb673Devang Patelpublic: 6cd9199eb3dd1a665ea642f3918020a53e5ecb673Devang Patel B() { a = new A; } 7cd9199eb3dd1a665ea642f3918020a53e5ecb673Devang Patel ~B() { delete a; } 8cd9199eb3dd1a665ea642f3918020a53e5ecb673Devang Patelprivate: 9cd9199eb3dd1a665ea642f3918020a53e5ecb673Devang Patel A *a; 10cd9199eb3dd1a665ea642f3918020a53e5ecb673Devang Patel}; 11cd9199eb3dd1a665ea642f3918020a53e5ecb673Devang Patel 12cd9199eb3dd1a665ea642f3918020a53e5ecb673Devang Patelvoid fn(B b); 13cd9199eb3dd1a665ea642f3918020a53e5ecb673Devang Patel 14cd9199eb3dd1a665ea642f3918020a53e5ecb673Devang Patelint i; 15cd9199eb3dd1a665ea642f3918020a53e5ecb673Devang Patelvoid foo() { 16cd9199eb3dd1a665ea642f3918020a53e5ecb673Devang Patel if (i) { 17cd9199eb3dd1a665ea642f3918020a53e5ecb673Devang Patel B b1; 18cd9199eb3dd1a665ea642f3918020a53e5ecb673Devang Patel fn (b1); 19cd9199eb3dd1a665ea642f3918020a53e5ecb673Devang Patel } 20cd9199eb3dd1a665ea642f3918020a53e5ecb673Devang Patel} 2181e5a936a510f32ccbe85303147f1b0a587b6504Eric Christopher// Check there is a line number entry for line 19 where b1 is destructed. 22da3301eec823fe770bfa49a1cb19649506caa698Eric Christopher// CHECK: i32 19, i32 0, metadata 23