We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
sample.go
package main import ( "github.com/traefik/yaegi/interp" "github.com/traefik/yaegi/stdlib" ) func main() { i := interp.New(interp.Options{}) i.Use(stdlib.Symbols) _, err := i.Eval(` import ( "context" "fmt" ) func quickPrint() { ctx, _ := context.WithCancel(context.Background()) ch := make(chan string, 20) defer close(ch) for i := 0; i < 10; i++ { fmt.Println(i) go func(ctx context.Context, ch <-chan string) { for { select { case <-ctx.Done(): return case tmp := <-ch: fmt.Println(tmp) } } }(ctx, ch) } for _, i := range "abcdef" { for _, j := range "0123456789" { for _, k := range "ABCDEF" { select { case <-ctx.Done(): return default: tmp := string(i) + string(j) + string(k) ch <- tmp } } } } return } `) if err != nil { panic(err) } }
// no panic
runtime: goroutine stack exceeds 1000000000-byte limit runtime: sp=0xc020400390 stack=[0xc020400000, 0xc040400000] fatal error: stack overflow runtime stack: runtime.throw({0xe07e96?, 0x1441820?}) runtime/panic.go:992 +0x71 runtime.newstack() runtime/stack.go:1101 +0x5cc runtime.morestack() runtime/asm_amd64.s:547 +0x8b goroutine 1 [running]: runtime.mallocgc(0x10?, 0xdca2a0?, 0x1?) runtime/malloc.go:909 +0x91d fp=0xc0204003a0 sp=0xc020400398 pc=0x41227d runtime.makeslice(0x0?, 0x0?, 0x0?) runtime/slice.go:103 +0x52 fp=0xc0204003c8 sp=0xc0204003a0 pc=0x454ff2 github.com/traefik/yaegi/interp._select(0xc0003d9e60) github.com/traefik/yaegi@v0.14.1/interp/run.go:3672 +0x46 fp=0xc020400490 sp=0xc0204003c8 pc=0x6be4e6 github.com/traefik/yaegi/interp.setExec.func1(0xc0003d9e60) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2829 +0x1f6 fp=0xc0204004d8 sp=0xc020400490 pc=0x63d376 github.com/traefik/yaegi/interp.setExec.func1(0xc0003dad80) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020400520 sp=0xc0204004d8 pc=0x63d298 github.com/traefik/yaegi/interp.setExec.func1(0xc0003db200) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020400568 sp=0xc020400520 pc=0x63d298 github.com/traefik/yaegi/interp.setExec.func1(0xc0003daea0) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc0204005b0 sp=0xc020400568 pc=0x63d298 github.com/traefik/yaegi/interp.setExec(0xc0003daea0) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2832 +0xe4 fp=0xc020400670 sp=0xc0204005b0 pc=0x63d144 github.com/traefik/yaegi/interp.getExec(...) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2794 github.com/traefik/yaegi/interp._select(0xc0003d9e60) github.com/traefik/yaegi@v0.14.1/interp/run.go:3689 +0x215 fp=0xc020400738 sp=0xc020400670 pc=0x6be6b5 github.com/traefik/yaegi/interp.setExec.func1(0xc0003d9e60) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2829 +0x1f6 fp=0xc020400780 sp=0xc020400738 pc=0x63d376 github.com/traefik/yaegi/interp.setExec.func1(0xc0003dad80) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc0204007c8 sp=0xc020400780 pc=0x63d298 github.com/traefik/yaegi/interp.setExec.func1(0xc0003db200) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020400810 sp=0xc0204007c8 pc=0x63d298 github.com/traefik/yaegi/interp.setExec.func1(0xc0003daea0) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020400858 sp=0xc020400810 pc=0x63d298 github.com/traefik/yaegi/interp.setExec(0xc0003daea0) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2832 +0xe4 fp=0xc020400918 sp=0xc020400858 pc=0x63d144 github.com/traefik/yaegi/interp.getExec(...) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2794 github.com/traefik/yaegi/interp._select(0xc0003d9e60) github.com/traefik/yaegi@v0.14.1/interp/run.go:3689 +0x215 fp=0xc0204009e0 sp=0xc020400918 pc=0x6be6b5 github.com/traefik/yaegi/interp.setExec.func1(0xc0003d9e60) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2829 +0x1f6 fp=0xc020400a28 sp=0xc0204009e0 pc=0x63d376 github.com/traefik/yaegi/interp.setExec.func1(0xc0003dad80) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020400a70 sp=0xc020400a28 pc=0x63d298 github.com/traefik/yaegi/interp.setExec.func1(0xc0003db200) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020400ab8 sp=0xc020400a70 pc=0x63d298 github.com/traefik/yaegi/interp.setExec.func1(0xc0003daea0) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020400b00 sp=0xc020400ab8 pc=0x63d298 github.com/traefik/yaegi/interp.setExec(0xc0003daea0) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2832 +0xe4 fp=0xc020400bc0 sp=0xc020400b00 pc=0x63d144 github.com/traefik/yaegi/interp.getExec(...) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2794 github.com/traefik/yaegi/interp._select(0xc0003d9e60) github.com/traefik/yaegi@v0.14.1/interp/run.go:3689 +0x215 fp=0xc020400c88 sp=0xc020400bc0 pc=0x6be6b5 github.com/traefik/yaegi/interp.setExec.func1(0xc0003d9e60) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2829 +0x1f6 fp=0xc020400cd0 sp=0xc020400c88 pc=0x63d376 github.com/traefik/yaegi/interp.setExec.func1(0xc0003dad80) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020400d18 sp=0xc020400cd0 pc=0x63d298 github.com/traefik/yaegi/interp.setExec.func1(0xc0003db200) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020400d60 sp=0xc020400d18 pc=0x63d298 github.com/traefik/yaegi/interp.setExec.func1(0xc0003daea0) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020400da8 sp=0xc020400d60 pc=0x63d298 github.com/traefik/yaegi/interp.setExec(0xc0003daea0) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2832 +0xe4 fp=0xc020400e68 sp=0xc020400da8 pc=0x63d144 github.com/traefik/yaegi/interp.getExec(...) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2794 github.com/traefik/yaegi/interp._select(0xc0003d9e60) github.com/traefik/yaegi@v0.14.1/interp/run.go:3689 +0x215 fp=0xc020400f30 sp=0xc020400e68 pc=0x6be6b5 github.com/traefik/yaegi/interp.setExec.func1(0xc0003d9e60) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2829 +0x1f6 fp=0xc020400f78 sp=0xc020400f30 pc=0x63d376 github.com/traefik/yaegi/interp.setExec.func1(0xc0003dad80) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020400fc0 sp=0xc020400f78 pc=0x63d298 github.com/traefik/yaegi/interp.setExec.func1(0xc0003db200) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020401008 sp=0xc020400fc0 pc=0x63d298 github.com/traefik/yaegi/interp.setExec.func1(0xc0003daea0) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020401050 sp=0xc020401008 pc=0x63d298 github.com/traefik/yaegi/interp.setExec(0xc0003daea0) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2832 +0xe4 fp=0xc020401110 sp=0xc020401050 pc=0x63d144 github.com/traefik/yaegi/interp.getExec(...) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2794 github.com/traefik/yaegi/interp._select(0xc0003d9e60) github.com/traefik/yaegi@v0.14.1/interp/run.go:3689 +0x215 fp=0xc0204011d8 sp=0xc020401110 pc=0x6be6b5 github.com/traefik/yaegi/interp.setExec.func1(0xc0003d9e60) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2829 +0x1f6 fp=0xc020401220 sp=0xc0204011d8 pc=0x63d376 github.com/traefik/yaegi/interp.setExec.func1(0xc0003dad80) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020401268 sp=0xc020401220 pc=0x63d298 github.com/traefik/yaegi/interp.setExec.func1(0xc0003db200) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc0204012b0 sp=0xc020401268 pc=0x63d298 github.com/traefik/yaegi/interp.setExec.func1(0xc0003daea0) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc0204012f8 sp=0xc0204012b0 pc=0x63d298 github.com/traefik/yaegi/interp.setExec(0xc0003daea0) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2832 +0xe4 fp=0xc0204013b8 sp=0xc0204012f8 pc=0x63d144 github.com/traefik/yaegi/interp.getExec(...) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2794 github.com/traefik/yaegi/interp._select(0xc0003d9e60) github.com/traefik/yaegi@v0.14.1/interp/run.go:3689 +0x215 fp=0xc020401480 sp=0xc0204013b8 pc=0x6be6b5 github.com/traefik/yaegi/interp.setExec.func1(0xc0003d9e60) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2829 +0x1f6 fp=0xc0204014c8 sp=0xc020401480 pc=0x63d376 github.com/traefik/yaegi/interp.setExec.func1(0xc0003dad80) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020401510 sp=0xc0204014c8 pc=0x63d298 github.com/traefik/yaegi/interp.setExec.func1(0xc0003db200) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020401558 sp=0xc020401510 pc=0x63d298 github.com/traefik/yaegi/interp.setExec.func1(0xc0003daea0) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc0204015a0 sp=0xc020401558 pc=0x63d298 github.com/traefik/yaegi/interp.setExec(0xc0003daea0) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2832 +0xe4 fp=0xc020401660 sp=0xc0204015a0 pc=0x63d144 github.com/traefik/yaegi/interp.getExec(...) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2794 github.com/traefik/yaegi/interp._select(0xc0003d9e60) github.com/traefik/yaegi@v0.14.1/interp/run.go:3689 +0x215 fp=0xc020401728 sp=0xc020401660 pc=0x6be6b5 github.com/traefik/yaegi/interp.setExec.func1(0xc0003d9e60) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2829 +0x1f6 fp=0xc020401770 sp=0xc020401728 pc=0x63d376 github.com/traefik/yaegi/interp.setExec.func1(0xc0003dad80) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc0204017b8 sp=0xc020401770 pc=0x63d298 github.com/traefik/yaegi/interp.setExec.func1(0xc0003db200) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020401800 sp=0xc0204017b8 pc=0x63d298 github.com/traefik/yaegi/interp.setExec.func1(0xc0003daea0) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020401848 sp=0xc020401800 pc=0x63d298 github.com/traefik/yaegi/interp.setExec(0xc0003daea0) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2832 +0xe4 fp=0xc020401908 sp=0xc020401848 pc=0x63d144 github.com/traefik/yaegi/interp.getExec(...) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2794 github.com/traefik/yaegi/interp._select(0xc0003d9e60) github.com/traefik/yaegi@v0.14.1/interp/run.go:3689 +0x215 fp=0xc0204019d0 sp=0xc020401908 pc=0x6be6b5 github.com/traefik/yaegi/interp.setExec.func1(0xc0003d9e60) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2829 +0x1f6 fp=0xc020401a18 sp=0xc0204019d0 pc=0x63d376 github.com/traefik/yaegi/interp.setExec.func1(0xc0003dad80) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020401a60 sp=0xc020401a18 pc=0x63d298 github.com/traefik/yaegi/interp.setExec.func1(0xc0003db200) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020401aa8 sp=0xc020401a60 pc=0x63d298 github.com/traefik/yaegi/interp.setExec.func1(0xc0003daea0) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020401af0 sp=0xc020401aa8 pc=0x63d298 github.com/traefik/yaegi/interp.setExec(0xc0003daea0) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2832 +0xe4 fp=0xc020401bb0 sp=0xc020401af0 pc=0x63d144 github.com/traefik/yaegi/interp.getExec(...) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2794 github.com/traefik/yaegi/interp._select(0xc0003d9e60) github.com/traefik/yaegi@v0.14.1/interp/run.go:3689 +0x215 fp=0xc020401c78 sp=0xc020401bb0 pc=0x6be6b5 github.com/traefik/yaegi/interp.setExec.func1(0xc0003d9e60) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2829 +0x1f6 fp=0xc020401cc0 sp=0xc020401c78 pc=0x63d376 github.com/traefik/yaegi/interp.setExec.func1(0xc0003dad80) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020401d08 sp=0xc020401cc0 pc=0x63d298 github.com/traefik/yaegi/interp.setExec.func1(0xc0003db200) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020401d50 sp=0xc020401d08 pc=0x63d298 github.com/traefik/yaegi/interp.setExec.func1(0xc0003daea0) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020401d98 sp=0xc020401d50 pc=0x63d298 github.com/traefik/yaegi/interp.setExec(0xc0003daea0) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2832 +0xe4 fp=0xc020401e58 sp=0xc020401d98 pc=0x63d144 github.com/traefik/yaegi/interp.getExec(...) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2794 github.com/traefik/yaegi/interp._select(0xc0003d9e60) github.com/traefik/yaegi@v0.14.1/interp/run.go:3689 +0x215 fp=0xc020401f20 sp=0xc020401e58 pc=0x6be6b5 github.com/traefik/yaegi/interp.setExec.func1(0xc0003d9e60) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2829 +0x1f6 fp=0xc020401f68 sp=0xc020401f20 pc=0x63d376 github.com/traefik/yaegi/interp.setExec.func1(0xc0003dad80) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020401fb0 sp=0xc020401f68 pc=0x63d298 github.com/traefik/yaegi/interp.setExec.func1(0xc0003db200) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020401ff8 sp=0xc020401fb0 pc=0x63d298 github.com/traefik/yaegi/interp.setExec.func1(0xc0003daea0) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020402040 sp=0xc020401ff8 pc=0x63d298 github.com/traefik/yaegi/interp.setExec(0xc0003daea0) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2832 +0xe4 fp=0xc020402100 sp=0xc020402040 pc=0x63d144 github.com/traefik/yaegi/interp.getExec(...) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2794 github.com/traefik/yaegi/interp._select(0xc0003d9e60) github.com/traefik/yaegi@v0.14.1/interp/run.go:3689 +0x215 fp=0xc0204021c8 sp=0xc020402100 pc=0x6be6b5 github.com/traefik/yaegi/interp.setExec.func1(0xc0003d9e60) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2829 +0x1f6 fp=0xc020402210 sp=0xc0204021c8 pc=0x63d376 github.com/traefik/yaegi/interp.setExec.func1(0xc0003dad80) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020402258 sp=0xc020402210 pc=0x63d298 github.com/traefik/yaegi/interp.setExec.func1(0xc0003db200) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc0204022a0 sp=0xc020402258 pc=0x63d298 github.com/traefik/yaegi/interp.setExec.func1(0xc0003daea0) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc0204022e8 sp=0xc0204022a0 pc=0x63d298 github.com/traefik/yaegi/interp.setExec(0xc0003daea0) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2832 +0xe4 fp=0xc0204023a8 sp=0xc0204022e8 pc=0x63d144 github.com/traefik/yaegi/interp.getExec(...) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2794 github.com/traefik/yaegi/interp._select(0xc0003d9e60) github.com/traefik/yaegi@v0.14.1/interp/run.go:3689 +0x215 fp=0xc020402470 sp=0xc0204023a8 pc=0x6be6b5 github.com/traefik/yaegi/interp.setExec.func1(0xc0003d9e60) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2829 +0x1f6 fp=0xc0204024b8 sp=0xc020402470 pc=0x63d376 github.com/traefik/yaegi/interp.setExec.func1(0xc0003dad80) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020402500 sp=0xc0204024b8 pc=0x63d298 github.com/traefik/yaegi/interp.setExec.func1(0xc0003db200) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020402548 sp=0xc020402500 pc=0x63d298 github.com/traefik/yaegi/interp.setExec.func1(0xc0003daea0) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020402590 sp=0xc020402548 pc=0x63d298 github.com/traefik/yaegi/interp.setExec(0xc0003daea0) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2832 +0xe4 fp=0xc020402650 sp=0xc020402590 pc=0x63d144 github.com/traefik/yaegi/interp.getExec(...) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2794 github.com/traefik/yaegi/interp._select(0xc0003d9e60) github.com/traefik/yaegi@v0.14.1/interp/run.go:3689 +0x215 fp=0xc020402718 sp=0xc020402650 pc=0x6be6b5 github.com/traefik/yaegi/interp.setExec.func1(0xc0003d9e60) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2829 +0x1f6 fp=0xc020402760 sp=0xc020402718 pc=0x63d376 github.com/traefik/yaegi/interp.setExec.func1(0xc0003dad80) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc0204027a8 sp=0xc020402760 pc=0x63d298 github.com/traefik/yaegi/interp.setExec.func1(0xc0003db200) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc0204027f0 sp=0xc0204027a8 pc=0x63d298 github.com/traefik/yaegi/interp.setExec.func1(0xc0003daea0) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020402838 sp=0xc0204027f0 pc=0x63d298 github.com/traefik/yaegi/interp.setExec(0xc0003daea0) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2832 +0xe4 fp=0xc0204028f8 sp=0xc020402838 pc=0x63d144 github.com/traefik/yaegi/interp.getExec(...) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2794 github.com/traefik/yaegi/interp._select(0xc0003d9e60) github.com/traefik/yaegi@v0.14.1/interp/run.go:3689 +0x215 fp=0xc0204029c0 sp=0xc0204028f8 pc=0x6be6b5 github.com/traefik/yaegi/interp.setExec.func1(0xc0003d9e60) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2829 +0x1f6 fp=0xc020402a08 sp=0xc0204029c0 pc=0x63d376 github.com/traefik/yaegi/interp.setExec.func1(0xc0003dad80) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020402a50 sp=0xc020402a08 pc=0x63d298 github.com/traefik/yaegi/interp.setExec.func1(0xc0003db200) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020402a98 sp=0xc020402a50 pc=0x63d298 github.com/traefik/yaegi/interp.setExec.func1(0xc0003daea0) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020402ae0 sp=0xc020402a98 pc=0x63d298 github.com/traefik/yaegi/interp.setExec(0xc0003daea0) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2832 +0xe4 fp=0xc020402ba0 sp=0xc020402ae0 pc=0x63d144 github.com/traefik/yaegi/interp.getExec(...) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2794 github.com/traefik/yaegi/interp._select(0xc0003d9e60) github.com/traefik/yaegi@v0.14.1/interp/run.go:3689 +0x215 fp=0xc020402c68 sp=0xc020402ba0 pc=0x6be6b5 github.com/traefik/yaegi/interp.setExec.func1(0xc0003d9e60) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2829 +0x1f6 fp=0xc020402cb0 sp=0xc020402c68 pc=0x63d376 github.com/traefik/yaegi/interp.setExec.func1(0xc0003dad80) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020402cf8 sp=0xc020402cb0 pc=0x63d298 github.com/traefik/yaegi/interp.setExec.func1(0xc0003db200) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020402d40 sp=0xc020402cf8 pc=0x63d298 github.com/traefik/yaegi/interp.setExec.func1(0xc0003daea0) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2818 +0x118 fp=0xc020402d88 sp=0xc020402d40 pc=0x63d298 github.com/traefik/yaegi/interp.setExec(0xc0003daea0) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2832 +0xe4 fp=0xc020402e48 sp=0xc020402d88 pc=0x63d144 github.com/traefik/yaegi/interp.getExec(...) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2794 github.com/traefik/yaegi/interp._select(0xc0003d9e60) github.com/traefik/yaegi@v0.14.1/interp/run.go:3689 +0x215 fp=0xc020402f10 sp=0xc020402e48 pc=0x6be6b5 github.com/traefik/yaegi/interp.setExec.func1(0xc0003d9e60) github.com/traefik/yaegi@v0.14.1/interp/cfg.go:2829 +0x1f6 fp=0xc020402f58 sp=0xc020402f10 pc=0x63d376 exit status 2
v0.14.1
$ go version go version go1.18.3 linux/amd64
Seem like when using channel variable, and it will panic goroutine stack exceeds 1000000000-byte limit
goroutine stack exceeds 1000000000-byte limit
The text was updated successfully, but these errors were encountered:
interp: fix default comm clause in select
877a258
Do not attempt to init a non-existent channel setting when in default communication clause in select. Fixes traefik#1442.
2e88083
Do not attempt to init a non-existent channel setting when in default communication clause in select. Fixes #1442.
mpl
Successfully merging a pull request may close this issue.
The following program
sample.go
triggers an unexpected resultExpected result
// no panic
Got
Yaegi Version
v0.14.1
Additional Notes
$ go version
go version go1.18.3 linux/amd64
Seem like when using channel variable, and it will panic
goroutine stack exceeds 1000000000-byte limit
The text was updated successfully, but these errors were encountered: