{"record":{"id":"c2321f8f2dccebfc","repo":"go-delve/delve","slug":"follow-exec-not-implemented","errorCode":null,"errorMessage":"follow exec not implemented","messagePattern":"follow exec not implemented","errorType":"error_code","errorClass":null,"httpStatus":null,"severity":"warning","filePath":"pkg/proc/native/followexec_other.go","lineNumber":9,"sourceCode":"//go:build !linux && !windows\n\npackage native\n\nimport \"errors\"\n\n// FollowExec enables (or disables) follow exec mode\nfunc (*nativeProcess) FollowExec(bool) error {\n\treturn errors.New(\"follow exec not implemented\")\n}\n\nfunc (*processGroup) detachChild(*nativeProcess) error {\n\tpanic(\"not implemented\")\n}\n","sourceCodeStart":1,"sourceCodeEnd":15,"githubUrl":"https://github.com/go-delve/delve/blob/a23773e6c31361e43246bc43a424ee009679b174/pkg/proc/native/followexec_other.go#L1-L15","documentation":"FollowExec mode (automatically attaching to child processes after exec) is not implemented on this platform's native backend. The stub returns this error unconditionally, so the feature simply cannot be enabled here.","triggerScenarios":"Calling (*nativeProcess).FollowExec(true or false) on any platform compiled with followexec_other.go (i.e., not linux with the follow-exec implementation), e.g. via debugger.FollowExec on macOS or FreeBSD.","commonSituations":"User enables follow-exec-mode in the Delve config on a non-Linux OS; CLI/API user toggles follow exec while debugging on macOS/Windows/FreeBSD native backend.","solutions":["Do not call FollowExec on this platform; check platform support first","Use dlv's exec-based workflow manually: let the child run separately and attach with dlv attach <pid>","If Linux support is needed, run the debugger with the native Linux backend where follow exec is implemented","File/check an upstream issue if you need follow-exec on your OS"],"exampleFix":"// before\ndbg.FollowExec(true)\n// after\nif runtime.GOOS == \"linux\" {\n    dbg.FollowExec(true)\n} else {\n    log.Println(\"follow exec not supported on\", runtime.GOOS)\n}","handlingStrategy":"fallback","validationCode":"// gate follow-exec on platform support before calling\nvar followExecSupported = runtime.GOOS == \"linux\"\nif !followExecSupported {\n    return errors.New(\"follow exec is only supported on linux\")\n}","typeGuard":null,"tryCatchPattern":"if err := dbg.FollowExec(true); err != nil {\n    if strings.Contains(err.Error(), \"follow exec not implemented\") {\n        log.Println(\"follow-exec unavailable; falling back to manual attach\")\n    } else {\n        return err\n    }\n}","preventionTips":["Check delve's platform support matrix before enabling follow-exec-mode","On non-Linux OSes, attach to children manually with dlv attach <pid>","Expose follow-exec only behind a supported-platform flag in tooling built on delve","Watch upstream issues for follow-exec ports to other platforms"],"tags":["follow-exec","platform-unsupported","native-backend"],"backgroundTag":"feature-not-implemented-on-platform","analyzedSha":"a23773e6c31361e43246bc43a424ee009679b174","analyzedAt":"2026-08-31T15:12:45.221Z","schemaVersion":2},"datasetVersion":"2026-08-31T19:17:28.585Z"}