on master help sign in
Normalise provider types before checking
be4cff0David Raymond Christiansen
src/Idris/ElabDecls.hs+1−1
@@ -630,7 +630,7 @@ elabProvider info syn fc n ty tm
630
630
631 -- Elaborate the provider term to TT and check that the type matches
631 -- Elaborate the provider term to TT and check that the type matches
632 (e, et) <- elabVal toplevel False tm
632 (e, et) <- elabVal toplevel False tm
633− unless (isProviderOf ty' et) $
633+ unless (isProviderOf (normalise ctxt [] ty') et) $
634 ifail $ "Expected provider type IO (Provider (" ++
634 ifail $ "Expected provider type IO (Provider (" ++
635 show ty' ++ "))" ++ ", got " ++ show et ++ " instead."
635 show ty' ++ "))" ++ ", got " ++ show et ++ " instead."
636
636