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/cpsopt/contract.sml
ViewVC logotype

Diff of /sml/trunk/src/compiler/FLINT/cpsopt/contract.sml

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

revision 1333, Thu May 22 17:12:13 2003 UTC revision 1334, Thu May 22 22:46:30 2003 UTC
# Line 731  Line 731 
731                          else (click "i"; g' e)                          else (click "i"; g' e)
732                | SOME w' => (click "j"; newname(w,w'); g' e)                | SOME w' => (click "j"; newname(w,w'); g' e)
733         else LOOKER(P.gethdlr,[],w,t,g (SOME(VAR w)) e))         else LOOKER(P.gethdlr,[],w,t,g (SOME(VAR w)) e))
734     | SETTER(P.sethdlr,[v as VAR vv],e) =>     | SETTER(P.sethdlr,[v],e) =>
735        let val v' as VAR vv' = ren v        let val v' = ren v
736            val e' = g (SOME v') e            val e' = g (SOME v') e
737              fun sameVar (VAR x, VAR y) = x = y
738                | sameVar _ = false
739        in  if !CG.handlerfold        in  if !CG.handlerfold
740            then case hdlr            then case hdlr
741                   of SOME (v'' as VAR vv'') =>                   of SOME v'' =>
742                       if vv'=vv'' then (click "k"; use_less v''; e')                       if sameVar (v', v'') then (click "k"; use_less v''; e')
743                       else SETTER(P.sethdlr,[v'],e')                       else SETTER(P.sethdlr,[v'],e')
744                    | _ => SETTER(P.sethdlr,[v'],e')                    | _ => SETTER(P.sethdlr,[v'],e')
745            else SETTER(P.sethdlr,[v'],e')            else SETTER(P.sethdlr,[v'],e')

Legend:
Removed from v.1333  
changed lines
  Added in v.1334

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