Fix recompilation checking of pure plugins
authorDaniel Gröber <dxld@darkboxed.org>
Tue, 11 Dec 2018 23:36:00 +0000 (18:36 -0500)
committerBen Gamari <ben@smart-cactus.org>
Thu, 13 Dec 2018 04:25:02 +0000 (23:25 -0500)
commitefb6a30f0b70948ba51497bf2831e009ec6e1378
treed39e605b08ddda0c44f8de95ccf9adb65a0af7ae
parentf0eb404e1b5b296048da3d0b9efe42d5aa9e0f1d
Fix recompilation checking of pure plugins

Previously when switching from using a Plugin with
`RecompMaybe`/`ForceRecompile` in `pluginRecompile` to a Plugin with
`NoForceRecompile` GHC would never even consider recompiling.

However the previously active plugin could have modified the
compilation output so we should recompile.

Test Plan: validate

Reviewers: bgamari, mpickering

Subscribers: mpickering, rwbarton, carter

GHC Trac Issues: #15858

Differential Revision: https://phabricator.haskell.org/D5299
compiler/iface/MkIface.hs
compiler/main/DynFlags.hs
docs/users_guide/extending_ghc.rst
testsuite/tests/plugins/T15858.script [new file with mode: 0644]
testsuite/tests/plugins/T15858.stderr [new file with mode: 0644]
testsuite/tests/plugins/all.T