| [short] skip 'builds go programs' |
| |
| go build -o cacheprog$GOEXE cacheprog.go |
| env GOCACHEPROG=$GOPATH/src/cacheprog$GOEXE |
| |
| # This should not deadlock |
| go build simple.go |
| ! stderr 'cacheprog closed' |
| |
| -- simple.go -- |
| package main |
| |
| func main() {} |
| -- cacheprog.go -- |
| // This is a minimal GOCACHEPROG program that doesn't respond to close. |
| package main |
| |
| import ( |
| "encoding/json" |
| "os" |
| ) |
| |
| func main() { |
| json.NewEncoder(os.Stdout).Encode(map[string][]string{"KnownCommands": {"close"}}) |
| var res struct{} |
| json.NewDecoder(os.Stdin).Decode(&res) |
| } |