Don't setProgramDynFlags on every :load
authorSimon Marlow <marlowsd@gmail.com>
Thu, 30 Mar 2017 09:31:08 +0000 (10:31 +0100)
committerSimon Marlow <marlowsd@gmail.com>
Tue, 25 Apr 2017 14:23:43 +0000 (15:23 +0100)
commit914842e518bccafac16b3495bcec56be58b0387a
tree104109a330763f28b68056b44ee1cb78d6ca0f03
parent583fa9e3687b49d8c779e6d53a75af9276e4f5cf
Don't setProgramDynFlags on every :load

Summary:
setProgramDynFlags invalidates the whole module graph, forcing
everything to be re-summarised (including preprocessing) on every
:reload.

Looks like this was a bad regression in 8.0, but we didn't notice
because there was no test for it.  Now there is!

Test Plan:
* validate
* new unit test

Reviewers: bgamari, triple, austin, niteria, erikd, jme

Subscribers: rwbarton, thomie

Differential Revision: https://phabricator.haskell.org/D3398
ghc/GHCi/UI.hs
testsuite/tests/ghci/scripts/all.T
testsuite/tests/ghci/scripts/ghci063.script [new file with mode: 0644]