summaryrefslogtreecommitdiff
path: root/test/ken/intervar.go
diff options
context:
space:
mode:
Diffstat (limited to 'test/ken/intervar.go')
-rw-r--r--test/ken/intervar.go25
1 files changed, 14 insertions, 11 deletions
diff --git a/test/ken/intervar.go b/test/ken/intervar.go
index c2aaaa870..73d1b0660 100644
--- a/test/ken/intervar.go
+++ b/test/ken/intervar.go
@@ -7,7 +7,7 @@
package main
type Iputs interface {
- puts (s string);
+ puts (s string) string;
}
// ---------
@@ -17,9 +17,9 @@ type Print struct {
put Iputs;
}
-func (p *Print) dop() {
- print(" print ", p.whoami);
- p.put.puts("abc");
+func (p *Print) dop() string {
+ r := " print " + string(p.whoami + '0')
+ return r + p.put.puts("abc");
}
// ---------
@@ -29,9 +29,9 @@ type Bio struct {
put Iputs;
}
-func (b *Bio) puts(s string) {
- print(" bio ", b.whoami);
- b.put.puts(s);
+func (b *Bio) puts(s string) string {
+ r := " bio " + string(b.whoami + '0')
+ return r + b.put.puts(s);
}
// ---------
@@ -41,8 +41,8 @@ type File struct {
put Iputs;
}
-func (f *File) puts(s string) {
- print(" file ", f.whoami, " -- ", s);
+func (f *File) puts(s string) string {
+ return " file " + string(f.whoami + '0') + " -- " + s
}
func
@@ -59,6 +59,9 @@ main() {
f.whoami = 3;
- p.dop();
- print("\n");
+ r := p.dop();
+ expected := " print 1 bio 2 file 3 -- abc"
+ if r != expected {
+ panic(r + " != " + expected)
+ }
}