FIX #3079, dodgy parsing of LANGUAGE pragmas I ended up rewriting this horrible bit of code, using (yikes) lazy I/O to slurp in the source file a chunk at a time.  The old code tried to read the file a chunk at a time, but failed with LANGUAGE pragmas because the parser for LANGUAGE has state and the state wasn't being saved between chunks.  We're still closing the Handle eagerly, so there shouldn't be any problems here.
FIX #3079, dodgy parsing of LANGUAGE pragmas
I ended up rewriting this horrible bit of code, using (yikes) lazy I/O
to slurp in the source file a chunk at a time.  The old code tried to
read the file a chunk at a time, but failed with LANGUAGE pragmas
because the parser for LANGUAGE has state and the state wasn't being
saved between chunks.  We're still closing the Handle eagerly, so
there shouldn't be any problems here.

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