
and it looks like the language pragmas slurped from the in-memory buffer is
empty
tmod <- GHC.typecheckModule (trace (showGhc . GHC.extensions $
GHC.ms_hspp_opts modSum) pmod)
gives me [] on 8.8 but is [Off ImplicitPrelude, On PackageImports] on
8.6.5... that looks like an 8.8 regression to me.
On Thu, 27 Feb 2020 at 15:02, Tseen She
Quick followup with trace debugging:
On Thu, 27 Feb 2020 at 14:50, Tseen She
wrote: typecheckModule will just use the ParsedSource parseModule produced so it shouldn't do any more file reading.
This is where I am not so sure. I am fairly certain that something has broken in the typechecking line. I will try again with debug tracing to confirm what the ParsedSource looks like.
I can confirm that a showPpr on `pm_parsed_source` has the in-memory version.
But, perhaps, the problem might be that pragmas are not carried over? In my test the "importsOnly" version of the file is preserving two LANGUAGE pragmas that are necessary in order to parse the imports section (one of my tests uses PackageImports). Just a guess, but does 8.8.x now require more manual passing of the dynflags? This seems like a regression / bug to me but I'd be willing to workaround it if it is an intentional behaviour change.