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/trunk/src/compiler/FLINT/opt/lcontract.sml
ViewVC logotype

Diff of /sml/trunk/src/compiler/FLINT/opt/lcontract.sml

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

revision 118, Fri Jun 5 21:38:17 1998 UTC revision 184, Sun Nov 8 21:18:20 1998 UTC
# Line 63  Line 63 
63    
64        fun cand x = (get x; true) handle _ => false        fun cand x = (get x; true) handle _ => false
65    
66        fun lpfd d (FK_FUN {isrec=SOME _,...}, v, vts, e) = lple d e        fun lpfd d ({isrec=SOME _,...}, v, vts, e) = lple d e
67          | lpfd d (_, v, vts, e) = (enter(v, d); lple d e)          | lpfd d (_, v, vts, e) = (enter(v, d); lple d e)
68    
69        and lple d e =        and lple d e =
# Line 255  Line 255 
255       and lpfd (fk, v, vts, e) =       and lpfd (fk, v, vts, e) =
256         let val nfk =         let val nfk =
257               case fk               case fk
258                of FK_FUN{isrec=SOME t, known, inline, fixed} =>                of {isrec=SOME(t,lk), known, inline, cconv} =>
259                     FK_FUN{isrec=SOME(map ltf t), known=known, inline=inline,                     {isrec=SOME(map ltf t, lk), known=known, inline=inline,
260                             fixed=fixed}                             cconv=cconv}
261                 | _ => fk                 | _ => fk
262          in (nfk, v, map (fn (v,t) => (v,ltf t)) vts, #1(loop e))          in (nfk, v, map (fn (v,t) => (v,ltf t)) vts, #1(loop e))
263         end         end
# Line 311  Line 311 
311                end                end
312    
313            | FIX(fdecs, e) =>            | FIX(fdecs, e) =>
314                let fun g (FK_FUN {isrec=SOME _, ...} :fkind, v, _, _) =                let fun g ({isrec=SOME _, ...} :fkind, v, _, _) =
315                           chkIn(v, StdExp)                           chkIn(v, StdExp)
316                      | g ((_, v, vts, xe) : fundec) =                      | g ((_, v, vts, xe) : fundec) =
317                           chkIn(v, if isCand v then FunExp(od, map #1 vts, xe)                           chkIn(v, if isCand v then FunExp(od, map #1 vts, xe)

Legend:
Removed from v.118  
changed lines
  Added in v.184

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