From bb5e111d2980c930201a3df83158d1323e089b60 Mon Sep 17 00:00:00 2001
From: Simon Peyton Jones <simon.peytonjones@gmail.com>
Date: Thu, 25 Apr 2024 10:05:58 +0200
Subject: [PATCH] Do a qlUnify when resuming

...tricky!
---
 compiler/GHC/Tc/Gen/App.hs | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/compiler/GHC/Tc/Gen/App.hs b/compiler/GHC/Tc/Gen/App.hs
index 3cae655fbbb2..e3ec10999a30 100644
--- a/compiler/GHC/Tc/Gen/App.hs
+++ b/compiler/GHC/Tc/Gen/App.hs
@@ -519,7 +519,9 @@ tcValArg do_ql (EValArgQL { eaql_ctxt    = ctxt
                  -- type ActionM a = forall m . (..) => ActionT (Draw m) a
                do { case mb_delta of
                        Nothing              -> return ()
-                       Just (delta, wanted) -> do { demoteQLDelta delta
+                       Just (delta, wanted) -> do { qlUnify delta arg_rho res_rho
+                                                    -- ToDo: tricky point, needs documentation
+                                                  ; demoteQLDelta delta
                                                   ; emitConstraints wanted }
                   ; finishApp do_ql rn_expr rn_head tc_fun inst_args res_rho
                               (Check arg_rho) }
-- 
GitLab