stale ghc-toolchain target file will result in Prelude.read: no parse
Currently, hadrian reads the ghc-toolchain
-or-./configure
-generated .target
files using read
.
This can give devs an awful Prelude.read: no parse
error if they upgrade the compiler to a more recent version that extended the .target
format but forget to reconfigure.
We should avoid read
and instead provide a custom error...
Turns out this is compounded by hadrian caching dependencies on .target
files and then reading the stale cached file rather than newly generated ones.
Edited by Rodrigo Mesquita