/
githubmirror
/
go
Обзор
Документация
Войти
/
githubmirror
/
go
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
test/fixedbugs/issue24547.go
46 строк
757 B
Matthew Dempsky
cmd/compile: fix method set computation for shadowed methods
27 мар 2018, 21:56
27 мар 2018, 21:56
7b177b1
Код
Авторство
О чём код?
// run // Copyright 2018 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. // When computing method sets with shadowed methods, make sure we // compute whether a method promotion involved a pointer traversal // based on the promoted method, not the shadowed method. package main import ( "bytes" "fmt" ) type mystruct struct { f int } func (t mystruct) String() string { return "FAIL" } func main() { type deep struct { mystruct } s := struct { deep *bytes.Buffer }{ deep{}, bytes.NewBufferString("ok"), } if got := s.String(); got != "ok" { panic(got) } var i fmt.Stringer = s if got := i.String(); got != "ok" { panic(got) } }