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/trans/translate.sml
ViewVC logotype

Diff of /sml/trunk/src/compiler/FLINT/trans/translate.sml

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

revision 102, Thu May 14 05:53:10 1998 UTC revision 109, Fri May 29 02:12:55 1998 UTC
# Line 127  Line 127 
127    
128  fun CON' ((_, DA.REF, lt), ts, e) = APP (PRIM (PO.MAKEREF, lt, ts), e)  fun CON' ((_, DA.REF, lt), ts, e) = APP (PRIM (PO.MAKEREF, lt, ts), e)
129    | CON' ((_, DA.SUSP (SOME(DA.LVAR d, _)), lt), ts, e) =    | CON' ((_, DA.SUSP (SOME(DA.LVAR d, _)), lt), ts, e) =
130       if !Control.Lazy.earlyDT        let val v   = mkv ()
      then bug "DA.SUSP in Translate.CON' while earlyDT is true."  
      else let val v   = mkv ()  
131                val fe = FN (v, LT.ltc_tuple [], e)                val fe = FN (v, LT.ltc_tuple [], e)
132             in APP(TAPP (VAR d, ts), fe)             in APP(TAPP (VAR d, ts), fe)
133            end            end
# Line 349  Line 347 
347              end              end
348          | fill (VECTORpat(pats,ty)) = VECTORpat(map fill pats, ty)          | fill (VECTORpat(pats,ty)) = VECTORpat(map fill pats, ty)
349          | fill (ORpat(p1, p2)) = ORpat(fill p1, fill p2)          | fill (ORpat(p1, p2)) = ORpat(fill p1, fill p2)
350          | fill (CONpat(TP.DATACON{name, const, typ, rep, sign}, ts)) =          | fill (CONpat(TP.DATACON{name, const, typ, rep, sign, lazyp}, ts)) =
351              CONpat(TP.DATACON{name=name, const=const, typ=typ,              CONpat(TP.DATACON{name=name, const=const, typ=typ, lazyp=lazyp,
352                          sign=sign, rep=mkRep(rep, toDconLty d typ, name)}, ts)                          sign=sign, rep=mkRep(rep, toDconLty d typ, name)}, ts)
353          | fill (APPpat(TP.DATACON{name, const, typ, rep, sign}, ts, pat)) =          | fill (APPpat(TP.DATACON{name, const, typ, rep, sign, lazyp}, ts, pat)) =
354              APPpat(TP.DATACON{name=name, const=const, typ=typ, sign=sign,              APPpat(TP.DATACON{name=name, const=const, typ=typ, sign=sign, lazyp=lazyp,
355                         rep=mkRep(rep, toDconLty d typ, name)}, ts, fill pat)                         rep=mkRep(rep, toDconLty d typ, name)}, ts, fill pat)
356          | fill xp = xp          | fill xp = xp
357    
# Line 1171  Line 1169 
1169    
1170  (*  (*
1171   * $Log: translate.sml,v $   * $Log: translate.sml,v $
1172     * Revision 1.3  1998/05/20 18:40:37  george
1173     *   We now use a new cross-module linkage conventions; the import
1174     *   list of each module is now described as a tree which specifies
1175     *   in details about which component of a structure is imported.
1176     *   Also, each compilation unit now has a new data segment area,
1177     *   this also affects the changes on linking conventions and the
1178     *   binfile format. The new bin file format is described in
1179     *   batch/batchutil.sml.
1180     *                                              -- zsh
1181     *
1182     * Revision 1.2  1998/05/15 03:16:35  dbm
1183     *   Eliminate test of Control.Lazy.earlyDT (no longer exists).
1184     *   Added lazyp flags where appropriate.
1185     *
1186   * Revision 1.1.1.1  1998/04/08 18:39:40  george   * Revision 1.1.1.1  1998/04/08 18:39:40  george
1187   * Version 110.5   * Version 110.5
1188   *   *

Legend:
Removed from v.102  
changed lines
  Added in v.109

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