From f16ddcee0c64a92ab911a7841a8cf64e3ac671fd Mon Sep 17 00:00:00 2001 From: "Edward Z. Yang" Date: Mon, 4 May 2015 16:10:05 -0700 Subject: Support stage 1 Template Haskell (non-quasi) quotes, fixes #10382. Summary: This commit adds stage 1 support for Template Haskell quoting, e.g. [| ... expr ... |], which is useful for authors of quasiquoter libraries that do not actually need splices. The TemplateHaskell extension now does not unconditionally fail; it only fails if the renamer encounters a splice that it can't run. In order to make sure the referenced data structures are consistent, template-haskell is now a boot library. There are some minor BC changes to template-haskell to make it boot on GHC 7.8. Note for reviewer: big diff changes are simply code being moved out of an ifdef; there was no other substantive change to that code. Signed-off-by: Edward Z. Yang Test Plan: validate Reviewers: simonpj, austin, goldfire Subscribers: bgamari, thomie Differential Revision: https://phabricator.haskell.org/D876 GHC Trac Issues: #10382 --- libraries/template-haskell/template-haskell.cabal | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'libraries/template-haskell/template-haskell.cabal') diff --git a/libraries/template-haskell/template-haskell.cabal b/libraries/template-haskell/template-haskell.cabal index 1c53af392e..bd277d127c 100644 --- a/libraries/template-haskell/template-haskell.cabal +++ b/libraries/template-haskell/template-haskell.cabal @@ -48,9 +48,14 @@ Library Language.Haskell.TH.Lib.Map build-depends: - base == 4.8.*, + base >= 4.7 && < 4.9, pretty == 1.1.* -- We need to set the package key to template-haskell (without a -- version number) as it's magic. - ghc-options: -Wall -this-package-key template-haskell + ghc-options: -Wall + + if impl( ghc >= 7.9 ) + ghc-options: -this-package-key template-haskell + else + ghc-options: -package-name template-haskell -- cgit v1.2.1