From 3e8fc5122fed2baee3a4d27d51575f6dd5174ea8 Mon Sep 17 00:00:00 2001 From: Adam Chlipala Date: Sun, 20 May 2018 19:28:17 -0400 Subject: Proper error message when the body of a 'val' declaration fails to check against the type annotation --- src/elaborate.sml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/elaborate.sml') diff --git a/src/elaborate.sml b/src/elaborate.sml index 4a04d4bf..51d00bd8 100644 --- a/src/elaborate.sml +++ b/src/elaborate.sml @@ -4046,7 +4046,8 @@ and elabDecl (dAll as (d, loc), (env, denv, gs)) = | L.PAnnot (p', _) => singleVar p' | _ => NONE in - unifyCons env loc et pt; + (unifyCons env loc et pt + handle CUnify (c1, c2, env', err) => expError env (Unify (e', c1, c2, env', err))); (case exhaustive (env, et, [p'], loc) of NONE => () -- cgit v1.2.3