/
githubmirror
/
go
Обзор
Документация
Войти
/
githubmirror
/
go
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
test/interface/receiver1.go
59 строк
790 B
Robert Griesemer
[dev.typeparams] test: adjust more test cases to match compiler -G output
03 дек 2020, 20:55
03 дек 2020, 20:55
7a1aa7d
Код
Авторство
О чём код?
// errorcheck // 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. // Verify compiler complains about missing implicit methods. // Does not compile. package main type T int func (t T) V() func (t *T) P() type V interface { V() } type P interface { P() V() } type S struct { T } type SP struct { *T } func main() { var t T var v V var p P var s S var sp SP v = t p = t // ERROR "does not implement|requires a pointer|cannot use" _, _ = v, p v = &t p = &t _, _ = v, p v = s p = s // ERROR "does not implement|requires a pointer|cannot use" _, _ = v, p v = &s p = &s _, _ = v, p v = sp p = sp // no error! _, _ = v, p v = &sp p = &sp _, _ = v, p }