Don't pass HscEnv to functions in the Hsc monad
authorDouglas Wilson <douglas.wilson@gmail.com>
Tue, 3 Oct 2017 19:08:47 +0000 (15:08 -0400)
committerBen Gamari <ben@smart-cactus.org>
Tue, 3 Oct 2017 21:07:37 +0000 (17:07 -0400)
commit4899a86b69a3cf8b487329d5db8bb205152950ce
tree2d591913ad2b653a8600e672201e346fbc7bfd1e
parentf3f624aeb1360c1f902930b3cc62346d2e5201c0
Don't pass HscEnv to functions in the Hsc monad

`Hsc` is a reader monad in `HscEnv`. Several functions in HscMain were
taking parameters of type `HscEnv` or `DynFlags`, and returning values
of type `Hsc a`. This patch removes those parameters in favour of asking
them from the context.

This removes a source of confusion and should make refactoring a bit
easier.

Test Plan: ./validate

Reviewers: austin, bgamari

Reviewed By: bgamari

Subscribers: rwbarton, thomie

Differential Revision: https://phabricator.haskell.org/D4061
compiler/main/HscMain.hs