The condition disables zinc too eagerly, which can easily lead to half compiled sets of class files after a type error and no attempt to re-compile unless a source file is changed.
The condition disables zinc too eagerly, which can easily
lead to half compiled sets of class files after a type
error and no attempt to re-compile unless a source file
is changed.

This workaround fixes it but needs to run zinc more often
which comes with a roughly 0.1 seconds time penalty every
time (despite classloader caching) for every involved sub build.

A fix would trep zinc's exit code (or call zinc differently)
in order to determine if it succeeded and if it did not
do something that makes it run again the next time, like
deleting the class files or touching a source file.
Probably there is a better way.

tobias-johansson/cbt,tobias-johansson/cbt,tobias-johansson/cbt