Open he11olx opened 1 year ago
sample.go
package main import ( "errors" "go/build" "github.com/traefik/yaegi/interp" "github.com/traefik/yaegi/stdlib" ) func main() { inter := interp.New(interp.Options{GoPath: build.Default.GOPATH}) inter.Use(stdlib.Symbols) var s2 = `package s2 func Handler(err error) int{ var count int if err!= nil { count, err = 1, nil // panic: reflect: New(nil) // count, err = 1, error(nil) // It's ok // It's ok // count = 1 // err = nil } return count }` inter.Eval(s2) i, _ := inter.Eval("s2.Handler") f := i.Interface().(func(err error) int) f(errors.New("test")) }
not paic
panic: reflect: New(nil)
latest
No response
The following program
sample.go
triggers an unexpected resultExpected result
Got
Yaegi Version
latest
Additional Notes
No response