]> Cypherpunks.ru repositories - gostls13.git/commitdiff
test: test append with two different named types with same element type
authorIan Lance Taylor <iant@golang.org>
Wed, 1 Feb 2012 23:24:15 +0000 (15:24 -0800)
committerIan Lance Taylor <iant@golang.org>
Wed, 1 Feb 2012 23:24:15 +0000 (15:24 -0800)
R=golang-dev, gri
CC=golang-dev
https://golang.org/cl/5615045

test/append.go

index e178f46990d62b613133b17b0f7b56571c9a1228..10ce2a613af8e679b9e8b3b035e273fdcd484be3 100644 (file)
@@ -27,6 +27,7 @@ func main() {
        }
        verifyStruct()
        verifyInterface()
+       verifyType()
 }
 
 
@@ -230,3 +231,17 @@ func verifyInterface() {
        verify("interface l", append(s), s)
        verify("interface m", append(s, e...), r)
 }
+
+type T1 []int
+type T2 []int
+
+func verifyType() {
+       // The second argument to append has type []E where E is the
+       // element type of the first argument.  Test that the compiler
+       // accepts two slice types that meet that requirement but are
+       // not assignment compatible.  The return type of append is
+       // the type of the first argument.
+       t1 := T1{1}
+       t2 := T2{2}
+       verify("T1", append(t1, t2...), T1{1, 2})
+}