summaryrefslogtreecommitdiff
path: root/testsuite/tests/th/T7276.stderr
diff options
context:
space:
mode:
authorRyan Scott <ryan.gl.scott@gmail.com>2017-07-28 11:35:37 -0400
committerRyan Scott <ryan.gl.scott@gmail.com>2017-07-28 11:35:38 -0400
commitb3b564fbc0ceb06e6a880289935449fda7d33f31 (patch)
tree7139b12f07d6be43b05fd5dfedfaa93fcb5c9b83 /testsuite/tests/th/T7276.stderr
parentd6186496d414638aa66a677bb4e555dba376ec97 (diff)
downloadhaskell-b3b564fbc0ceb06e6a880289935449fda7d33f31.tar.gz
Merge types and kinds in DsMeta
Summary: Types and kinds are now the same in GHC... well, except in the code that involves Template Haskell, where types and kinds are given separate treatment. This aims to unify that treatment in the `DsMeta` module. The gist of this patch is replacing all uses of `repLKind` with `repLTy`. This is isn't quite as simple as one might imagine, since `repLTy` returns a `Core (Q Type)` (a monadic expression), whereas `repLKind` returns a `Core Kind` (a pure expression). This causes many awkward impedance mismatches. One option would be to change every combinator in `Language.Haskell.TH.Lib` to take `KindQ` as an argument instead of `Kind`. But this would be a breaking change of colossal proportions. Instead, this patch takes a somewhat different approach. This migrates the existing `Language.Haskell.TH.Lib` module to `Language.Haskell.TH.Lib.Internal`, and changes all `Kind`-related combinators in `Language.Haskell.TH.Lib.Internal` to live in `Q`. The new `Language.Haskell.TH.Lib` module then re-exports most of `Language.Haskell.TH.Lib.Internal` with the exception of the `Kind`-related combinators, for which it redefines them to be their current definitions (which don't live in `Q`). This allows us to retain backwards compatibility with previous `template-haskell` releases, but more importantly, it allows GHC to make as many changes to the `Internal` code as it wants for its purposes without fear of disrupting the public API. This solves half of #11785 (the other half being `TcSplice`). Test Plan: ./validate Reviewers: goldfire, austin, bgamari Reviewed By: goldfire Subscribers: rwbarton, thomie GHC Trac Issues: #11785 Differential Revision: https://phabricator.haskell.org/D3751
Diffstat (limited to 'testsuite/tests/th/T7276.stderr')
-rw-r--r--testsuite/tests/th/T7276.stderr4
1 files changed, 2 insertions, 2 deletions
diff --git a/testsuite/tests/th/T7276.stderr b/testsuite/tests/th/T7276.stderr
index 93c9a0c835..4fa2a3c4c9 100644
--- a/testsuite/tests/th/T7276.stderr
+++ b/testsuite/tests/th/T7276.stderr
@@ -2,7 +2,7 @@
T7276.hs:6:8: error:
• Couldn't match type ‘[Language.Haskell.TH.Syntax.Dec]’
with ‘Language.Haskell.TH.Syntax.Exp’
- Expected type: Language.Haskell.TH.Lib.ExpQ
- Actual type: Language.Haskell.TH.Lib.DecsQ
+ Expected type: Language.Haskell.TH.Lib.Internal.ExpQ
+ Actual type: Language.Haskell.TH.Lib.Internal.DecsQ
• In the expression: [d| y = 3 |]
In the untyped splice: $([d| y = 3 |])