Reducing Go programs
summary
A Go program reducer reproduces the smallest program that still triggers a bug, using the same ideas as C-Reduce and implemented with the go/ packages; it handles real compiler crashes and panics found by fuzzers like go-smith. The reducer actually rewrites and re-parses ASTs, re-typechecks each candidate (about a hundred milliseconds per check), and has already turned huge fuzzed inputs into tiny reproducible cases for compiler internal errors while coping with unused-variable and type-checker fragility.
AI-written summary · about








