summaryrefslogtreecommitdiff
path: root/src/cjr_print.sml
diff options
context:
space:
mode:
authorGravatar Adam Chlipala <adamc@hcoop.net>2009-09-17 09:25:03 -0400
committerGravatar Adam Chlipala <adamc@hcoop.net>2009-09-17 09:25:03 -0400
commit3ffa1f31100277170aa1ce46793d788a97f169c0 (patch)
treed1dfd2941652183729757ea8648d7e598a5ae3b2 /src/cjr_print.sml
parent9dd85d900dd89c488884ed548e2851f1aaeb1d61 (diff)
Print char patterns in C
Diffstat (limited to 'src/cjr_print.sml')
-rw-r--r--src/cjr_print.sml13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/cjr_print.sml b/src/cjr_print.sml
index 538e53f2..9f337b5b 100644
--- a/src/cjr_print.sml
+++ b/src/cjr_print.sml
@@ -193,6 +193,19 @@ fun p_pat (env, exit, depth) (p, loc) =
space,
exit],
env)
+ | PPrim (Prim.Char ch) =>
+ (box [string "if",
+ space,
+ string "(disc",
+ string (Int.toString depth),
+ space,
+ string "!=",
+ space,
+ Prim.p_t_GCC (Prim.Char ch),
+ string ")",
+ space,
+ exit],
+ env)
| PPrim _ => raise Fail "CjrPrint: Disallowed PPrim primitive"
| PCon (dk, pc, po) =>