Open thorsager opened 1 month ago
sample.go
package main type Mover interface { Move() error } type car struct { Mover } type engine struct { } func (e *engine) Move() error { println("engine moved") return nil } func newMover() Mover { return car{ Mover: &engine{}, } } func main() { mover := newMover() if _, ok := mover.(car); ok { println("mover is a car") } _ = mover.Move() }
mover is a car engine moved
run: ./sample.go:27:14: impossible type assertion: main.car does not implement main.Mover (missing Move method)
v0.16.1
No response
The following program
sample.go
triggers an unexpected resultExpected result
Got
Yaegi Version
v0.16.1
Additional Notes
No response