summaryrefslogtreecommitdiff
path: root/testsuite/tests/polykinds/T14172.stderr
diff options
context:
space:
mode:
authorSimon Peyton Jones <simonpj@microsoft.com>2019-06-03 14:46:39 +0100
committerSimon Peyton Jones <simonpj@microsoft.com>2019-06-03 14:46:39 +0100
commit98cd2fad2629919daaebc9b37142c982958fa8f7 (patch)
treec42ad0ad35cf83da84faf01a0352fade4df5e76c /testsuite/tests/polykinds/T14172.stderr
parent799b1d26977b5841aa580e07c8f8e65356eed785 (diff)
downloadhaskell-98cd2fad2629919daaebc9b37142c982958fa8f7.tar.gz
Preserve ShadowInfo when rewriting evidencewip/T16735
When the canonicaliser rewrites evidence of a Wanted, it should preserve the ShadowInfo (ctev_nosh) field. That is, a WDerive should rewrite to WDerive, and WOnly to WOnly. Previously we were unconditionally making a WDeriv, thereby rewriting WOnly to WDeriv. This bit Nick Frisby (issue #16735) in the context of his plugin, but we don't have a compact test case. The fix is simple, but does involve a bit more plumbing, to pass the old ShadowInfo around, to use when building the new Wanted.
Diffstat (limited to 'testsuite/tests/polykinds/T14172.stderr')
-rw-r--r--testsuite/tests/polykinds/T14172.stderr8
1 files changed, 4 insertions, 4 deletions
diff --git a/testsuite/tests/polykinds/T14172.stderr b/testsuite/tests/polykinds/T14172.stderr
index 41790105cb..6a0d3927eb 100644
--- a/testsuite/tests/polykinds/T14172.stderr
+++ b/testsuite/tests/polykinds/T14172.stderr
@@ -11,12 +11,12 @@ T14172.hs:6:46: error:
In the type ‘(a -> f b) -> g a -> f (h _)’
T14172.hs:7:19: error:
- • Occurs check: cannot construct the infinite type: a ~ g'1 a
+ • Occurs check: cannot construct the infinite type: a ~ g'0 a
Expected type: (f'0 a -> f (f'0 b))
- -> Compose f'0 g'1 a -> f (h a')
- Actual type: (Unwrapped (Compose f'0 g'1 a)
+ -> Compose f'0 g'0 a -> f (h a')
+ Actual type: (Unwrapped (Compose f'0 g'0 a)
-> f (Unwrapped (h a')))
- -> Compose f'0 g'1 a -> f (h a')
+ -> Compose f'0 g'0 a -> f (h a')
• In the first argument of ‘(.)’, namely ‘_Wrapping Compose’
In the expression: _Wrapping Compose . traverse
In an equation for ‘traverseCompose’: