# HG changeset patch # User Adam Chlipala # Date 1226446778 18000 # Node ID 4a241d108a2c00c794e42c7d50c2633c03546ccd # Parent 0fd65c50e0e2d7bc9f0c6059db2e85e7bec22085 Handle nullary transaction pages; avoid marking up headers array when reading cookies diff -r 0fd65c50e0e2 -r 4a241d108a2c src/cjr_print.sml --- a/src/cjr_print.sml Tue Nov 11 16:51:45 2008 -0500 +++ b/src/cjr_print.sml Tue Nov 11 18:39:38 2008 -0500 @@ -1481,9 +1481,9 @@ in box [string "({", newline, - string "uw_Basis_string request = ", + string "uw_Basis_string request = uw_Basis_strdup(ctx, ", p_exp env e, - string ";", + string ");", newline, newline, string "(request ? ", diff -r 0fd65c50e0e2 -r 4a241d108a2c src/tag.sml --- a/src/tag.sml Tue Nov 11 16:51:45 2008 -0500 +++ b/src/tag.sml Tue Nov 11 18:39:38 2008 -0500 @@ -184,6 +184,8 @@ val newDs = map (fn (ek, f, cn) => let + val unit = (TRecord (CRecord ((KType, loc), []), loc), loc) + fun unravel (all as (t, _)) = case t of TFun (dom, ran) => @@ -197,15 +199,14 @@ val (fnam, t, _, tag) = E.lookupENamed env f val (args, result) = unravel t - val unit = (TRecord (CRecord ((KType, loc), []), loc), loc) - val (abs, t) = case args of [] => let - val body = (EWrite (ENamed f, loc), loc) + val app = (EApp ((ENamed f, loc), (ERecord [], loc)), loc) + val body = (EWrite app, loc) in - ((EAbs ("x", unit, unit, body), loc), + (body, (TFun (unit, unit), loc)) end | _ =>