Support registering Plugins through the GHC API
authorDaniel Gröber <dxld@darkboxed.org>
Tue, 11 Dec 2018 18:24:12 +0000 (13:24 -0500)
committerBen Gamari <ben@smart-cactus.org>
Tue, 11 Dec 2018 19:23:22 +0000 (14:23 -0500)
commitda05d79d03e5e03e391b381f23c46fc02957abf7
tree4506d0f46dc5df4293ae1933d87b1367be0de831
parent9e763afa9f1f75eacce24291f298f32527591b14
Support registering Plugins through the GHC API

This allows tooling using the GHC API to use plugins internally.
Hopefully this will make it possible to decouple the development of
useful plugins from (currently) kitchen-sink type tooling projects
such as ghc-mod or HIE -- at least to some extent.

Test Plan: validate

Reviewers: bgamari, mpickering

Subscribers: mpickering, alanz, rwbarton, carter

GHC Trac Issues: #15826

Differential Revision: https://phabricator.haskell.org/D5278
compiler/deSugar/Desugar.hs
compiler/iface/MkIface.hs
compiler/main/DynFlags.hs
compiler/main/DynamicLoading.hs
compiler/main/Plugins.hs
compiler/main/Plugins.hs-boot
compiler/typecheck/TcRnDriver.hs
testsuite/tests/plugins/all.T
testsuite/tests/plugins/static-plugins-module.hs [new file with mode: 0644]
testsuite/tests/plugins/static-plugins.hs [new file with mode: 0644]
testsuite/tests/plugins/static-plugins.stdout [new file with mode: 0644]