Files
swift-mirror/test/Interpreter/break_continue.swift
2015-12-26 12:48:02 +01:00

136 lines
1.8 KiB
Swift

// RUN: %target-run-simple-swift | FileCheck %s
// REQUIRES: executable_test
func test1() {
print("test1")
var i : Int
for i=0;;i += 1 {
if i > 2 {
break
}
print(i)
continue
}
}
func test2() {
print("test2")
var i : Int
for i=0;i<10;i += 1 {
if i > 2 {
continue
}
print(i)
}
}
func test3() {
print("test3")
var i : Int
for i=0;i<10;i += 1 {
if i > 2 {
break
}
print(i)
}
}
func test4() {
print("test4")
for i in 0..<10 {
if i > 2 {
break
}
print(i)
}
}
func test5() {
print("test5")
for i in 0..<10 {
if i < 2 {
print(i)
continue
}
return
}
}
func test6() {
print("test6")
var i = 0
while (i < 10) {
if i < 2 {
print(i)
i += 1
continue
}
return
}
}
func test7() {
print("test7")
var i = 0
while (i < 10) {
if i < 2 {
print(i)
break
}
return
}
print("foo")
}
func test8() {
print("test8")
var i : Int
for i=0;;i += 1 {
for j in 0..<10 {
if j > 1 {
break
}
print(j)
}
if i > 2 {
break
}
print(i)
continue
}
}
print("start")
test1()
// CHECK: test1
// CHECK-NEXT: 0
// CHECK-NEXT: 1
// CHECK-NEXT: 2
test2()
// CHECK: test2
// CHECK-NEXT: 0
// CHECK-NEXT: 1
// CHECK-NEXT: 2
test3()
// CHECK: test3
// CHECK-NEXT: 0
// CHECK-NEXT: 1
// CHECK-NEXT: 2
test4()
// CHECK: test4
// CHECK-NEXT: 0
// CHECK-NEXT: 1
// CHECK-NEXT: 2
test5()
// CHECK: test5
// CHECK-NEXT: 0
// CHECK-NEXT: 1
test6()
// CHECK: test6
// CHECK-NEXT: 0
// CHECK-NEXT: 1
test7()
// CHECK: test7
// CHECK-NEXT: 0
// CHECK-NEXT: foo
test8()
// CHECK: test8
// CHECK-NEXT: 0
// CHECK-NEXT: 1
// CHECK-NEXT: 0
// CHECK-NEXT: 0
// CHECK-NEXT: 1
// CHECK-NEXT: 1