github.com/llvm-mirror/llgo@v0.0.0-20190322182713-bf6f0a60fce1/test/execution/branching/goto.go (about) 1 // RUN: llgo -o %t %s 2 // RUN: %t 2>&1 | FileCheck %s 3 4 // CHECK: 0 5 // CHECK-NEXT: 1 6 // CHECK-NEXT: 2 7 // CHECK-NEXT: 3 8 // CHECK-NEXT: 4 9 // CHECK-NEXT: 5 10 // CHECK-NEXT: 6 11 // CHECK-NEXT: 7 12 // CHECK-NEXT: 8 13 // CHECK-NEXT: 9 14 // CHECK-NEXT: done 15 // CHECK-NEXT: ! 16 17 package main 18 19 func f1() { 20 goto labeled 21 labeled: 22 goto done 23 return 24 done: 25 println("!") 26 } 27 28 func main() { 29 i := 0 30 start: 31 if i < 10 { 32 println(i) 33 i++ 34 goto start 35 } else { 36 goto end 37 } 38 return 39 end: 40 println("done") 41 f1() 42 return 43 }