Fail earlier if there's an error in a type declaration
Fail earlier if there's an error in a type declaration

This change means that we don't recover from erroneous type
declarations, thereby reporting fewer errors.  But trying to
recover confused GHC (leading to a pattern match failure in
the compiler Trac #7175), and it turned out to be tricky
to fix that.

So this patch takes the more conservative path of failing
earlier, perhaps reporting fewer real errors.

nathyong/microghc-ghc,fmthoma/ghc,acowley/ghc,mettekou/ghc,forked-upstream-packages-for-ghcjs/ghc,siddhanathan/ghc,spacekitteh/smcghc,vTurbine/ghc,gridaphobe/ghc,TomMD/ghc,shlevy/ghc,mcschroeder/ghc,wxwxwwxxx/ghc,TomMD/ghc,vTurbine/ghc,gcampax/ghc,nathyong/microghc-ghc,spacekitteh/smcghc,mfine/ghc,GaloisInc/halvm-ghc,green-haskell/ghc,bitemyapp/ghc,acowley/ghc,oldmanmike/ghc,siddhanathan/ghc,fmthoma/ghc,wxwxwwxxx/ghc,urbanslug/ghc,gridaphobe/ghc,olsner/ghc,shlevy/ghc,sdiehl/ghc,anton-dessiatov/ghc,mfine/ghc,anton-dessiatov/ghc,bitemyapp/ghc,sdiehl/ghc,tjakway/ghcjvm,ryantm/ghc,anton-dessiatov/ghc,mfine/ghc,acowley/ghc,da-x/ghc,ryantm/ghc,spacekitteh/smcghc,wxwxwwxxx/ghc,GaloisInc/halvm-ghc,tjakway/ghcjvm,mfine/ghc,acowley/ghc,anton-dessiatov/ghc,spacekitteh/smcghc,sdiehl/ghc,ezyang/ghc,GaloisInc/halvm-ghc,forked-upstream-packages-for-ghcjs/ghc,nathyong/microghc-ghc,nkaretnikov/ghc,forked-upstream-packages-for-ghcjs/ghc,vTurbine/ghc,nkaretnikov/ghc,ekmett/ghc,vikraman/ghc,vTurbine/ghc,vikraman/ghc,ezyang/ghc,forked-upstream-packages-for-ghcjs/ghc,ekmett/ghc,olsner/ghc,christiaanb/ghc,snoyberg/ghc,urbanslug/ghc,nushio3/ghc,mcschroeder/ghc,GaloisInc/halvm-ghc,snoyberg/ghc,wxwxwwxxx/ghc,AlexanderPankiv/ghc,acowley/ghc,snoyberg/ghc,olsner/ghc,shlevy/ghc,sgillespie/ghc,vikraman/ghc,urbanslug/ghc,nathyong/microghc-ghc,elieux/ghc,sdiehl/ghc,oldmanmike/ghc,nkaretnikov/ghc,wxwxwwxxx/ghc,da-x/ghc,ezyang/ghc,bitemyapp/ghc,forked-upstream-packages-for-ghcjs/ghc,fmthoma/ghc,ghc-android/ghc,lukexi/ghc,hferreiro/replay,urbanslug/ghc,ml9951/ghc,AlexanderPankiv/ghc,elieux/ghc,nushio3/ghc,TomMD/ghc,mettekou/ghc,shlevy/ghc,sdiehl/ghc,siddhanathan/ghc,ezyang/ghc,sdiehl/ghc,jstolarek/ghc,urbanslug/ghc,ghc-android/ghc,vikraman/ghc,mettekou/ghc,mettekou/ghc,gcampax/ghc,tibbe/ghc,holzensp/ghc,tibbe/ghc,mcschroeder/ghc,olsner/ghc,siddhanathan/ghc,hferreiro/replay,ryantm/ghc,snoyberg/ghc,fmthoma/ghc,ekmett/ghc,fmthoma/ghc,AlexanderPankiv/ghc,da-x/ghc,mettekou/ghc,sgillespie/ghc,christiaanb/ghc,nathyong/microghc-ghc,frantisekfarka/ghc-dsi,da-x/ghc,gcampax/ghc,oldmanmike/ghc,ml9951/ghc,nkaretnikov/ghc,olsner/ghc,ezyang/ghc,anton-dessiatov/ghc,sgillespie/ghc,da-x/ghc,vTurbine/ghc,sgillespie/ghc,mcschroeder/ghc,frantisekfarka/ghc-dsi,ekmett/ghc,green-haskell/ghc,olsner/ghc,TomMD/ghc,nushio3/ghc,vikraman/ghc,TomMD/ghc,ghc-android/ghc,elieux/ghc,siddhanathan/ghc,ghc-android/ghc,AlexanderPankiv/ghc,nushio3/ghc,hferreiro/replay,gridaphobe/ghc,mettekou/ghc,forked-upstream-packages-for-ghcjs/ghc,ml9951/ghc,gridaphobe/ghc,frantisekfarka/ghc-dsi,shlevy/ghc,fmthoma/ghc,gridaphobe/ghc,elieux/ghc,gcampax/ghc,green-haskell/ghc,elieux/ghc,tibbe/ghc,spacekitteh/smcghc,ml9951/ghc,ryantm/ghc,christiaanb/ghc,nushio3/ghc,oldmanmike/ghc,snoyberg/ghc,ezyang/ghc,gcampax/ghc,lukexi/ghc-7.8-arm64,ml9951/ghc,holzensp/ghc,lukexi/ghc-7.8-arm64,oldmanmike/ghc,christiaanb/ghc,urbanslug/ghc,hferreiro/replay,mcschroeder/ghc,nushio3/ghc,mfine/ghc,oldmanmike/ghc,acowley/ghc,nkaretnikov/ghc,jstolarek/ghc,vikraman/ghc,tjakway/ghcjvm,nushio3/ghc,mcschroeder/ghc,gcampax/ghc,GaloisInc/halvm-ghc,sgillespie/ghc,hferreiro/replay,lukexi/ghc,GaloisInc/halvm-ghc,da-x/ghc,green-haskell/ghc,acowley/ghc,snoyberg/ghc,christiaanb/ghc,snoyberg/ghc,elieux/ghc,hferreiro/replay,ml9951/ghc,tjakway/ghcjvm,ryantm/ghc,christiaanb/ghc,AlexanderPankiv/ghc,ghc-android/ghc,anton-dessiatov/ghc,anton-dessiatov/ghc,lukexi/ghc-7.8-arm64,oldmanmike/ghc,green-haskell/ghc,urbanslug/ghc,shlevy/ghc,mcschroeder/ghc,gridaphobe/ghc,nkaretnikov/ghc,sdiehl/ghc,lukexi/ghc,mfine/ghc,holzensp/ghc,sgillespie/ghc,olsner/ghc,shlevy/ghc,nkaretnikov/ghc,hferreiro/replay,ml9951/ghc,siddhanathan/ghc,nathyong/microghc-ghc,AlexanderPankiv/ghc,lukexi/ghc,frantisekfarka/ghc-dsi,siddhanathan/ghc,bitemyapp/ghc,gridaphobe/ghc,lukexi/ghc-7.8-arm64,mfine/ghc,vTurbine/ghc,jstolarek/ghc,jstolarek/ghc,TomMD/ghc,tjakway/ghcjvm,lukexi/ghc-7.8-arm64,vikraman/ghc,fmthoma/ghc,ghc-android/ghc,elieux/ghc,vTurbine/ghc,AlexanderPankiv/ghc,mettekou/ghc,holzensp/ghc,christiaanb/ghc,lukexi/ghc,frantisekfarka/ghc-dsi,jstolarek/ghc,tjakway/ghcjvm,bitemyapp/ghc,nathyong/microghc-ghc,ghc-android/ghc,sgillespie/ghc,wxwxwwxxx/ghc,TomMD/ghc,GaloisInc/halvm-ghc,tjakway/ghcjvm,ml9951/ghc,wxwxwwxxx/ghc,ekmett/ghc,forked-upstream-packages-for-ghcjs/ghc,tibbe/ghc,gcampax/ghc,ezyang/ghc,tibbe/ghc,holzensp/ghc,da-x/ghc