a couple of bugs around nil are fixed

SVN=123423
This commit is contained in:
Rob Pike 2008-06-18 13:53:51 -07:00
parent 727ea928d5
commit 080bd1ec8a
3 changed files with 7 additions and 11 deletions

View File

@ -11,9 +11,9 @@ type T struct {
} }
func main() { func main() {
var ta *[]T; var ta *[]*T;
ta = new([1]T); ta = new([1]*T);
ta[0] = nil; ta[0] = nil;
} }
/* /*

View File

@ -26,8 +26,6 @@ hello, world
=========== ./literal.go =========== ./literal.go
=========== ./nil.go =========== ./nil.go
nil.go:30: illegal conversion of constant to <T>{}
BUG: known to fail incorrectly
=========== ./sieve.go =========== ./sieve.go
sieve.go:8: fatal error: walktype: switch 1 unknown op SEND l(151) sieve.go:8: fatal error: walktype: switch 1 unknown op SEND l(151)
@ -210,10 +208,6 @@ BUG: compilation should succeed
bugs/bug044.go:23: error in shape across assignment bugs/bug044.go:23: error in shape across assignment
BUG: compilation should succeed BUG: compilation should succeed
=========== bugs/bug045.go
bugs/bug045.go:13: illegal conversion of constant to <T>{}
BUG: known to fail incorrectly
=========== bugs/bug046.go =========== bugs/bug046.go
bugs/bug046.go:7: illegal <this> pointer bugs/bug046.go:7: illegal <this> pointer
BUG: known to fail incorrectly BUG: known to fail incorrectly
@ -304,3 +298,5 @@ BUG: known to fail incorrectly
=========== fixedbugs/bug028.go =========== fixedbugs/bug028.go
=========== fixedbugs/bug031.go =========== fixedbugs/bug031.go
=========== fixedbugs/bug045.go

View File

@ -21,7 +21,7 @@ func main() {
var c *chan int; var c *chan int;
var t *T; var t *T;
var in IN; var in IN;
var ta *[]T; var ta *[]IN;
i = nil; i = nil;
f = nil; f = nil;
@ -30,6 +30,6 @@ func main() {
c = nil; c = nil;
t = nil; t = nil;
i = nil; i = nil;
ta = new([1]T); ta = new([1]IN);
ta[0] = nil; //BUG (see bugs/bug045.go) ta[0] = nil;
} }