diff options
author | Himbeer <himbeer@disroot.org> | 2024-09-05 13:30:43 +0200 |
---|---|---|
committer | Himbeer <himbeer@disroot.org> | 2024-09-05 13:35:45 +0200 |
commit | 89a3d3440109abdff7a873b07440c0d1c5e9b2c2 (patch) | |
tree | 7ee170177c66c70f22b2e33163f43a88a37d7468 /cer.go | |
parent | fdfcd6d8d0fe79138a2e5bf66ae7c476c8db9c75 (diff) |
Fix IL generation error handling being unreliable
Diffstat (limited to 'cer.go')
-rw-r--r-- | cer.go | 20 |
1 files changed, 6 insertions, 14 deletions
@@ -11,17 +11,10 @@ package main import ( "fmt" "os" - "sync" ) -var wg sync.WaitGroup - func main() { - wg.Add(3) - - errs := make(chan error) - - go readErrs(errs) + errs := make(chan error, 1) toks := make(chan token, 1024) go lex(os.Stdin, toks, errs) @@ -40,10 +33,9 @@ func main() { go generate(<-root, os.Stdout, errs) - wg.Wait() -} - -func readErrs(errs <-chan error) { - fmt.Fprintln(os.Stderr, <-errs) - os.Exit(1) + err := <-errs + if err != nil { + fmt.Fprintln(os.Stderr, err) + os.Exit(1) + } } |