comparison src/elaborate.sml @ 1346:faad7d01b200

Restore behavior of not complaining about undetermined unification variables when there are other errors
author Adam Chlipala <adam@chlipala.net>
date Thu, 16 Dec 2010 18:40:49 -0500
parents 9e0fa4f6ac93
children b106ca8200b1
comparison
equal deleted inserted replaced
1345:9e0fa4f6ac93 1346:faad7d01b200
4406 handle CUnify' err => (ErrorMsg.errorAt loc "Error in final record unification"; 4406 handle CUnify' err => (ErrorMsg.errorAt loc "Error in final record unification";
4407 cunifyError env err)) 4407 cunifyError env err))
4408 (!delayedUnifs); 4408 (!delayedUnifs);
4409 delayedUnifs := []); 4409 delayedUnifs := []);
4410 4410
4411 ignore (List.exists (fn d => if kunifsInDecl d then 4411 if ErrorMsg.anyErrors () then
4412 (declError env'' (KunifsRemain [d]); 4412 ()
4413 true) 4413 else
4414 else 4414 ignore (List.exists (fn d => if kunifsInDecl d then
4415 false) file); 4415 (declError env'' (KunifsRemain [d]);
4416 true)
4417 else
4418 false) file);
4416 4419
4417 ignore (List.exists (fn d => case cunifsInDecl d of 4420 if ErrorMsg.anyErrors () then
4418 NONE => false 4421 ()
4419 | SOME _ => (declError env'' (CunifsRemain [d]); 4422 else
4420 true)) file); 4423 ignore (List.exists (fn d => case cunifsInDecl d of
4424 NONE => false
4425 | SOME _ => (declError env'' (CunifsRemain [d]);
4426 true)) file);
4421 4427
4422 if ErrorMsg.anyErrors () then 4428 if ErrorMsg.anyErrors () then
4423 () 4429 ()
4424 else 4430 else
4425 app (fn all as (env, _, _, loc) => 4431 app (fn all as (env, _, _, loc) =>