1
0
mirror of https://github.com/golang/go synced 2024-07-08 20:29:48 +00:00

test: do not depend on implicit if condition

Deleted test/ken/robif.go because test/if.go is
the same program modulo formatting.

R=golang-dev, gri, r2
CC=golang-dev
https://golang.org/cl/4186068
This commit is contained in:
Russ Cox 2011-02-22 18:23:14 -05:00
parent d9fd11443c
commit 814075dffb
6 changed files with 8 additions and 148 deletions

View File

@ -1,11 +0,0 @@
// $G $D/$F.go && $L $F.$A && ./$A.out
// Copyright 2009 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package main
func main() {
if {} // compiles; should be an error (must be an expression)
}

View File

@ -7,8 +7,8 @@
package main
func main() {
if {} else L1: ;
if {} else L2: main() ;
if true {} else L1: ;
if true {} else L2: main() ;
}
/*

View File

@ -12,8 +12,8 @@ func f(func()) int { return 0 }
// bug219.go:16: syntax error near if
func g1() {
if x := f(func() {
if {}
}); {
if true {}
}); true {
_ = x;
}
}
@ -21,8 +21,8 @@ func g1() {
// this works
func g2() {
if x := f(func() {
//if {}
}); {
//if true {}
}); true {
_ = x;
}
}
@ -30,9 +30,9 @@ func g2() {
// this works
func g3() {
x := f(func() {
if {}
if true {}
});
if {
if true {
_ = x;
}
}

View File

@ -44,18 +44,6 @@ func main() {
}
assertequal(count, 0, "if false one")
count = 0
if {
count = count + 1
}
assertequal(count, 1, "if empty")
count = 0
if one := 1; true {
count = count + one
}
assertequal(count, 1, "if empty one")
count = 0
if i5 < i7 {
count = count + 1

View File

@ -1,20 +0,0 @@
// $G $F.go && $L $F.$A && ./$A.out
// Copyright 2009 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package main
import "os"
func main() {
count := 7
if one := 1; {
count = count + one
}
if count != 8 {
print(count, " should be 8\n")
os.Exit(1)
}
}

View File

@ -1,97 +0,0 @@
// $G $D/$F.go && $L $F.$A && ./$A.out
// Copyright 2009 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package main
func assertequal(is, shouldbe int, msg string) {
if is != shouldbe {
print("assertion fail" + msg + "\n");
panic(1);
}
}
func main() {
i5 := 5;
i7 := 7;
var count int;
count = 0;
if true {
count = count + 1;
}
assertequal(count, 1, "if true");
count = 0;
if false {
count = count + 1;
}
assertequal(count, 0, "if false");
count = 0;
if one := 1; true {
count = count + one;
}
assertequal(count, 1, "if true one");
count = 0;
if one := 1; false {
_ = one;
count = count + 1;
}
assertequal(count, 0, "if false one");
count = 0;
if {
count = count + 1;
}
assertequal(count, 1, "if empty");
count = 0;
if one := 1; {
count = count + one;
}
assertequal(count, 1, "if empty one");
count = 0;
if i5 < i7 {
count = count + 1;
}
assertequal(count, 1, "if cond");
count = 0;
if true {
count = count + 1;
} else
count = count - 1;
assertequal(count, 1, "if else true");
count = 0;
if false {
count = count + 1;
} else
count = count - 1;
assertequal(count, -1, "if else false");
count = 0;
if t:=1; false {
count = count + 1;
t := 7;
_ = t;
} else
count = count - t;
assertequal(count, -1, "if else false var");
count = 0;
t := 1;
if false {
count = count + 1;
t := 7;
_ = t;
} else
count = count - t;
assertequal(count, -1, "if else false var outside");
}