aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/cjr_print.sml
diff options
context:
space:
mode:
authorGravatar Adam Chlipala <adamc@hcoop.net>2008-10-21 09:50:19 -0400
committerGravatar Adam Chlipala <adamc@hcoop.net>2008-10-21 09:50:19 -0400
commitf750e27d0e16da032227dbc71ecb7c63f5b77bc7 (patch)
treec1cd77d3f82dedbd270450204612186c547a83e8 /src/cjr_print.sml
parent4f6178266ffe0bf5423878b46486b82c19a56810 (diff)
Binops; equality tested on int; lame 404 substitute
Diffstat (limited to 'src/cjr_print.sml')
-rw-r--r--src/cjr_print.sml21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/cjr_print.sml b/src/cjr_print.sml
index aee23717..5f430ccf 100644
--- a/src/cjr_print.sml
+++ b/src/cjr_print.sml
@@ -609,6 +609,25 @@ fun p_exp' par env (e, loc) =
p_list_sep (box [string ",", space]) (p_exp env) args,
string ")"])
+ | EUnop (s, e1) =>
+ parenIf par (box [string s,
+ space,
+ p_exp' true env e1])
+
+ | EBinop ("!strcmp", e1, e2) =>
+ box [string "!strcmp(",
+ p_exp env e1,
+ string ",",
+ space,
+ p_exp env e2,
+ string ")"]
+ | EBinop (s, e1, e2) =>
+ parenIf par (box [p_exp' true env e1,
+ space,
+ string s,
+ space,
+ p_exp' true env e2])
+
| ERecord (i, xes) => box [string "({",
space,
string "struct",
@@ -2060,6 +2079,8 @@ fun p_file env (ds, ps) =
newline,
p_list_sep newline (fn x => x) pds',
newline,
+ string "uw_error(ctx, FATAL, \"Unknown page\");",
+ newline,
string "}",
newline,
newline,