Commit 625866a9 authored by Ian Lance Taylor's avatar Ian Lance Taylor

Conversion from array to slices should work like assignment:

you should be able to convert a pointer to an array to a
slice, you should not be able to convert an array to a slice.
Currently 6g works the other way around.

R=ken,rsc
DELTA=17  (17 added, 0 deleted, 0 changed)
OCL=28033
CL=28067
parent 89f8238a
// errchk $G $D/$F.go
// 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
func main() {
type Slice []byte;
a := [...]byte{ 0 };
b := Slice(&a); // This should be OK.
c := Slice(a); // ERROR "invalid"
}
...@@ -111,6 +111,13 @@ bugs/bug140.go:6: syntax error near L1 ...@@ -111,6 +111,13 @@ bugs/bug140.go:6: syntax error near L1
bugs/bug140.go:7: syntax error near L2 bugs/bug140.go:7: syntax error near L2
BUG should compile BUG should compile
=========== bugs/bug146.go
BUG: errchk: bugs/bug146.go:9: missing expected error: 'invalid'
errchk: bugs/bug146.go: unmatched error messages:
==================================================
bugs/bug146.go:8: invalid conversion: *[1]uint8 to Slice
==================================================
=========== fixedbugs/bug016.go =========== fixedbugs/bug016.go
fixedbugs/bug016.go:7: constant -3 overflows uint fixedbugs/bug016.go:7: constant -3 overflows uint
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment