diff options
author | Simon Peyton Jones <simonpj@microsoft.com> | 2020-01-08 16:29:04 +0000 |
---|---|---|
committer | Marge Bot <ben+marge-bot@smart-cactus.org> | 2020-01-12 21:32:44 -0500 |
commit | 1fd766ca7ac1feea1e9c752f8ce438fab8e01d35 (patch) | |
tree | f25a493cfbb54c7159b31db8e0c48d9341ce20a6 /compiler | |
parent | 61916c5d038c3b0e87148d3b46149a32f7379ea9 (diff) | |
download | haskell-1fd766ca7ac1feea1e9c752f8ce438fab8e01d35.tar.gz |
Comments about constraint floating
Diffstat (limited to 'compiler')
-rw-r--r-- | compiler/typecheck/TcSimplify.hs | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/compiler/typecheck/TcSimplify.hs b/compiler/typecheck/TcSimplify.hs index ddd53145ca..63a1552932 100644 --- a/compiler/typecheck/TcSimplify.hs +++ b/compiler/typecheck/TcSimplify.hs @@ -2544,6 +2544,11 @@ Here (1,2,3) are handled by the "seed_skols" calculation, and The possible dependence on givens, and evidence bindings, is more subtle than we'd realised at first. See #14584. +How can (4) arise? Suppose we have (k :: *), (a :: k), and ([G} k ~ *). +Then form an equality like (a ~ Int) we might end up with + [W] co1 :: k ~ * + [W] co2 :: (a |> co1) ~ Int + ********************************************************************************* * * |