summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Adam Chlipala <adam@chlipala.net>2011-09-03 08:57:13 -0400
committerGravatar Adam Chlipala <adam@chlipala.net>2011-09-03 08:57:13 -0400
commit9d335a56ec401b63a35f0e42d6fb8b69cb686c90 (patch)
tree5eebf2ce73817726e5e44cba7567d7ff63daadb6
parent199e177f2dc8fb4bc37b22553ecea660af3932f5 (diff)
Better detection of type class witnesses in local bindings
-rw-r--r--src/elaborate.sml3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/elaborate.sml b/src/elaborate.sml
index f221f59e..b096813a 100644
--- a/src/elaborate.sml
+++ b/src/elaborate.sml
@@ -2184,6 +2184,9 @@ and elabEdecl denv (dAll as (d, loc), (env, gs)) =
val () = checkCon env e' et pt
+ val env' = E.patBinds env p'
+ (* Redo to get proper detection of type class witnesses *)
+
val pt = normClassConstraint env pt
in
case exhaustive (env, et, [p'], loc) of