Use checkRecTc to improve demand analysis slightly
Use checkRecTc to improve demand analysis slightly

We now look inside one layer of recursive types, thanks to
checkRecTc.  It does mean we need an additional environment
field, ae_rec_tc.

I also commented out the apparently over-conservative test
at coercions.  I'm not 100% sure I'm right here, but I can't
see why the simpler code will go wrong, so I'm going to suck
it and see.

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