summaryrefslogtreecommitdiff
path: root/test/ken
diff options
context:
space:
mode:
authorRuss Cox <rsc@golang.org>2009-02-11 17:55:16 -0800
committerRuss Cox <rsc@golang.org>2009-02-11 17:55:16 -0800
commit70b2d809ec1f10ee5cebbf96c57bbb2d3a604b40 (patch)
tree3a27c60cd93482129d8beda588d769a2d7868d4d /test/ken
parent47cebf94596af35b46ae2d1d3c973b17dcc603a4 (diff)
downloadgo-70b2d809ec1f10ee5cebbf96c57bbb2d3a604b40.tar.gz
insert type assertions when narrowing.
R=r OCL=24349 CL=24913
Diffstat (limited to 'test/ken')
-rw-r--r--test/ken/embed.go2
-rw-r--r--test/ken/interbasic.go24
-rw-r--r--test/ken/interfun.go6
3 files changed, 16 insertions, 16 deletions
diff --git a/test/ken/embed.go b/test/ken/embed.go
index f0c9f4ec2..8f4641e81 100644
--- a/test/ken/embed.go
+++ b/test/ken/embed.go
@@ -214,7 +214,7 @@ main()
// run it thru an interface
i = s;
- s = i;
+ s = i.(*S);
// same as t3
if s.test1() != s.a1 { panicln("t4", 1) }
diff --git a/test/ken/interbasic.go b/test/ken/interbasic.go
index 05eea395b..c6b982fe1 100644
--- a/test/ken/interbasic.go
+++ b/test/ken/interbasic.go
@@ -85,21 +85,21 @@ main()
u32 = 4455; ia[11] = u32;
u64 = 765432; ia[12] = u64;
- s = ia[0]; if s != "xxx" { panicln(0,s); }
+ s = ia[0].(string); if s != "xxx" { panicln(0,s); }
i32 = int32(ia[1].(int));
if i32 != 12345 { panicln(1,i32); }
- b = ia[2]; if b != true { panicln(2,b); }
+ b = ia[2].(bool); if b != true { panicln(2,b); }
- s = ia[3]; if s != "now is" { panicln(3,s); }
- b = ia[4]; if b != false { panicln(4,b); }
+ s = ia[3].(string); if s != "now is" { panicln(3,s); }
+ b = ia[4].(bool); if b != false { panicln(4,b); }
- i8 = ia[5]; if i8 != 29 { panicln(5,i8); }
- i16 = ia[6]; if i16 != 994 { panicln(6,i16); }
- i32 = ia[7]; if i32 != 3434 { panicln(7,i32); }
- i64 = ia[8]; if i64 != 1234567 { panicln(8,i64); }
+ i8 = ia[5].(int8); if i8 != 29 { panicln(5,i8); }
+ i16 = ia[6].(int16); if i16 != 994 { panicln(6,i16); }
+ i32 = ia[7].(int32); if i32 != 3434 { panicln(7,i32); }
+ i64 = ia[8].(int64); if i64 != 1234567 { panicln(8,i64); }
- u8 = ia[9]; if u8 != 12 { panicln(5,u8); }
- u16 = ia[10]; if u16 != 799 { panicln(6,u16); }
- u32 = ia[11]; if u32 != 4455 { panicln(7,u32); }
- u64 = ia[12]; if u64 != 765432 { panicln(8,u64); }
+ u8 = ia[9].(uint8); if u8 != 12 { panicln(5,u8); }
+ u16 = ia[10].(uint16); if u16 != 799 { panicln(6,u16); }
+ u32 = ia[11].(uint32); if u32 != 4455 { panicln(7,u32); }
+ u64 = ia[12].(uint64); if u64 != 765432 { panicln(8,u64); }
}
diff --git a/test/ken/interfun.go b/test/ken/interfun.go
index 97db89316..876d94128 100644
--- a/test/ken/interfun.go
+++ b/test/ken/interfun.go
@@ -49,16 +49,16 @@ main()
if s.g() != 6 { panic(12); }
i1 = s; // convert S to I1
- i2 = i1; // convert I1 to I2
+ i2 = i1.(I2); // convert I1 to I2
// call interface
if i1.f() != 5 { panic(21); }
if i2.f() != 5 { panic(22); }
if i2.g() != 6 { panic(23); }
- g = i1; // convert I1 to S
+ g = i1.(*S); // convert I1 to S
if g != s { panic(31); }
- g = i2; // convert I2 to S
+ g = i2.(*S); // convert I2 to S
if g != s { panic(32); }
}