// RUN: %clang_cc1 -g -emit-llvm < %s | FileCheck %s // RUN: %clang_cc1 -gline-tables-only -emit-llvm < %s | FileCheck --check-prefix=GMLT %s // Two variables with same name in separate scope. // Radar 8330217. int main() { int j = 0; int k = 0; // CHECK: DW_TAG_auto_variable ] [i] // CHECK-NEXT: DW_TAG_lexical_block // FIXME: Looks like we don't actually need both these lexical blocks (disc 2 // just refers to disc 1, nothing actually uses disc 2). // GMLT-NOT: DW_TAG_lexical_block // GMLT: "0xb\002", {{.*}}} ; [ DW_TAG_lexical_block ] // GMLT-NOT: DW_TAG_lexical_block // GMLT: "0xb\001", {{.*}}} ; [ DW_TAG_lexical_block ] // Make sure we don't have any more lexical blocks because we don't need them in // -gmlt. // GMLT-NOT: DW_TAG_lexical_block for (int i = 0; i < 10; i++) j++; // CHECK: DW_TAG_auto_variable ] [i] // CHECK-NEXT: DW_TAG_lexical_block // GMLT-NOT: DW_TAG_lexical_block for (int i = 0; i < 10; i++) k++; return 0; }