summaryrefslogtreecommitdiff
path: root/testsuite/tests/th
diff options
context:
space:
mode:
authorRichard Eisenberg <eir@cis.upenn.edu>2015-12-24 14:33:19 -0500
committerRichard Eisenberg <eir@cis.upenn.edu>2015-12-24 14:37:39 -0500
commit2db18b8135335da2da9918b722699df684097be9 (patch)
tree660dd90916aa6568694bbe39cdab83c7af98c5d7 /testsuite/tests/th
parent48db13d279d592ed3044cbaf3513854bcb0d3dce (diff)
downloadhaskell-2db18b8135335da2da9918b722699df684097be9.tar.gz
Visible type application
This re-working of the typechecker algorithm is based on the paper "Visible type application", by Richard Eisenberg, Stephanie Weirich, and Hamidhasan Ahmed, to be published at ESOP'16. This patch introduces -XTypeApplications, which allows users to say, for example `id @Int`, which has type `Int -> Int`. See the changes to the user manual for details. This patch addresses tickets #10619, #5296, #10589.
Diffstat (limited to 'testsuite/tests/th')
-rw-r--r--testsuite/tests/th/T10945.stderr59
-rw-r--r--testsuite/tests/th/T8577.stderr3
2 files changed, 33 insertions, 29 deletions
diff --git a/testsuite/tests/th/T10945.stderr b/testsuite/tests/th/T10945.stderr
index 0c1d949053..c84fa38b61 100644
--- a/testsuite/tests/th/T10945.stderr
+++ b/testsuite/tests/th/T10945.stderr
@@ -1,29 +1,32 @@
-T10945.hs:7:11:
- Couldn't match expected type ‘TExp DecsQ’ with actual type ‘[Dec]’
- In the first argument of ‘return’, namely
- ‘[SigD
- (mkName "m")
- (ForallT
- [PlainTV (mkName "a")]
- []
- (AppT (AppT ArrowT (VarT (mkName "a"))) (VarT (mkName "a")))),
- FunD (mkName "m") [Clause [...] (NormalB (VarE (mkName "x"))) []]]’
- In the expression:
- return
- [SigD
- (mkName "m")
- (ForallT
- [PlainTV (mkName "a")]
- []
- (AppT (AppT ArrowT (VarT (mkName "a"))) (VarT (mkName "a")))),
- FunD (mkName "m") [Clause [...] (NormalB (VarE (mkName "x"))) []]]
- In the Template Haskell splice
- $$(return
- [SigD
- (mkName "m")
- (ForallT
- [PlainTV (mkName "a")]
- []
- (AppT (AppT ArrowT (VarT (mkName "a"))) (VarT (mkName "a")))),
- FunD (mkName "m") [Clause [...] (NormalB (VarE (mkName "x"))) []]])
+T10945.hs:7:4: error:
+ • Couldn't match type ‘[Dec]’ with ‘TExp DecsQ’
+ Expected type: Q (TExp DecsQ)
+ Actual type: Q [Dec]
+ • In the expression:
+ return
+ [SigD
+ (mkName "m")
+ (ForallT
+ [PlainTV (mkName "a")]
+ []
+ (AppT (AppT ArrowT (VarT (mkName "a"))) (VarT (mkName "a")))),
+ FunD (mkName "m") [Clause [...] (NormalB (VarE (mkName "x"))) []]]
+ In the Template Haskell splice
+ $$(return
+ [SigD
+ (mkName "m")
+ (ForallT
+ [PlainTV (mkName "a")]
+ []
+ (AppT (AppT ArrowT (VarT (mkName "a"))) (VarT (mkName "a")))),
+ FunD (mkName "m") [Clause [...] (NormalB (VarE (mkName "x"))) []]])
+ In the expression:
+ $$(return
+ [SigD
+ (mkName "m")
+ (ForallT
+ [PlainTV (mkName "a")]
+ []
+ (AppT (AppT ArrowT (VarT (mkName "a"))) (VarT (mkName "a")))),
+ FunD (mkName "m") [Clause ... (NormalB (VarE (mkName "x"))) ...]])
diff --git a/testsuite/tests/th/T8577.stderr b/testsuite/tests/th/T8577.stderr
index 734007e6cc..ef95cc313d 100644
--- a/testsuite/tests/th/T8577.stderr
+++ b/testsuite/tests/th/T8577.stderr
@@ -1,7 +1,8 @@
-T8577.hs:9:11:
+T8577.hs:9:11: error:
Couldn't match type ‘Int’ with ‘Bool’
Expected type: Q (TExp (A Bool))
Actual type: Q (TExp (A Int))
In the expression: y
In the Template Haskell splice $$y
+ In the expression: $$y