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 202, Sun Dec 13 02:29:45 1998 UTC revision 251, Mon Apr 19 02:55:26 1999 UTC
# Line 18  Line 18 
18  in  in
19    
20  fun bug s = ErrorMsg.impossible ("LContract: "^s)  fun bug s = ErrorMsg.impossible ("LContract: "^s)
21  val say = Control.Print.say  val say = Control_Print.say
22  val ident = fn x => x  val ident = fn x => x
23  fun all p (a::r) = p a andalso all p r | all p nil = true  fun all p (a::r) = p a andalso all p r | all p nil = true
24    
# Line 71  Line 71 
71          let fun psv (VAR x) = kill x          let fun psv (VAR x) = kill x
72                | psv _ = ()                | psv _ = ()
73    
74              and pst (v, vks, e) = lple (DI.next d) e              and pst (tfk, v, vks, e) = lple (DI.next d) e
75    
76              and pse (RET vs) = app psv vs              and pse (RET vs) = app psv vs
77                | pse (LET(vs, e1, e2)) = (pse e1; pse e2)                | pse (LET(vs, e1, e2)) = (pse e1; pse e2)
# Line 319  Line 319 
319                       end                       end
320                   | _ => (APP(lpsv u, map lpsv us), false))                   | _ => (APP(lpsv u, map lpsv us), false))
321    
322            | TFN(tfdec as (v, tvks, xe), e) =>            | TFN(tfdec as (tfk, v, tvks, xe), e) =>
323                lplet ((fn z => TFN((v, tvks,                lplet ((fn z => TFN((tfk, v, tvks,
324                                #1(loop xe)), z)),                                #1(loop xe)), z)),
325                       true, v, StdExp, e)                       true, v, StdExp, e)
326            | TAPP(u, ts) => (TAPP(lpsv u, ts), true)            | TAPP(u, ts) => (TAPP(lpsv u, ts), true)
# Line 388  Line 388 
388    
389  end (* toplevel local *)  end (* toplevel local *)
390  end (* structure LContract *)  end (* structure LContract *)
   
   
 (*  
  * $Log$  
  *)  

Legend:
Removed from v.202  
changed lines
  Added in v.251

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