diff options
author | Russ Cox <rsc@golang.org> | 2009-03-12 19:04:38 -0700 |
---|---|---|
committer | Russ Cox <rsc@golang.org> | 2009-03-12 19:04:38 -0700 |
commit | 8f194bf5ff15e3f62ce02669bf48d54a6342260e (patch) | |
tree | 215ba82d2713550ef0ead44a627dd78579275bfa /test/const3.go | |
parent | 9b5d82327b1498b74611d539f9812d3cce13cbc3 (diff) | |
download | go-git-8f194bf5ff15e3f62ce02669bf48d54a6342260e.tar.gz |
make 6g constants behave as ken proposes. (i hope.)
various bug fixes and tests involving constants.
test/const1.go is the major new test case.
R=ken
OCL=26216
CL=26224
Diffstat (limited to 'test/const3.go')
-rw-r--r-- | test/const3.go | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/test/const3.go b/test/const3.go new file mode 100644 index 0000000000..fc734377ee --- /dev/null +++ b/test/const3.go @@ -0,0 +1,29 @@ +// $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 + +import "fmt" + +type T int +func (t T) String() string { + return fmt.Sprintf("T%d", t); +} + +const ( + A T = 1<<(1<<iota); + B; + C; + D; + E; +) + +func main() { + s := fmt.Sprintf("%v %v %v %v %v", A, B, C, D, E); + if s != "T2 T4 T16 T256 T65536" { + panicln("type info didn't propagate in const: got", s); + } +} |