diff options
author | 2009-05-14 09:11:58 -0400 | |
---|---|---|
committer | 2009-05-14 09:11:58 -0400 | |
commit | f2fff6993d2b138c2efc5cadaa53ecbdb1c2e1b3 (patch) | |
tree | 40c991c6a8032bc73433e5d3f9c1db78a98674ef /src/core_print.sml | |
parent | fa0e09c65b849b7bad86bfd457e7cf7b0771df9a (diff) |
Fix a nasty binding bug in CoreUtil
Diffstat (limited to 'src/core_print.sml')
-rw-r--r-- | src/core_print.sml | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/core_print.sml b/src/core_print.sml index 971aa4b4..e9d8951e 100644 --- a/src/core_print.sml +++ b/src/core_print.sml @@ -198,12 +198,18 @@ fun p_con_named env n = fun p_patCon env pc = case pc of PConVar n => p_con_named env n - | PConFfi {mod = m, con, arg, ...} => + | PConFfi {mod = m, con, arg, params, ...} => if !debug then box [string "FFIC[", case arg of NONE => box [] - | SOME t => p_con env t, + | SOME t => + let + val k = (KType, ErrorMsg.dummySpan) + val env' = foldl (fn (x, env) => E.pushCRel env x k) env params + in + p_con env' t + end, string "](", string m, string ".", |