]> Cypherpunks.ru repositories - gostls13.git/blob - test/func7.go
gc: fix order of operations for f() < g().
[gostls13.git] / test / func7.go
1 // $G $D/$F.go && $L $F.$A && ./$A.out
2
3 // Copyright 2011 The Go Authors.  All rights reserved.
4 // Use of this source code is governed by a BSD-style
5 // license that can be found in the LICENSE file.
6
7 package main
8
9 var calledf = false
10
11 func f() int {
12         calledf = true
13         return 1
14 }
15
16 func g() int {
17         if !calledf {
18                 println("BUG: func7 - called g before f")
19         }
20         return 0
21 }
22
23 func main() {
24         // 6g, 8g, 5g all used to evaluate g() before f().
25         if f() < g() {
26                 panic("wrong answer")
27         }
28 }
29