From 28257cae77023f2ccc4cc1c0cd1fbbd329947a00 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. In the following patches, there are: - A few extra safety checks which should be enabled in stage1 - Separation of the th/ testsuite into quotes/ which can be run on stage1 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 --- compiler/ghc.cabal.in | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'compiler/ghc.cabal.in') diff --git a/compiler/ghc.cabal.in b/compiler/ghc.cabal.in index c39c83e22c..09c252b3df 100644 --- a/compiler/ghc.cabal.in +++ b/compiler/ghc.cabal.in @@ -52,6 +52,7 @@ Library containers >= 0.5 && < 0.6, array >= 0.1 && < 0.6, filepath >= 1 && < 1.5, + template-haskell, hpc, transformers, bin-package-db, @@ -65,7 +66,6 @@ Library GHC-Options: -Wall -fno-warn-name-shadowing if flag(ghci) - Build-Depends: template-haskell CPP-Options: -DGHCI Include-Dirs: ../rts/dist/build @FFIIncludeDir@ @@ -164,6 +164,7 @@ Library IdInfo Lexeme Literal + DsMeta Llvm Llvm.AbsSyn Llvm.MetaData @@ -566,7 +567,6 @@ Library if flag(ghci) Exposed-Modules: - DsMeta Convert ByteCodeAsm ByteCodeGen -- cgit v1.2.1