From 787cdc65f70526c7f41328f88b31772f8f3b8b5b Mon Sep 17 00:00:00 2001 From: Rob Pike Date: Thu, 3 Jul 2008 17:16:08 -0700 Subject: [PATCH] improved iota test for new form SVN=125995 --- test/golden.out | 2 +- test/iota.go | 79 ++++++++++++++++++++++++++++++++++++++++++++++++- 2 files changed, 79 insertions(+), 2 deletions(-) diff --git a/test/golden.out b/test/golden.out index c0d6c054b3..ea398693a4 100644 --- a/test/golden.out +++ b/test/golden.out @@ -35,7 +35,7 @@ hello, world sieve.go:8: fatal error: walktype: switch 1 unknown op SEND l(201) BUG: known to fail incorrectly -=========== ./simasign.go +=========== ./simassign.go =========== ./string_lit.go diff --git a/test/iota.go b/test/iota.go index 22cf876bb7..12682d6899 100644 --- a/test/iota.go +++ b/test/iota.go @@ -19,7 +19,53 @@ const ( z = 1 << iota; f float = 2 * iota; g float = 4.5 * float(iota); -); +) + +const ( + X = 0; + Y; + Z; +) + +const ( + A = 1 << iota; + B; + C; + D; + E = iota * iota; + F; + G; +) + +const ( + a = 1; + b = iota << a; + c = iota << b; + d; +) + +const ( + i = (a << iota) + (b * iota); + j; + k; + l; +) + +const ( + m = iota == 0; + n; +) + +const ( + p = float(iota); + q; + r; +) + +const ( + s = string(iota + 'a'); + t; +) func main() { assert(x == 0, "x"); @@ -27,4 +73,35 @@ func main() { assert(z == 4, "z"); assert(f == 6.0, "f"); assert(g == 18.0, "g"); + + assert(X == 0, "X"); + assert(Y == 0, "Y"); + assert(Z == 0, "Z"); + + assert(A == 1, "A"); + assert(B == 2, "B"); + assert(C == 4, "C"); + assert(D == 8, "D"); + assert(E == 16, "E"); + assert(F == 25, "F"); + + assert(a == 1, "a"); + assert(b == 2, "b"); + assert(c == 8, "c"); + assert(d == 12, "d"); + + assert(i == 1, "i"); + assert(j == 4, "j"); + assert(k == 8, "k"); + assert(l == 14, "l"); + + assert(m, "m"); + assert(!n, "n"); + + assert(p == 0.0, "p"); + assert(q == 1.0, "q"); + assert(r == 2.0, "r"); + + assert(s == "a", "s"); + assert(t == "b", "s"); }