It jumples terminal colours when using winpty:
Pass -fdiagnostics-color=never to ghc if --no-colour is set
-fdiagnostics-color=never