Home My Page Projects Code Snippets Project Openings SML/NJ
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

SCM Repository

[smlnj] Diff of /sml/branches/primop-branch-3/compiler/FLINT/reps/reify.sml
ViewVC logotype

Diff of /sml/branches/primop-branch-3/compiler/FLINT/reps/reify.sml

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 2388, Sat Apr 7 14:10:04 2007 UTC revision 2389, Mon Apr 9 17:03:21 2007 UTC
# Line 94  Line 94 
94      fun dcf ((name,rep,lt),ts) = (name,rep,lt_vfn)      fun dcf ((name,rep,lt),ts) = (name,rep,lt_vfn)
95      fun dargtyc ((name,rep,lt), ts) =      fun dargtyc ((name,rep,lt), ts) =
96        let val skt = LT.lt_pinst(lt, map (fn _ => LT.tcc_void) ts)        let val skt = LT.lt_pinst(lt, map (fn _ => LT.tcc_void) ts)
97            val (tc, _) = LT.tcd_parrow (LT.ltd_tyc skt)            val (tc, _) = LT.tcd_parrow (LT.ltd_tyc skt) handle LT.DeconExn => bug "reify in dargtyc"
98            val nt = ltf (LT.lt_pinst(lt, ts))            val nt = ltf (LT.lt_pinst(lt, ts))
99            val (rt, _) = LT.tcd_parrow (LT.ltd_tyc nt)            val (rt, _) = LT.tcd_parrow (LT.ltd_tyc nt) handle LT.DeconExn => bug "reify in dargtyc 2"
100         in (tc, rt, (name,rep,lt_vfn))         in (tc, rt, (name,rep,lt_vfn))
101        end        end
102    
# Line 119  Line 119 
119                 let val ndc = dcf(dc, []) and z = mkv() and w = mkv()                 let val ndc = dcf(dc, []) and z = mkv() and w = mkv()
120                     (* WARNING: the 3rd field should (string list) *)                     (* WARNING: the 3rd field should (string list) *)
121                     val (ax,_) = LT.tcd_parrow (LT.ltd_tyc nt)                     val (ax,_) = LT.tcd_parrow (LT.ltd_tyc nt)
122                           handle LT.DeconExn => bug "transform"
123                     val lt_exr =                     val lt_exr =
124                       LT.tcc_tuple [LT.tcc_void, tcf ax, LT.tcc_int]                       LT.tcc_tuple [LT.tcc_void, tcf ax, LT.tcc_int]
125                  in (DATAcon(ndc, [], z),                  in (DATAcon(ndc, [], z),
# Line 190  Line 191 
191                | CON ((_, DA.EXN (DA.LVAR x), nt), [], u, v, e) =>                | CON ((_, DA.EXN (DA.LVAR x), nt), [], u, v, e) =>
192                    let val z = mkv()                    let val z = mkv()
193                        val (ax,_) = LT.tcd_parrow (LT.ltd_tyc nt)                        val (ax,_) = LT.tcd_parrow (LT.ltd_tyc nt)
194                              handle LT.DeconExn => bug "transform loop"
195                        val lt_exr =                        val lt_exr =
196                          LT.tcc_tuple [LT.tcc_void, tcf ax, LT.tcc_int]                          LT.tcc_tuple [LT.tcc_void, tcf ax, LT.tcc_int]
197                     in RECORD(FU.rk_tuple, [VAR x, u, INT 0], z,                     in RECORD(FU.rk_tuple, [VAR x, u, INT 0], z,

Legend:
Removed from v.2388  
changed lines
  Added in v.2389

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0