Closed dunhamsteve closed 3 months ago
Can we have the same for the other backends too?
It looks like the other backends check the return value for compilation. None of them check the return value when running the result of compilation for REPL :exec
.
The windows CI failure is for chez/forkjoin001
, which produced no output. I believe it's unrelated to this change. It did not fail for me when github ran CI for this commit in my repository. Possibly something timing sensitive?
Description
If chez exits with a status code other than 0 during compilation, Idris ignores the error and completes successfully, leaving a non-working executable. For example, this occurs when an out of memory error occurs during compilation. I've changed
Chez.idr
to check the return code and throw anInternalError
reporting the code if it is not zero.Before this change,
CHEZ=false idris2 -c Hello.idr -o hello
would complete successfully, but./build/exec/hello
would report:after the change, the compilation step fails with: