diff src/mono.sml @ 182:d11754ffe252

Compiled pattern matching to C
author Adam Chlipala <adamc@hcoop.net>
date Sun, 03 Aug 2008 12:43:20 -0400
parents eb3f9913bf31
children 19ee24bffbc0
line wrap: on
line diff
--- a/src/mono.sml	Sun Aug 03 11:17:33 2008 -0400
+++ b/src/mono.sml	Sun Aug 03 12:43:20 2008 -0400
@@ -43,10 +43,10 @@
 
 datatype pat' =
          PWild
-       | PVar of string
+       | PVar of string * typ
        | PPrim of Prim.t
        | PCon of patCon * pat option
-       | PRecord of (string * pat) list
+       | PRecord of (string * pat * typ) list
 
 withtype pat = pat' located
 
@@ -63,7 +63,7 @@
        | ERecord of (string * exp * typ) list
        | EField of exp * string
 
-       | ECase of exp * (pat * exp) list * typ
+       | ECase of exp * (pat * exp) list * { disc : typ, result : typ }
 
        | EStrcat of exp * exp