Files
swift-mirror/test/DebugInfo/foreach.swift
Adrian Prantl 59226f383d Debug Info: Fix a backend crash by removing obsolete linetable heuristics.
Recent versions of LLDB can deal with line 0 locations much better and
due to a subtle bug in the heuristic instructions immediately following
the prologue could end up without debug locations which can cause serious
problems for the LLVM inliner when constructing inline debug scope info.

<rdar://problem/24394944>
2016-02-01 13:05:52 -08:00

13 lines
485 B
Swift

// RUN: %target-swift-frontend -g -emit-ir %s | FileCheck %s
// Verify that variables bound in the foreach statements are in distinct scopes.
let values = [1, 2, 3]
// CHECK: ![[SCOPE1:[0-9]+]] ={{.*}}Block(scope: ![[MAIN:[0-9]+]],{{.*}}line: 7,
// CHECK: ![[SCOPE2:[0-9]+]] ={{.*}}Block(scope: ![[MAIN]], {{.*}}line: 10,
for val in values {
// CHECK: !DILocalVariable(name: "val", scope: ![[SCOPE1]]
}
for val in values {
// CHECK: !DILocalVariable(name: "val", scope: ![[SCOPE2]]
}