mirror of
https://github.com/golang/go
synced 2024-11-22 01:54:42 -07:00
Match gccgo error messages.
I have to admit that "cannot use type p.T as type p.T" is a bit weak. 8g gives a similar error ("cannot use v1 (type p.T) as type p.T in assignment"). bug3.go:37:5: error: incompatible type in initialization (incompatible type for method ‘M’ (different parameter types)) bug3.go:38:5: error: incompatible type in initialization (incompatible type for method ‘M’ (different parameter types)) bug3.go:43:5: error: incompatible type in initialization (incompatible type for method ‘M’ (different parameter types)) bug3.go:44:5: error: incompatible type in initialization (incompatible type for method ‘M’ (different parameter types)) bug3.go:49:5: error: incompatible types in assignment (cannot use type p.T as type p.T) bug3.go:50:5: error: incompatible types in assignment (cannot use type p.T as type p.T) bug3.go:55:5: error: incompatible types in assignment (incompatible type for method ‘M’ (different parameter types)) bug3.go:56:5: error: incompatible types in assignment (incompatible type for method ‘M’ (different parameter types)) bug3.go:57:6: error: incompatible types in assignment (incompatible type for method ‘M’ (different parameter types)) bug3.go:58:6: error: incompatible types in assignment (incompatible type for method ‘M’ (different parameter types)) bug3.go:59:5: error: incompatible types in assignment (incompatible type for method ‘M’ (different parameter types)) bug3.go:60:5: error: incompatible types in assignment (incompatible type for method ‘M’ (different parameter types)) bug3.go:61:6: error: incompatible types in assignment (incompatible type for method ‘M’ (different parameter types)) bug3.go:62:6: error: incompatible types in assignment (incompatible type for method ‘M’ (different parameter types)) R=rsc CC=golang-dev https://golang.org/cl/199044
This commit is contained in:
parent
45515011cc
commit
001d9917f4
@ -34,14 +34,14 @@ func (t1) M(p1.T) {}
|
|||||||
var i0 I0 = t0(0) // ok
|
var i0 I0 = t0(0) // ok
|
||||||
var i1 I1 = t1(0) // ok
|
var i1 I1 = t1(0) // ok
|
||||||
|
|
||||||
var i2 I0 = t1(0) // ERROR "is not"
|
var i2 I0 = t1(0) // ERROR "is not|incompatible"
|
||||||
var i3 I1 = t0(0) // ERROR "is not"
|
var i3 I1 = t0(0) // ERROR "is not|incompatible"
|
||||||
|
|
||||||
var p0i p0.I = t0(0) // ok
|
var p0i p0.I = t0(0) // ok
|
||||||
var p1i p1.I = t1(0) // ok
|
var p1i p1.I = t1(0) // ok
|
||||||
|
|
||||||
var p0i1 p0.I = t1(0) // ERROR "is not"
|
var p0i1 p0.I = t1(0) // ERROR "is not|incompatible"
|
||||||
var p0i2 p1.I = t0(0) // ERROR "is not"
|
var p0i2 p1.I = t0(0) // ERROR "is not|incompatible"
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
// check that cannot assign one to the other,
|
// check that cannot assign one to the other,
|
||||||
@ -52,14 +52,14 @@ func main() {
|
|||||||
v0 = p0.T(v1)
|
v0 = p0.T(v1)
|
||||||
v1 = p1.T(v0)
|
v1 = p1.T(v0)
|
||||||
|
|
||||||
i0 = i1 // ERROR "need type assertion"
|
i0 = i1 // ERROR "need type assertion|incompatible"
|
||||||
i1 = i0 // ERROR "need type assertion"
|
i1 = i0 // ERROR "need type assertion|incompatible"
|
||||||
p0i = i1 // ERROR "need type assertion"
|
p0i = i1 // ERROR "need type assertion|incompatible"
|
||||||
p1i = i0 // ERROR "need type assertion"
|
p1i = i0 // ERROR "need type assertion|incompatible"
|
||||||
i0 = p1i // ERROR "need type assertion"
|
i0 = p1i // ERROR "need type assertion|incompatible"
|
||||||
i1 = p0i // ERROR "need type assertion"
|
i1 = p0i // ERROR "need type assertion|incompatible"
|
||||||
p0i = p1i // ERROR "need type assertion"
|
p0i = p1i // ERROR "need type assertion|incompatible"
|
||||||
p1i = p0i // ERROR "need type assertion"
|
p1i = p0i // ERROR "need type assertion|incompatible"
|
||||||
|
|
||||||
i0 = p0i
|
i0 = p0i
|
||||||
p0i = i0
|
p0i = i0
|
||||||
|
Loading…
Reference in New Issue
Block a user