diff src/elaborate.sml @ 1407:7d963b8019e6

Some fixes for tasks and onError handlers
author Adam Chlipala <adam@chlipala.net>
date Thu, 20 Jan 2011 15:11:45 -0500
parents f53ec50097a5
children 18d18a70821e
line wrap: on
line diff
--- a/src/elaborate.sml	Thu Jan 20 12:50:42 2011 -0500
+++ b/src/elaborate.sml	Thu Jan 20 15:11:45 2011 -0500
@@ -4012,7 +4012,8 @@
                          val xpage = (L'.CApp ((L'.CModProj (!basis_r, [], "transaction"), loc), page), loc)
                          val func = (L'.TFun ((L'.CModProj (!basis_r, [], "xbody"), loc), xpage), loc)
                      in
-                         unifyCons env loc t func;
+                         (unifyCons env loc t func
+                          handle CUnify _ => ErrorMsg.error "onError handler has wrong type.");
                          ([(L'.DOnError (n, ms, s), loc)], (env, denv, gs))
                      end)