forked from OSchip/llvm-project
				
			
		
			
				
	
	
		
			44 lines
		
	
	
		
			492 B
		
	
	
	
		
			Go
		
	
	
	
			
		
		
	
	
			44 lines
		
	
	
		
			492 B
		
	
	
	
		
			Go
		
	
	
	
// RUN: llgo -o %t %s
 | 
						|
// RUN: %t 2>&1 | FileCheck %s
 | 
						|
 | 
						|
// CHECK: 0
 | 
						|
// CHECK-NEXT: 1
 | 
						|
// CHECK-NEXT: 2
 | 
						|
// CHECK-NEXT: 3
 | 
						|
// CHECK-NEXT: 4
 | 
						|
// CHECK-NEXT: 5
 | 
						|
// CHECK-NEXT: 6
 | 
						|
// CHECK-NEXT: 7
 | 
						|
// CHECK-NEXT: 8
 | 
						|
// CHECK-NEXT: 9
 | 
						|
// CHECK-NEXT: done
 | 
						|
// CHECK-NEXT: !
 | 
						|
 | 
						|
package main
 | 
						|
 | 
						|
func f1() {
 | 
						|
	goto labeled
 | 
						|
labeled:
 | 
						|
	goto done
 | 
						|
	return
 | 
						|
done:
 | 
						|
	println("!")
 | 
						|
}
 | 
						|
 | 
						|
func main() {
 | 
						|
	i := 0
 | 
						|
start:
 | 
						|
	if i < 10 {
 | 
						|
		println(i)
 | 
						|
		i++
 | 
						|
		goto start
 | 
						|
	} else {
 | 
						|
		goto end
 | 
						|
	}
 | 
						|
	return
 | 
						|
end:
 | 
						|
	println("done")
 | 
						|
	f1()
 | 
						|
	return
 | 
						|
}
 |