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/NOTES/HISTORY
ViewVC logotype

Diff of /sml/trunk/NOTES/HISTORY

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

sml/trunk/HISTORY revision 1546, Wed Jul 14 18:38:08 2004 UTC sml/trunk/NOTES/HISTORY revision 3912, Tue Aug 19 22:06:11 2014 UTC
# Line 1  Line 1 
1  This is the HISTORY file for the Yale SML/NJ CVS repository.  This is the HISTORY file for the SML/NJ repository.
2    
3  An entry should be made for _every_ commit to the repository.  An entry should be made for _every_ commit to the repository.
4  The entries in this file will be used when creating the README  The entries in this file will be used when creating the README
# Line 7  Line 7 
7    
8  The form of an entry should be:  The form of an entry should be:
9    
10  Name:  Name: Your Name (web page or e-mail)
11    Date: yyyy/mm/dd hh:mm:ss
12    Tag: cvs-tag-for-this-change
13    Description:
14    
15    Here is a test entry
16    
17    ----------------------------------------------------------------------
18    Name: John Reppy (http://cs.uchicago.edu/~jhr)
19  Date: yyyy/mm/dd  Date: yyyy/mm/dd
 Tag: <post-commit CVS tag>  
20  Description:  Description:
21    
22  ----------------------------------------------------------------------  ----------------------------------------------------------------------
23    Name: John Reppy (http://cs.uchicago.edu/~jhr)
24    Date: 2014/08/19
25    Description:
26    Added the actionToString' and repairToString' functions
27    to the AntlrRepair structure.  These functions allow one to
28    specialize the printing of tokens based on whether they are
29    being added or deleted.
30    
31    ----------------------------------------------------------------------
32    Name: John Reppy (http://cs.uchicago.edu/~jhr)
33    Date: 2014/08/17
34    Description:
35    Added patches to support OpenBSD on PPC.  The patches were contributed
36    by Jasper Lievisse Adriaanse (fixes bug #124).
37    
38    ----------------------------------------------------------------------
39    Name: John Reppy (http://cs.uchicago.edu/~jhr)
40    Date: 2014/08/17
41    Description:
42    Use mkstemp to implement OS.FileSys.tmpName() on systems that support
43    it (should be all modern versions of Unix).  This change fixes bug #128.
44    (Thanks to Johannes 5 Joemann).
45    
46    ----------------------------------------------------------------------
47    Name: John Reppy (http://cs.uchicago.edu/~jhr)
48    Date: 2014/08/17
49    Description:
50    Fixed a bug in IntInf.~>>, which did not handle negative arguments
51    correctly (bug #110).
52    
53    ----------------------------------------------------------------------
54    Name: John Reppy (http://cs.uchicago.edu/~jhr)
55    Date: 2014/08/14
56    Description:
57    Fixed a problem in the CPS contraction phase.  An optimization that
58    eliminates construction of a record that already exists was not
59    checking that the existing record was the same record kind (bug #119).
60    
61    ----------------------------------------------------------------------
62    Name: John Reppy (http://cs.uchicago.edu/~jhr)
63    Date: 2014/07/28
64    Description:
65    Switch to using MAP_ANONYMOUS to allocate memory on Linux systems.
66    This change avoids problems when "/dev" does not support execute
67    permission (as seems to be the case with some versions of Linux
68    running on ChromeBooks; bug #120).
69    
70    ----------------------------------------------------------------------
71    Name: John Reppy (http://cs.uchicago.edu/~jhr)
72    Date: 2014/06/28
73    Description:
74    Fix for bug 127 (Crash on windows with OS.Process.system).
75    
76    ----------------------------------------------------------------------
77    Name: John Reppy (http://cs.uchicago.edu/~jhr)
78    Date: 2014/06/07
79    Description:
80    Fixed a long-standing bug in Socket.recvVec, which prevented the result
81    from being used in a string pattern match (thanks to Vesa Norrman
82    for the fix).
83    
84    ----------------------------------------------------------------------
85    Name: John Reppy (http://cs.uchicago.edu/~jhr)
86    Date: 2014/05/01
87    Description:
88    Fixed minor issue in an error message; type variable name should be
89    printed with leading '
90    
91    ----------------------------------------------------------------------
92    Name: John Reppy (http://cs.uchicago.edu/~jhr)
93    Date: 2013/11/25
94    Description:
95    Added PackWord{16,32}{Big,Little} structures to the Unsafe module.
96    This change makes the UNSAFE signature closer to the MLton version,
97    although we still need the PackReal structures.
98    
99    ----------------------------------------------------------------------
100    Name: John Reppy (http://cs.uchicago.edu/~jhr)
101    Date: 2013/07/01
102    Description:
103    
104    *************************** Version 110.76 ***************************
105    
106    ----------------------------------------------------------------------
107    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
108    Date: 2013/06/04
109    Description:
110    Fix bug #115 (BinPrimIO writer method getPos doesn't work under CML).
111    Just needed to port the position update from mkReader code to the
112    mkWriter code.
113    
114    ----------------------------------------------------------------------
115    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
116    Date: 2013/06/04
117    Description:
118    Fix bug #111 (Socket.acceptNB returns somewhat broken sockets).
119    The problem was that under Win32, sockets returned from accept inherit
120    their parents' non-blocking status, whereas on UNIX they are always
121    blocking.
122    
123    ----------------------------------------------------------------------
124    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
125    Date: 2013/05/20
126    Description:
127    Fix bug #117 (BinIO.openAppend raises IO on non-existent file).
128    We were opening the file for append if it existed but not creating it
129    if it did not exist.
130    
131    ----------------------------------------------------------------------
132    Name: John Reppy (http://cs.uchicago.edu/~jhr)
133    Date: 2013/05/02
134    Description:
135    Fix bug #116 (Socket.sameDesc raises Match exception).
136    The problem is that on Windows the iodesc datatype (defined in
137    Basis/Implementation/Win32/pre-os.sml) has both an IODesc constructor
138    and a SockDesc constructor.  Updated the code in Win32/os-io.sml to
139    handle the SockDesc constructor.
140    
141    ----------------------------------------------------------------------
142    Name: John Reppy (http://cs.uchicago.edu/~jhr)
143    Date: 2013/04/19
144    Description:
145    Fix bug #113 (Socket.select waits exactly twice the indicated timeout)
146    
147    ----------------------------------------------------------------------
148    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
149    Date: 2013/01/19
150    Description:
151    Fix AMD64 code generator to properly sign-extend arguments to IDIVQ.
152    
153    ----------------------------------------------------------------------
154    Name: John Reppy (http://cs.uchicago.edu/~jhr)
155    Date: 2012/10/20
156    Description:
157    Fix bug #108 (off-by-one error in Util/dynamic-array.sml; iterators crash)
158    
159    ----------------------------------------------------------------------
160    Name: John Reppy (http://cs.uchicago.edu/~jhr)
161    Date: 2012/10/20
162    Description:
163    Fix bug #107 (Bogus Int64 comparison operators)
164    
165    ----------------------------------------------------------------------
166    Name: John Reppy (http://cs.uchicago.edu/~jhr)
167    Date: 2012/10/01
168    Description:
169    
170    *************************** Version 110.75 ***************************
171    
172    ----------------------------------------------------------------------
173    Name: John Reppy (http://cs.uchicago.edu/~jhr)
174    Date: 2012/09/28
175    Description:
176    Fixed bug #92.  IntInf.scan now handles the "0x" prefix correctly.
177    Also made minor improvements to the NumScan module.
178    
179    ----------------------------------------------------------------------
180    Name: John Reppy (http://cs.uchicago.edu/~jhr)
181    Date: 201209/24
182    Description:
183    Added Base64 module to SML/NJ Library to support encoding and decoding
184    Word8 vectors as base64 strings.
185    
186    ----------------------------------------------------------------------
187    Name: John Reppy (http://cs.uchicago.edu/~jhr)
188    Date: 2012/09/23
189    Description:
190    Additions to the SML/NJ Library.  Added exists, existsi, all, and alli
191    functions to ORD_MAP signature and implementations, and added all
192    function to ORD_SET signature and implementations.
193    
194    ----------------------------------------------------------------------
195    Name: John Reppy (http://cs.uchicago.edu/~jhr)
196    Date: 2012/09/21
197    Description:
198    Bug fix in ml-antlr to ensure that the generated toString function
199    for tokens is strictly legal SML code (i.e., non-printing characters
200    and UTF8 multibyte sequences are properly escaped).
201    
202    ----------------------------------------------------------------------
203    Name: John Reppy (http://cs.uchicago.edu/~jhr)
204    Date: 2012/09/11
205    Description:
206    Added getu function to ULexBuffer as a way to improve ulex performance.
207    This addition allows a fastpath for processing ascii characters, which
208    improved lexer performance by 3-4%.
209    
210    ----------------------------------------------------------------------
211    Name: John Reppy (http://cs.uchicago.edu/~jhr)
212    Date: 2012/08/02
213    Description:
214    Fixed bugs #89 and #96: Build Failure with Xcode 4.3
215    Also removed build support for MacOS X pre-10.5 (Leopard) on PPC and
216    pre-10.6 (Snow Leopard) on Intel.
217    
218    ----------------------------------------------------------------------
219    Name: John Reppy (http://cs.uchicago.edu/~jhr)
220    Date: 2012/02/05
221    Description:
222    Fixed bug #88.  The check for valid arcs on Unix systems now allows
223    any character other than slash or nul.
224    
225    ----------------------------------------------------------------------
226    Name: David MacQueen (dbm@cs.uchicago.edu)
227    Date: 2012/01/20
228    Description:
229    
230    *************************** Version 110.74 ***************************
231    
232    ----------------------------------------------------------------------
233    Name: John Reppy (http://cs.uchicago.edu/~jhr)
234    Date: 2012/01/20
235    Description:
236    
237    Fixed implementation of Real.signBit on little-endian machines.
238    
239    ----------------------------------------------------------------------
240    Name: David MacQueen (dbm@cs.uchicago.edu)
241    Date: 2012/1/19
242    Revision: 3664, 3665
243    Description:
244    
245    1) Fix for (gforge) bug #60
246       recalculate strictness for DEFtycs in functor bodies when functor
247       is applied  (Elaborator/modules/evalent.sml)
248    
249    2) Fix for (gforge) bug #77
250       separate ast representations for datatypes and datatype replications
251       in decs and specs (multiple files)
252    
253    3) set version to 110.74
254    
255    Details in NOTES/changes/dbm_2012_1.
256    
257    ----------------------------------------------------------------------
258    Name: David MacQueen (dbm@cs.uchicago.edu)
259    Date: 2012/1/12
260    Revision: 3648, 3652
261    Description:
262    
263    1) Change of SourceMap interface.
264       related to fix of off-by-one error in lexer (committed earlier?), and cleanup of noweb code
265       added by Norman Ramsey many years ago (but little used today).
266    
267    3) Slight cleanup of match compiler, eliminatiing compiler/FLINT/tempexpn.sml file that
268       was part of unused implementation of pattern templates (pattern macros).
269    
270    4) Modification of type checker to add "culprit tracking" for improved type error messages
271       (printing of additional culprit information is controlled by ElabControl.showTypeErrorCulprits
272        flag, default false, added in revision 3652).  The culprit tracking needs to be debugged
273        and improved, and the presentation of the culprits needs to be done better.
274    
275    Details in NOTES/changes/dbm_2012_1.
276    
277    ----------------------------------------------------------------------
278    Name: John Reppy (http://cs.uchicago.edu/~jhr)
279    Date: 2011/11/25
280    Description:
281    
282    Bug fixes for Unsafe.blastRead (#76):
283      1) proper error handling when reading from memory and there are
284         not enough bytes.
285      2) pass correct data pointer and length to BlastIn (code was using
286         old macros).
287    
288    ----------------------------------------------------------------------
289    Name: John Reppy (http://cs.uchicago.edu/~jhr)
290    Date: 2011/11/25
291    Description:
292    
293    Added hash-table-based implementation of sets to SML/NJ Library.
294    
295    ----------------------------------------------------------------------
296    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
297    Date: 2011/10/25
298    Description:
299    
300    Better error reporting under 32-bit linux for the missing dpkg
301    support (#70).
302    Enable 3.x kernels to build (#80, 81, 83).
303    
304    ----------------------------------------------------------------------
305    Name: John Reppy (http://cs.uchicago.edu/~jhr)
306    Date: 2011/05/23
307    Description:
308    
309    Added new S-expression library to SML/NJ Library
310    (contributed by Damon Wang)
311    
312    ----------------------------------------------------------------------
313    Name: John Reppy (http://cs.uchicago.edu/~jhr)
314    Date: 2011/05/17
315    Description:
316    
317    Fixed bug in JSON scanner (SML/NJ Library).  It didn't handle escaped
318    backslash or double quote correctly.
319    
320    ----------------------------------------------------------------------
321    Name: John Reppy (http://cs.uchicago.edu/~jhr)
322    Date: 2011/05/13
323    Description:
324    
325    *************************** Version 110.73 ***************************
326    
327    ----------------------------------------------------------------------
328    Name: John Reppy (http://cs.uchicago.edu/~jhr)
329    Date: 2011/05/10
330    Description:
331    
332    Added boolean literals (true and false) to the conditional-expression
333    syntax in CM.  Thus, you can write
334    
335    #if true
336      structure Foo
337    #endif
338    
339    in a CM file.  This change is meant to make it easier to use autoconf
340    to configure the build process of an SML application.
341    
342    ----------------------------------------------------------------------
343    Name: John Reppy (http://cs.uchicago.edu/~jhr)
344    Date: 2011/05/09
345    Description:
346    
347    Added missing String.scan function (#69).  This also fixes the handling
348    of certain corner cases by String.fromString.
349    
350    ----------------------------------------------------------------------
351    Name Mike Rainey (http://www.mpi-sws.org/~mrainey)
352    Date 2011/05/03
353    Description:
354    
355    Added the RTDSC and RTDSCP instructions to the amd64 code generator.
356    
357    ----------------------------------------------------------------------
358    Name: John Reppy (http://cs.uchicago.edu/~jhr)
359    Date: 2011/04/08
360    Description:
361    
362    Added fix for comments in code bug (#63).
363    Thanks to Michael Norrish.
364    
365    ----------------------------------------------------------------------
366    Name: John Reppy (http://cs.uchicago.edu/~jhr)
367    Date: 2011/04/08
368    Description:
369    
370    Fixed bug in Socket.acceptNB (bug #59)
371    
372    ----------------------------------------------------------------------
373    Name: John Reppy (http://cs.uchicago.edu/~jhr)
374    Date: 2011/03/31
375    Description:
376    
377    Fixed syntax error in ml-lex compatibility mode (bug #49)
378    
379    ----------------------------------------------------------------------
380    Name: John Reppy (http://cs.uchicago.edu/~jhr)
381    Date: 2011/03/22
382    Description:
383    
384    Update _arch-n-opsys script for Mac OS X Lion (10.7).
385    
386    ----------------------------------------------------------------------
387    Name: John Reppy (http://cs.uchicago.edu/~jhr)
388    Date: 2011/02/18
389    Description:
390    
391    Added Barriers module to CML.
392    
393    ----------------------------------------------------------------------
394    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
395    Date: 2011/02/10
396    Description:
397    
398    Fixed ml-yacc examples to respect the changed signatures with respect
399    to TextIO.inputLine.
400    
401    ----------------------------------------------------------------------
402    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
403    Date: 2010/09/16
404    Description:
405    
406    Changed the Win32 implementation of validArc to support directories
407    with extended characters (umlauts, etc.).
408    
409    ----------------------------------------------------------------------
410    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
411    Date: 2010/09/16
412    Description:
413    
414    Fixed the Win32 socket and polling implementation to work correctly
415    with CML. Signature of poll was wrong and didn't handle sockets at all.
416    
417    ----------------------------------------------------------------------
418    Name: John Reppy (http://cs.uchicago.edu/~jhr)
419    Date: 2010/06/16
420    Description:
421    
422    Fixed Real.toString and Real.fmt to include sign for negative zero.
423    
424    ----------------------------------------------------------------------
425    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
426    Date: 2010/03/23
427    Description:
428    
429    Fixed the bug with Win32 calls to OS.Process.system not quoting the string.
430    
431    ----------------------------------------------------------------------
432    Name: Jon Riehl (http://jonriehl.com/)
433    Date: 2010/02/11
434    Description:
435    
436    Applied patch for building on more recent NetBSD's.  See bug #39 in the
437    tracker:
438    
439    http://smlnj-gforge.cs.uchicago.edu/tracker/index.php?func=detail&aid=39&group_id=33&atid=215
440    
441    ----------------------------------------------------------------------
442    Name: Jon Riehl (http://jonriehl.com/)
443    Date: 2010/02/02
444    Description:
445    
446    Cutting version 110.72.  New bootfiles.
447    
448    ----------------------------------------------------------------------
449    Name John Reppy (http://cs.uchicago.edu/~jhr)
450    Date 2009/12/20
451    Description:
452    
453    Fixed performance bugs in List module by making @ and foldr be
454    tail recursive.
455    
456    ----------------------------------------------------------------------
457    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
458    Date: 2009/12/11
459    Description:
460    
461    Fixed the Win32 unable to print long strings bug.
462    ----------------------------------------------------------------------
463    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
464    Date: 2009/12/10
465    Description:
466    
467    Fixed an overrun during major GC. If the string arena was nearly full, it was possible
468    for alignment padding added during copy to the to-space to overrun the allocated
469    size.
470    ----------------------------------------------------------------------
471    Name John Reppy (http://cs.uchicago.edu/~jhr)
472    Date 2009/11/18
473    Description:
474    
475    The ml-antlr and ml-ulex programs have been ported to build under
476    mlton.
477    
478    ----------------------------------------------------------------------
479    Name John Reppy (http://cs.uchicago.edu/~jhr)
480    Date 2009/11/17
481    Description:
482    
483    Added %header directive to the ml-ulex scanner generator.  Also
484    updated the documentation.
485    
486    ----------------------------------------------------------------------
487    Name John Reppy (http://cs.uchicago.edu/~jhr)
488    Date 2009/11/17
489    Description:
490    
491    Added "@SMLsuffix" flag to sml command.  This can be used to get
492    the suffix for heap files.
493    
494    ----------------------------------------------------------------------
495    Name John Reppy (http://cs.uchicago.edu/~jhr)
496    Date 2009/11/17
497    Description:
498    
499    Added "--strict-sml" flag to ml-ulex for MLton compatibility.
500    
501    ----------------------------------------------------------------------
502    Name John Reppy (http://cs.uchicago.edu/~jhr)
503    Date 2009/11/10
504    Description:
505    
506    Added %header directive to the ml-antlr parser generator.  Also
507    updated the documentation.
508    
509    ----------------------------------------------------------------------
510    Name: Jon Riehl (http://www.jonriehl.com/)
511    Date: 2009/09/16
512    Description:
513    
514    Cutting version 110.71.  New bootfiles.
515    
516    ----------------------------------------------------------------------
517    Name John Reppy (http://cs.uchicago.edu/~jhr)
518    Date 2009/09/13
519    Description:
520    
521    Changes to support compiling the runtime system on Mac OS X 10.6
522    (aka Snow Leopard).
523    
524    ----------------------------------------------------------------------
525    Name Mike Rainey (http://cs.uchicago.edu/~mrainey)
526    Date 2009/08/19
527    Description:
528    
529    Fixed a bug in the register-spill generator that is part of the MLRISC
530    register allocator. The problem was that the code in RASpillWithRenaming
531    functor assumed incorrectly that dedicated registers would appear in
532    def/use information generated by ClusterRA. Thanks to Allen Leung for
533    helping with this bug.
534    
535    ----------------------------------------------------------------------
536    Name John Reppy (http://cs.uchicago.edu/~jhr)
537    Date 2009/07/09
538    Description:
539    
540    Removed redundant implementations of various top-level operations by
541    consolidating them in base/system/smlnj/init/pervasive.sml.  This
542    change also fixes a bug in that the top-level version of round was
543    incorrect.
544    
545    ----------------------------------------------------------------------
546    Name: Matthias Blume (http://www.tti-c.org/blume/)
547    Date: 2009/06/15 11:17:00 CDT
548    Description:
549    
550    Bumped version number to 110.70.  New bootfiles.
551    
552    ----------------------------------------------------------------------
553    Name: Matthias Blume (http://www.tti-c.org/blume/)
554    Date: 2009/06/12 11:02:00 CDT
555    Description:
556    
557    1. Corrected problem in config/actions that led to the so-called
558       "unpickling bug" which appeared in version 110.68.
559    
560    2. Provided fix for the 64-bit pattern match bug.
561    
562    ----------------------------------------------------------------------
563    Name John Reppy (http://cs.uchicago.edu/~jhr)
564    Date 2009/03/21
565    Description:
566    
567    Fixed bug in Int32.fmt when the argument was the minimum int and the
568    radix was something other than DEC.
569    
570    ----------------------------------------------------------------------
571    Name Aaron Turon (turon@ccs.neu.edu)
572    Date 2009/02/21
573    Description:
574    
575    Fixed bugs in how ml-antlr parsed ML types in %tokens specifications.
576    
577    ----------------------------------------------------------------------
578    Name: Jon Riehl (http://www.jonriehl.com/)
579    Date: 2009/01/13
580    Description:
581    
582    Picking up some additional fixes for 110.69, including a fix for
583    spaces in CM file paths.
584    
585    ----------------------------------------------------------------------
586    Name: Jon Riehl (http://www.jonriehl.com/)
587    Date: 2008/12/22
588    Description:
589    
590    Version bumped to 110.69.  New bootfiles.
591    
592    ----------------------------------------------------------------------
593    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
594    Date: 2008/12/06
595    Description:
596    
597    Re-enabled some CPS optimizations (first_contract and eta).  The most
598    important effect of this change is to make uses of SMLofNJ.Cont.capture
599    be properly tail recursive.
600    
601    ----------------------------------------------------------------------
602    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
603    Date: 2008/12/03
604    Description:
605    
606    New concurrency-related instructions for x86 and amd64 code
607    generators.
608      - PAUSE: Notify the CPU that the program is spin waiting.
609      - MFENCE: memory fence for reads and writes.
610      - SFENCE: memory fence for writes.
611      - LFENCE: memory fence for reads.
612    
613    ----------------------------------------------------------------------
614    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
615    Date: 2008/12/02
616    Description:
617    
618    Added makefile and other support for building runtime on OpenBSD.
619    
620    ----------------------------------------------------------------------
621    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
622    Date: 2008/08/13
623    Description:
624    
625    Version bumped to 110.68.  New bootfiles.
626    
627    ----------------------------------------------------------------------
628    Name Aaron Turon (turon@ccs.neu.edu)
629    Date 2008/08/11
630    Description:
631    
632    Minor fix to ml-ulex backend for regexps that match any character
633    and perform a single action.  Previously the emitted code would
634    not allow the regexps to match any character at all.
635    
636    ----------------------------------------------------------------------
637    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
638    Date: 2008/08/05
639    Description:
640    
641    Added build support for OpenBSD (thanks to Brian O'Hanlon).
642    
643    ----------------------------------------------------------------------
644    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
645    Date: 2008/07/12
646    Description:
647    
648    Fixed Int64.fromString to use base-10.
649    
650    ----------------------------------------------------------------------
651    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
652    Date: 2008/04/12
653    Description:
654    
655    Various updates to the ml-lpt tree.  The documentation has been updated;
656    bugs in the parsing of negation and character classes in ml-ulex have
657    been fixed; and changes have been made to make the ml-lpt tools more
658    compatible with MLton (and other SML implementations).  Thanks to
659    Matthew Fluet and Aaron Turon for their patches.
660    
661    ----------------------------------------------------------------------
662    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
663    Date: 2008/20/04
664    Description:
665    
666    Implemented timer-based profiling on Windows, with behavior as close
667    to the *nix ITIMER-based profiling as possible.
668    ----------------------------------------------------------------------
669    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
670    Date: 2008/07/04
671    Description:
672    
673    Finished off the Windows subset of the basis library. Added process
674    support and various configuration and system identification utils.
675    ----------------------------------------------------------------------
676    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
677    Date: 2008/03/18
678    Description:
679    
680    Major changes to the RegExp library: see smlnj-lib/CHANGES for details.
681    ----------------------------------------------------------------------
682    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
683    Date: 2008/02/14
684    Description:
685    
686    Added the Windows Status structure
687    ----------------------------------------------------------------------
688    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
689    Date: 2008/02/14
690    Description:
691    
692    Added the Windows DDE structure
693    ----------------------------------------------------------------------
694    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
695    Date: 2008/02/05
696    Description:
697    
698    Added the Windows Config structure
699    ----------------------------------------------------------------------
700    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
701    Date: 2008/01/31
702    Description:
703    
704    Added outline of the Windows basis library and the basic registry
705    functionality.
706    ----------------------------------------------------------------------
707    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
708    Date: 2008/01/23
709    Description:
710    
711    Fixed the amd64 code generator to compile with the current MLRISC.
712    ----------------------------------------------------------------------
713    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
714    Date: 2007/11/26
715    Description:
716    
717    nlffi was updated to work on Windows. It needed to pass in the correct
718    value for the name of the kernel32 DLL to obtain 'base' bindings.
719    Additionally updated the README for the most basic nlffi sample with
720    what you need to do on MacOSX and on Windows to make it work.
721    ----------------------------------------------------------------------
722    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
723    Date: 2007/11/21
724    Description:
725    
726    Overwrite the SMLNJ_HOME environment variable on installation
727    Properly change the package code so that subsequent version
728    installations prompt for uninstall (instead of 'repair/remove')
729    ----------------------------------------------------------------------
730    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
731    Date: 2007/11/14
732    Description:
733    
734    Cleaned up WININSTALL file for new MSI-based setup.
735    ----------------------------------------------------------------------
736    Name: Matthias Blume (http://www.tti-c.org/blume/)
737    Date: 2007/11/13 14:05:00 CST
738    Description:
739    
740    Version bumped to 110.67.  New bootfiles.
741    
742    ----------------------------------------------------------------------
743    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
744    Date: 2007/11/12
745    Description:
746    
747    Ensure that the size of the allocation space is at least 128K.
748    ----------------------------------------------------------------------
749    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
750    Date: 2007/11/05
751    Description:
752    
753    Fixed type error in ml-lpt library that occurs when compiling
754    against a basis that was compiled with the USE_64_BIT_POSITIONS
755    symbol set.
756    (Thanks to Johannes Joemann)
757    ----------------------------------------------------------------------
758    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
759    Date: 2007/11/03
760    Description:
761    
762    Fixed the amd64 code generator to compile with the current MLRISC.
763    ----------------------------------------------------------------------
764    Name: Lars Bergstrom (web page or e-mail)
765    Date: 2007/11/02
766    Description:
767    
768    Made sml.bat more resilient to either not having run the installer
769    and having no SMLNJ_HOME set or having just shuffled the directory
770    around.
771    ----------------------------------------------------------------------
772    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
773    Date: 2007/11/01
774    Description:
775    
776    A collection of bug fixes for machine.sml in the Reactive library.
777    (Thanks to Timothy Bourke)
778    ----------------------------------------------------------------------
779    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
780    Date: 2007/10/28
781    Description:
782    
783    Patches for Mac OS X 10.5 (Leopard).
784    ----------------------------------------------------------------------
785    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
786    Date: 2007/10/28
787    Description:
788    
789    Fixed some bugs in the AMD64 floating-point spilling code.
790    ----------------------------------------------------------------------
791    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
792    Date: 2007/10/25
793    Description:
794    
795    Added support for the atomic XCHG instruction.
796    ----------------------------------------------------------------------
797    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
798    Date: 2007/10/22
799    Description:
800    
801    Added AMD64 support for floating-point negation.
802    ----------------------------------------------------------------------
803    Name: Lars Bergstrom (web page or e-mail)
804    Date: 2007/10/22
805    Description:
806    
807    Fixed ^C handling in Windows
808    Added a Windows installer
809    Made it possible to build for Windows on a mapped drive from Parallels
810    ----------------------------------------------------------------------
811    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
812    Date: 2007/10/22
813    Description:
814    
815    Added AMD64 support for the atomic fetch and add instruction.
816    ----------------------------------------------------------------------
817    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
818    Date: 2007/10/18
819    Description:
820    
821    The GAS output now favors p2align over align, since the
822    former is guaranteed to be consistent over multiple architectures
823    and the latter is not.
824    ----------------------------------------------------------------------
825    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
826    Date: 2007/10/18
827    Description:
828    
829    Fixed a bug in register spilling.
830    ----------------------------------------------------------------------
831    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
832    Date: 2007/10/2
833    Description:
834    
835    Added demo support for AMD64 for quick testing and fixed support for
836    64-bit label constants.
837    ----------------------------------------------------------------------
838    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
839    Date: 2007/09/20
840    Description:
841    
842    Added support for the MLRISC COND instruction and the x86-64 CMOVCC
843    instruction.
844    ----------------------------------------------------------------------
845    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
846    Date: 2007/09/17
847    Description:
848    
849    Fixed an instruction-selection bug when loading 64-bit labels.
850    
851    ----------------------------------------------------------------------
852    Name: George Kuan (http://www.cs.uchicago.edu/~gkuan)
853    Date: 2007/09/14
854    Description:
855    
856    Fixed Elaborator and Translate performance bugs
857    
858    ----------------------------------------------------------------------
859    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
860    Date: 2007/09/12
861    Description:
862    
863    Fixed xorl memory argument bug.
864    
865    ----------------------------------------------------------------------
866    Name: George Kuan (http://www.cs.uchicago.edu/~gkuan)
867    Date: 2007/07/27
868    Description:
869    
870    Added f64sgn (for Real64.signBit) as a primop defined
871    in MLRiscGen. signBit(~0.0) not handled correctly.
872    
873    ----------------------------------------------------------------------
874    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
875    Date: 2007/06/21
876    Description:
877    
878    Fixed bug in {TextIO,BinIO}.StreamIO.endOfStream that would incorrectly
879    signal end of stream.
880    
881    ----------------------------------------------------------------------
882    Name: Matthias Blume (http://www.tti-c.org/blume/)
883    Date: 2007/06/12 11:22:00 CDT
884    Description:
885    
886    Eliminated config/allsources.  The information is now drawn directly
887    from config/actions.
888    
889    ----------------------------------------------------------------------
890    Name: Matthias Blume (http://www.tti-c.org/blume/)
891    Date: 2007/06/07 23:30:00 CDT
892    Tag: release-110.65
893    Description:
894    
895    Version 110.65. NEW BOOTFILES!
896    
897    ----------------------------------------------------------------------
898    Name: Matthias Blume (http://www.tti-c.org/blume/)
899    Date: 2007/06/06 21:45:00 CDT
900    Description:
901    
902    - Aaron: fixed a number of bugs in ml-ulex.
903    - Matthias:
904       - added CM control "cm.force-tools"; this is false by default;
905         when set to true, then tools like ml-yacc, ml-lex, ml-ulex, etc.
906         will be forced to run regardless of whether or not their targets
907         are up-to-date
908       - changed installer code so that config/install.sh will re-build
909         heap images for all tools even if those heap images already existed
910    
911    ----------------------------------------------------------------------
912    Name: Matthias Blume (http://www.tti-c.org/blume/)
913    Date: 2007/06/04 21:21:00 CDT
914    Description:
915    
916    After Aaron Turon's bug fix for ml-ulex (handling the ^ character
917    in legacy mode), re-ran the lexer generator on all lex input files
918    and committed the results.
919    
920    This should fix the problem with ckit and nlffi that was reported
921    by Vesa A. Norrman.
922    
923    ----------------------------------------------------------------------
924    Name: Matthias Blume (http://www.tti-c.org/blume/)
925    Date: 2007/05/31 11:40:00 CDT
926    Tag: release-110.64
927    Description:
928    
929    Version 110.64. NEW BOOTFILES!
930    
931    ----------------------------------------------------------------------
932    Name: Dave MacQueen (dbm@cs.uchicago.edu)
933    Date: 2007/05/31 14:55:00 CDT
934    Revision: 2650
935    Description:
936    
937    3rd merge of base from primop-branch-3 into the trunk.
938    Additional bug fixes included:
939    
940     * Timer.cpu_timer, etc. type printing corrected (by making
941         Timer have opaque sig constraint in basis/Implementation/timer.sml)
942     * Infinite loop in FLINT (tests/typing/tests/25.sml) (fix by
943         Stefan Monnier)
944    
945    ----------------------------------------------------------------------
946    Name: Matthias Blume (http://www.tti-c.org/blume/)
947    Date: 2007/05/31 11:40:00 CDT
948    Description:
949    
950    Fixed some bugs in new Div code in FLINT/trans/translate.sml.
951    
952    Also, changed the handling of "no core access":  When translate.sml
953    needs access to a core exception at a time when the core has not
954    been set up yet (this only happens when compiling system/smlnj/init/*),
955    then don't bother generating the corresponding tests.
956    
957    The old scheme was to generate a bogus value to be used in place of
958    the exception.  Unfortunately, that confuses the plambda type checker.
959    Moreover, it does not do any good, because at runtime we don't expect
960    such an exception to be ever raised.  (The code in system/smlnj/init/*
961    has to be written very carefully with this in mind!)
962    
963    ----------------------------------------------------------------------
964    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
965    Date: 2007/05/29
966    Description:
967    
968    Added FSQRT instructions for the AMD64 code generator.
969    
970    ----------------------------------------------------------------------
971    Name: Matthias Blume (http://www.tti-c.org/blume/)
972    Date: 2007/05/29 19:00:00 CDT
973    Description:
974    
975    FLINT/trans/translate.sml now wraps all DIV/MOD/QUOT/REM operations
976    with an explicit test for zero division.  This should fixes several
977    regressions and makes it possible for downstream optimization phases
978    to treat these operations as "pure" when they are applied to unsigned
979    operands.
980    
981    ----------------------------------------------------------------------
982    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
983    Date: 2007/05/29
984    Description:
985    
986    Added the new MLRISC code generator for the AMD64.  This version,
987    in contrast to the previous one, uses SSE registers and instructions
988    for all floating-point computations.
989    
990    ----------------------------------------------------------------------
991    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
992    Date: 2007/05/29
993    Description:
994    
995    A number of fixes related to the formatting of dates.  These include fixes
996    for bugs #1415 and #1416.  We also now correctly handle format characters that
997    lie outside the specified set.
998    
999    ----------------------------------------------------------------------
1000    Name: Matthias Blume (http://www.tti-c.org/blume/)
1001    Date: 2007/05/23 22:30:00 CDT
1002    Description:
1003    
1004    CMB (and CM) now automatically defines the CM "preprocessor" symbol
1005    NO_PLUGINS during "makeml -rebuild" or when CM operates in "slave" mode.
1006    
1007      (In addition, CMB_REBUILD_MODE is defined for makeml -rebuild,
1008       CM_SLAVE_MODE is defined in attached slaves while running CM.make
1009       or CM.rebuild, and CMB_SLAVE_MODE is defined in attached slaves
1010       while running CMB.make.  The point is that the single symbol
1011       NO_PLUGINS is definde in all three cases.)
1012    
1013    I changed the three locations within the sources that get compiled
1014    during CMB.make where ml-yacc or ml-lex input is processed: When
1015    NO_PLUGINS defined, then the use of the mlyacc and mllex tools
1016    is bypassed.
1017    
1018    When bootstrapping new versions of the compiler, there can be
1019    situations where the plugin tools for ml-yacc and ml-lex (or ml-ulex)
1020    are not available or otherwise not operational.  In this case one can
1021    manually define the NO_PLUGINS symbol prior to running CMB.make().  To
1022    do so, the following command should be issued at the interactive
1023    prompt:
1024    
1025       #set (CMB.symval "NO_PLUGINS") (SOME 1);
1026    
1027    A CMB.make with NO_PLUGINS defined relies on the existence of the
1028    files that normally would be generated by ml-yacc and ml-lex.
1029    (Copies of these files are in the repository.)
1030    
1031    ----------------------------------------------------------------------
1032    Name: David MacQueen (dbm@cs.uchicago.edu)
1033    Date: 2007/5/23 17:23:00 CDT
1034    Revision: 2603
1035    Description:
1036    
1037    2nd merge of base from primop-branch-3 into the trunk.
1038    Additional bug fixes included:
1039     Date.scan and Date.fromString fixed;
1040     Overloading resolution fixed and some type printing problems corrected.
1041    
1042    ----------------------------------------------------------------------
1043    Name: Matthias Blume (http://www.tti-c.org/blume/)
1044    Date: 2007/05/23 09:50:00 CDT
1045    Description:
1046    
1047    Changed the installation mechanism for CM tool plugins.  These are
1048    just libaries and now get installed like ordinary libaries.
1049    
1050    There are now a number of new installation targets that give some
1051    fine-grain control over what classes and suffixes are known, and what
1052    they will map to.
1053    See config/targets for details.
1054    
1055    The code that caused plugin installation as part of running a
1056    tool's "build" script has been removed.  (The build script is for
1057    building, not for installing.)
1058    
1059    ----------------------------------------------------------------------
1060    Name: Matthias Blume (http://www.tti-c.org/blume/)
1061    Date: 2007/05/22 11:50:00 CDT
1062    Description:
1063    
1064    Added a boolean control named cm.tolerate-tool-failures (env. variable
1065    name: CM_TOLERATE_TOOL_FAILURES).  The default is false and makes
1066    CM fail if a shell tool reports a non-success exit status.  If
1067    the control is set to true, then CM will press on after tool failures
1068    in the event that the target files exist (even though they are
1069    considered outdated).  Turning the control to true can be useful for
1070    bootstrapping.
1071    
1072    ----------------------------------------------------------------------
1073    Name: Aaron Turon (http://www.cs.uchicago.edu/~adrassi)
1074    Date: 2007/05/19
1075    Description:
1076    
1077    Merge of ml-lpt revisions for 110.64.
1078    
1079    The name of several ml-lpt-lib modules has changed:
1080      Repair        => AntlrRepair
1081      StreamPos     => AntlrStreamPos
1082      ErrHandlerFn  => AntlrErrHandler
1083      EBNF          => AntlrEBNF
1084    
1085    The ml-antlr specification format has changed: declarations such as
1086    %tokens and nonterminal definitions can occur *multiple* times in the
1087    same specification.  The semantics are such that each new declaration
1088    extends the previous ones.  This does not apply to %start or %name,
1089    of course.
1090    
1091    Importing a grammar via %import now includes *all* declarations in from
1092    the imported grammar, except for %name, %entry, and %start.  Tokens
1093    and nonterminals can be dropped using the new %dropping clause of the
1094    %import directive; the separate %drop and %extend have been removed.
1095    
1096    We now allow optional type annotations on nonterminals, using the %nonterms
1097    directive as in ml-yacc.
1098    
1099    The refcell construct is now implemented using SML's regular reference
1100    cells, so the :== and !! notation has been deprecated.
1101    
1102    The ml-antlr tool now does much more checking of specifications, and
1103    its error messages have been greatly improved.  Error repair for
1104    generated parsers has been completely rewritten, and is now both
1105    much faster and more accurate.
1106    
1107    ml-ulex is now more lenient with escape codes (non-SML-standard
1108    escape codes are now interpreted literally, so e.g. \| denotes "|").
1109    Also, character classes may now include a "-" character at the beginning
1110    as is standard in most other regexp tools.
1111    
1112    All of these changes are documented in the user guide, which has
1113    been updated and improved with this merge.
1114    
1115    ----------------------------------------------------------------------
1116    Name: David MacQueen (http://www.cs.uchicago.edu/~jhr)
1117    Date: 2007/05/03
1118    Revision: r2492
1119    Description:
1120    
1121    Merge of the primop3 branch (base) into the trunk to create 110.63.1.
1122    Significant changes in FLINT and the front end, mostly having to do
1123    with a reorganized system for handling primops.  Various bug fixes
1124    and improvements in printing signatures.
1125    
1126    ----------------------------------------------------------------------
1127    Name: Aaron Turon (http://www.cs.uchicago.edu/~adrassi)
1128    Date: 2007/05/02
1129    Description:
1130    
1131    Preliminary commit of large ml-lpt revisions (more to come for 110.64).
1132    The ml-antlr specification format has changed: declarations such as
1133    %tokens and nonterminal definitions can occur *multiple* times in the
1134    same specification.  The semantics are such that each new declaration
1135    extends the previous ones.  Grammar extension constructs have also
1136    changed.  We now allow type annotations on nonterminals.  Finally,
1137    the refcell construct is now implemented using SML's regular reference
1138    cells, so the :== and !! notation has been deprecated.  All of these
1139    changes will appear in the 110.64 user guide for ml-lpt.
1140    
1141    The ml-antlr tool now does much more checking of specifications, and
1142    its error messages have been greatly improved.  There has also been
1143    some work on the error repair process for generated parsers, but this
1144    will be further improved in 110.64.
1145    
1146    ----------------------------------------------------------------------
1147    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1148    Date: 2007/04/24
1149    Description:
1150    
1151    More Basis fixes: The Char.fromString (etc.) functions did not handle
1152    the "\uxxxx" escape sequence.  There is still an outstanding bug with
1153    String.fromString the tail is a format escape.  I added a comment to
1154    this effect in Basis/Implementation/string.sml.
1155    Thanks to Andreas Rossberg.
1156    
1157    ----------------------------------------------------------------------
1158    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1159    Date: 2007/04/24
1160    Description:
1161    
1162    Added next function to Fifo and Queue modules in the SML/NJ Library.
1163    
1164    ----------------------------------------------------------------------
1165    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1166    Date: 2007/04/23
1167    Description:
1168    
1169    More Basis fixes: Time.fmt dropped the leading "~" for negative time
1170    values that had no whole part.
1171    
1172    ----------------------------------------------------------------------
1173    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1174    Date: 2007/04/23
1175    Description:
1176    
1177    More Basis fixes: the OS.Path module did not include the InvalidArc
1178    exception and did not do sufficient argument checking.
1179    Thanks to Stephen Weeks and Adam Chilpala.
1180    
1181    ----------------------------------------------------------------------
1182    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
1183    Date: 2007/04/16
1184    Description:
1185    
1186    Fixed an unbound functor bug in the AMD64 CM file.
1187    
1188    ----------------------------------------------------------------------
1189    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
1190    Date: 2007/04/12
1191    Description:
1192    
1193    Substantially changed the signature and implementation of AMD64
1194    SVID.  It now looks similar to the ia32 SVID, yet uses staged
1195    allocation.
1196    
1197    ----------------------------------------------------------------------
1198    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1199    Date: 2007/04/07
1200    Description:
1201    
1202    More Basis fixes: the WORD signature was missing {to,from}Large.
1203    Thanks to Andreas Rossberg.
1204    
1205    ----------------------------------------------------------------------
1206    Name: Matthias Blume (http://www.tti-c.org/blume/)
1207    Date: 2007/03/22 16:07:00 CDT
1208    Tag: release-110.63
1209    Description:
1210    
1211    Bumped version number to 110.63.
1212    
1213       !!!NEW BOOTFILES!!!
1214    
1215    ----------------------------------------------------------------------
1216    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
1217    Date: 2007/03/19
1218    Description:
1219    
1220    Fixed bogus operand sizes in AMD64 instruction spilling.
1221    
1222    ----------------------------------------------------------------------
1223    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1224    Date: 2007/03/19
1225    Description:
1226    
1227    Fixed a number of inconsistencies between the Posix.TTY structure
1228    and the Basis specification.  Thanks to Adam Chilpala.
1229    
1230    ----------------------------------------------------------------------
1231    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
1232    Date: 2007/02/26
1233    Description:
1234    
1235    Added preliminary support in MLRISC for Staged Allocation, a technique
1236    for specifying calling conventions (see
1237    http://www.eecs.harvard.edu/~nr/pubs/staged-abstract.html).
1238    Initially, we plan to use this code to generate C calls for the AMD64.
1239    
1240    The staged allocation code base resides in MLRISC/staged-allocation,
1241    and specialized calling conventions go in MLRISC/ARCH/staged-allocation.
1242    
1243    ----------------------------------------------------------------------
1244    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1245    Date: 2007/02/20
1246    Description:
1247    
1248      Bug fix: when SaveCState was called with two values to save, a subsequent
1249      GC could cause the RestoreCState to fail because the saved state had been
1250      promoted to tagless pair.
1251    
1252    ----------------------------------------------------------------------
1253    Name: Allen Leung (leunga (at) reservoir (dot) com)
1254    Date: 2007/02/20 19:08:00 EST
1255    Description:
1256    
1257        Bug triggered by:
1258    
1259        val a1 = Word8Array.array(a1, 0w0);
1260        val _  = Word8Array.update(a1, 0, 0w128);
1261    
1262        x86MCEmitter crashed when the immediate operand to MOVB was outside
1263    of the range -128 ... 127.  I've changed the code so that the range
1264    check is disabled.   Only the low order 8 bits of the immediate operand
1265    are now significant.
1266    
1267    
1268    ----------------------------------------------------------------------
1269    Name: Matthias Blume (http://www.tti-c.org/blume/)
1270    Date: 2007/02/15 09:20:00 CST
1271    Description:
1272    
1273    Eliminated any mention of lexgen.  (Lexgen was an early precursor
1274    to ml-ulex.)
1275    
1276    You should update your admin directory, so the shell scripts for
1277    maintaining your local copy of the repository reflect this change.
1278    
1279    ----------------------------------------------------------------------
1280    Name: Matthias Blume (http://www.tti-c.org/blume/)
1281    Date: 2007/02/14 15:45:00 CST
1282    Description:
1283    
1284    Fixed bug in CM's parallel make facility that failed to have
1285    the master re-link modules after letting slaves compile them.
1286    
1287    ----------------------------------------------------------------------
1288    Name: Matthias Blume (http://www.tti-c.org/blume/)
1289    Date: 2007/02/12 15:10:00 CST
1290    Description:
1291    
1292    Fixed typo in ml-build script that prevented library anchors
1293    from being registered.
1294    
1295    ----------------------------------------------------------------------
1296    Name: Matthias Blume (http://www.tti-c.org/blume/)
1297    Date: 2007/02/02 15:20:00 CST
1298    Tag: release-110.62
1299    Description:
1300    
1301    New working release (110.62).  NEW BOOTFILES!
1302    
1303    ----------------------------------------------------------------------
1304    Name: Aaron Turon (http://www.cs.uchicago.edu/~adrassi)
1305    Date: 2007/01/31
1306    Description:
1307    
1308    Brought ml-lpt manual up-to-date with the code.  Many minor
1309    improvements to the tools, and a few minor bugfixes.  Prepared
1310    ml-lpt-lib for integration with new UTF8 structure.  Changed
1311    the interface for creating streams in ml-ulex (we now support
1312    stream creation from several kinds of sources).  Overall, the
1313    tools are now quite stable, and their interfaces are unlikely to
1314    change in a way that would break compatibility.  More work,
1315    however, is needed in the documentation.
1316    
1317    ----------------------------------------------------------------------
1318    Name: Matthias Blume (http://www.tti-c.org/blume/)
1319    Date: 2007/02/01 10:05:00 CST
1320    Description:
1321    
1322    Implemented library installer.  Moved CM plugin code for
1323    ml-burg, ml-lex, and ml-yacc out of CM source tree and into
1324    their respective trees.  Implemented CM plugin for ml-ulex
1325    and ml-antlr.  Used library installer for ml-burg, ml-ulex,
1326    and ml-antlr.
1327    
1328    For ml-yacc and ml-lex we continue to have permanently "plugged-in"
1329    CM tools.  (It turns out to be too messy to do otherwise because
1330    there is too much code that during installation relies on the presence
1331    of these tools -- resulting in a tricky ordering problem.)
1332    
1333    ----------------------------------------------------------------------
1334    Name: Matthias Blume (http://www.tti-c.org/blume/)
1335    Date: 2007/01/30 11:05:00 CST
1336    Description:
1337    
1338    Added SMLofNJ.shiftArgs which is like a shell's "shift" command.
1339    Modified CM's startup code to use shiftArgs as it processes
1340    command line arguments.  This way, the init code in each .sml-file
1341    or library that is mentioned at the top level will see only
1342    those arguments that have not yet been processed at this point.
1343    In other words, the init code can "seize control" and process the
1344    remaining command line.
1345    
1346    ----------------------------------------------------------------------
1347    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1348    Date: 2007/01/30
1349    Description:
1350    
1351    Added fromList function to the ORD_SET interface and lookup to the
1352    ORD_MAP interface.  See the SML/NJ Library CHANGES file for details.
1353    
1354    ----------------------------------------------------------------------
1355    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1356    Date: 2007/01/28
1357    Description:
1358    
1359    Added the UTF8 structure and signature from the Moby compiler to
1360    the SML/NJ library (and the CML library).  These modules will replace
1361    the version in the ml-lpt-lib.
1362    
1363    ----------------------------------------------------------------------
1364    Name: Matthias Blume (http://www.tti-c.org/blume/)
1365    Date: 2007/01/26 15:10:00 CST
1366    Description:
1367    
1368    Added entries to handle ml-lpt-lib.cm in installer.
1369    
1370    ----------------------------------------------------------------------
1371    Name: Matthias Blume (http://www.tti-c.org/blume/)
1372    Date: 2006/12/15 11:10:00 CST
1373    Tag: release-110.61
1374    Description:
1375    
1376    New working release (110.61).  NEW BOOTFILES!
1377    
1378    This supersedes the pre-brown-paper-bug release (see below).
1379    
1380    ----------------------------------------------------------------------
1381    Name: Matthias Blume (http://www.tti-c.org/blume/)
1382    Date: 2006/12/15 11:00:00 CST
1383    Description:
1384    
1385    Fixed brown-paper-bag bug with CM's pathname handling, which made
1386    installation fail under Win32.
1387    
1388    ----------------------------------------------------------------------
1389    Name: Matthias Blume (http://www.tti-c.org/blume/)
1390    Date: 2006/12/14 12:00:00 CST
1391    Description:
1392    
1393    Obsolete!
1394    
1395    [New working release (110.61).  NEW BOOTFILES!]
1396    
1397    ----------------------------------------------------------------------
1398    Name: John Reppy (http://cs.uchicago.edu/~jhr)
1399    Date: 2006/14/06 09:50:00 CST
1400    Description:
1401    
1402    Fixed the code in runtime/c-libs/posix-tty/{tcgetattr,tcsetattr}.c to
1403    get the c_cc termios data copied correctly.  Also moved the allocation
1404    of the string to avoid problems if it caused a GC.
1405    
1406    Thanks to Timothy Bourke for the bug report and fix.
1407    
1408    ----------------------------------------------------------------------
1409    Name: Matthias Blume (http://www.tti-c.org/blume)
1410    Date: 2006/12/08 09:50:00 CST
1411    Description:
1412    
1413    Added code to CM's "standard shell tool" implementation which
1414    causes it to tolerate (with a warning) the situation where the shell
1415    command fails (e.g., due to the shell command's non-existence)
1416    as long as all target files exist.
1417    
1418    This makes it possible to, e.g., build ml-yacc from sources even if
1419    svn checkout messed up the time stamps on files in such a way that
1420    yacc.grm is younger than yacc.grm.sml or yacc.grm.sig.  (Ml-yacc would
1421    be needed to re-process yacc.grm, but obviously it might not yet be
1422    available at that time.)
1423    
1424    ----------------------------------------------------------------------
1425    Name: John Reppy (http://cs.uchicago.edu/~jhr)
1426    Date: 2006/12/06 12:06:00 CST
1427    Description:
1428    
1429    Fixed the types of recvVecFrom, recvVecFrom', recvVecFromNB, and
1430    recvVecFromNB' in the SOCKET signature.  This error is actually
1431    in the SML Basis specification too.
1432    
1433    ----------------------------------------------------------------------
1434    Name: Matthias Blume (http://www.tti-c.org/blume/)
1435    Date: 2006/12/05 22:40:00 CST
1436    Description:
1437    
1438    CM now reports undefined anchors as errors and aborts execution
1439    rather than silently pressing on using bogus values.
1440    
1441    ----------------------------------------------------------------------
1442    Name: Matthias Blume (http://www.tti-c.org/blume/)
1443    Date: 2006/11/29 10:00:00 CST
1444    Description:
1445    
1446    Use Say.vsay for printing the "[autoloading]" message, so
1447    #set CM.Control.verbose false (or -Ccm.verbose=false) can be used
1448    to suppress them.
1449    
1450    ----------------------------------------------------------------------
1451    Name: Matthias Blume (http://www.tti-c.org/blume/)
1452    Date: 2006/11/10 11:00:00 CST
1453    Description:
1454    
1455    Fixed bug in CM where "with:" specifications that affect compilation
1456    (as opposed to parsing) were ignored.
1457    
1458    ----------------------------------------------------------------------
1459    Name: Matthias Blume (http://www.tti-c.org/blume/)
1460    Date: 2006/11/09 14:30:00 CST
1461    Tag: release-110.60
1462    Description:
1463    
1464    New working release (110.60).  NEW BOOTFILES!
1465    
1466    This is the first subversion-hosted release.  There are also changes
1467    to the directory layout.  Here is a table:
1468    
1469    (All pathnames are relative to the SML/NJ "root" directory.)
1470    
1471      config -> config
1472    
1473      src/cm -> base/cm
1474      src/compiler -> base/compiler
1475      src/runtime -> base/runtime
1476      src/system -> base/system
1477    
1478      src/cm/pgraph -> pgraph
1479    
1480      src/READMES -> base/READMES
1481      src/$notefile -> base/NOTES/$notefile
1482         for <notefile> in BOOT CVSNOTES CYGWININSTALL HISTORY INSTALL
1483                           MACOSXINSTALL WININSTALL
1484    
1485      src/smlnj-lib -> smlnj-lib
1486      src/MLRISC -> MLRISC
1487      ckit -> ckit
1488      src/cml -> cml
1489      src/eXene -> eXene
1490      src/heap2asm -> heap2asm
1491      src/lexgen -> lexgen
1492      src/ml-burg -> ml-burg
1493      src/ml-lex -> ml-lex
1494      src/ml-yacc -> ml-yacc
1495      src/ml-nlffi-lib -> nlffi/lib
1496      src/ml-nlffigen -> nlffi/gen
1497      src/smlnj-c -> smlnj-c
1498      src/tools/TraceDebugProf -> trace-debug-profile
1499    
1500    In addition, there is also a new
1501    
1502      ml-lpt
1503    
1504    directory containing two new program generator tools: ml-ulex and
1505    ml-antlr (a lexer generator that handles unicode and an ANTRL-inspired
1506    LL(k) parser generator). These tools are currently "beta-quality"
1507    
1508    The latest versios of the sources can now be obtained anonymously
1509    via subversion.  For this, it is useful to first check out
1510    
1511       svn://smlnj-gforge.cs.uchicago.edu/smlnj/admin
1512    
1513    and put the resulting directory on your shell's PATH.  This provides
1514    access to three shell scripts: checkout-all.sh, stat-all.sh,
1515    and refresh-all.sh.
1516    
1517    To create a freshly checked-out copy of the sources, do
1518    
1519       checkout-all.sh [dir]
1520    
1521    where dir is the optional SML/NJ root directory (default is ".").
1522    
1523    This creates the above directory layout.  Each subdirectory of
1524    the root is under individual subversion control.  The stat-all.sh
1525    and refresh-al.sh scripts apply "svn stat" or "svn update" to
1526    each of these subtrees.
1527    
1528    ----------------------------------------------------------------------
1529    Name: Matthias Blume (http://www.tti-c.org/blume/)
1530    Date: 2006/11/02 12:20:00 CST
1531    Description:
1532    
1533    Reorganized directory layout.
1534    
1535    This is a temporary solution, more reorganization is to come.
1536    
1537    The basic idea is to have a number of toplevel trees, each corresponding
1538    to a well-defined part of the overall system.  Each part can be
1539    maintained individually, even in separate source repositories,
1540    although currently we still serve everything out of the main
1541    smlnj-gforge tree.
1542    
1543    Installer and and scripts have been updated to reflect the new
1544    layout.  The installer (base/src/system/smlnj/installer) is now
1545    "scriptable" to avoid burning too much knowledge about the
1546    layout into SML source code.  The main script used by the installer
1547    is in config/actions.
1548    
1549    The main change is that many of the subdirectories of what used to
1550    be known as "src" have moved to the toplevel.  The "src" directory
1551    itself has moved down into a subtree called "base".  (We may eventually
1552    get rid of the extra level of indirection represented by "src".)
1553    
1554    The layout is now as follows:
1555    
1556      toplevel tree name | default repository
1557                         | (using gf=svn://smlnj-gforge.cs.uchicago.edu/smlnj)
1558      -------------------+----------------------------------------------------
1559      config             | $gf/config/trunk
1560                         |
1561      base               | $gf/sml/trunk
1562                         |
1563      smlnj-lib          | $gf/smlnj-lib/trunk
1564      MLRISC             | $gf/MLRISC/trunk
1565                         |
1566      ml-yacc            | $gf/ml-yacc/trunk
1567      ml-lex             | $gf/ml-lex/trunk
1568      ml-burg            | $gf/ml-burg/trunk
1569      lexgen             | $gf/lexgen/trunk
1570      heap2asm           | $gf/heap2asm/trunk
1571                         |
1572      cml                | $gf/cml/trunk
1573      eXene              | $gf/eXene/trunk
1574      ckit               | $gf/ckit/trunk
1575      nlffi              | $gf/nlffi/trunk
1576                         |
1577      smlnj-c            | $gf/smlnj-c/trunk
1578    
1579    In $gf/admin there are a few useful shell scripts for checking out
1580    and maintaining the entire collection of trees:
1581    
1582       admin/checkout-all.sh [dir]
1583          -- optionally creates dir and checks out all trees from their
1584             default repositories; if dir is missing, checkout into .
1585       admin/refresh-all.sh [dir]
1586          -- looks at all trees (from the above list) in dir (default: .)
1587             and runs "svn update" if the tree exists and is under
1588             subversion control;
1589             non-existing or non-subversion trees are skipped
1590       admin/stat-all.sh [dir]
1591          -- like refresh-all.sh, but runs "svn stat" instead
1592    
1593    ----------------------------------------------------------------------
1594    Name: Matthias Blume (http://www.tti-c.org/blume/)
1595    Date: 2006/10/05 11:30:00 CDT
1596    Tag: blume-20061005-merge-amd64
1597    Description:
1598    
1599    Merged code for AMD64 backend (Mike Rainey's work).
1600    Everything is hooked up but untested.
1601    
1602    ----------------------------------------------------------------------
1603    Name: Matthias Blume (http://www.tti-c.org/blume/)
1604    Date: 2006/05/17 14:00:00 CST
1605    Tag: Release_110_59
1606    Description:
1607    
1608    New working version (110.59).  NEW BOOTFILES!
1609    
1610    I am freezing 110.59.  Changes other than the version-number increase:
1611    
1612      eXene:
1613    
1614         * committed changes to eXene from Alley Stoughton:
1615             "fixed bugs in X authorization and resource handling, as well
1616              as in the pile and viewport widgets"
1617    
1618      Runtime:
1619        * fixed linking problem with NetBSD 3.x.
1620    
1621      Lexgen:
1622        * lexgen tool handles non-ascii characters in 7-bit mode the same
1623          way that ml-lex does
1624    
1625        * lexgen propagates exceptions the same way that ml-lex does
1626    
1627      CML:
1628        * Fixed a bug in the SyncVar polling functions (iGetPoll,
1629          mTakePoll, and mGetPoll) that could lead to livelock.
1630    
1631    ----------------------------------------------------------------------
1632    Name: Matthias Blume (http://www.tti-c.org/blume/)
1633    Date: 2006/05/12 15:20:00 CST
1634    Tag: blume-20060515-makedepend
1635    Description:
1636    
1637    Implemented ml-makedepend (i.e., CM.sources) in a better (more robust)
1638    way.  This should hopefully fix the ml-makedepend problem permanently.
1639    
1640    ----------------------------------------------------------------------
1641    Name: Matthias Blume (http://www.tti-c.org/blume/)
1642    Date: 2006/05/12 15:15:00 CST
1643    Tag: blume-20060512-makedepend
1644    Description:
1645    
1646    Fixed long-standing bug with ml-makedepend where it would output a
1647    spurious dependency to a non-existing file.  (This is a simple fix.
1648    It might need further looking into.)
1649    
1650    ----------------------------------------------------------------------
1651    Name: Matthias Blume (http://www.tti-c.org/blume/)
1652    Date: 2006/04/20 10:30:00 CDT
1653    Tag: blume-20060420-heap2exec
1654    Description:
1655    
1656    Committed patches received from Johannes 5 Joemann (joemann@befree.free.de)
1657    that enable heap2exec under Linux and FreeBSD.
1658    
1659    ----------------------------------------------------------------------
1660    Name: John Reppy
1661    Date: 2006/04/14
1662    Tag:
1663    Description:
1664    
1665    MLRISC changes:
1666      1) renamed GAS_PSEUDO_OPS to AS_PSEUDO_OPS and put it in its own file.
1667      2) added support for NOTB and XORB operators in pseudo-op expressions
1668      3) added DarwinPseudoOp functor that supports Darwin's assembler syntax.
1669      4) added support for 64-bit integer literals
1670    
1671    ----------------------------------------------------------------------
1672    Name: Matthias Blume (http://www.tti-c.org/blume/)
1673    Date: yyyy/mm/dd
1674    Tag: Release_110_58
1675    Description:
1676    
1677    New working version (110.58).  NEW BOOTFILES!
1678    
1679    ----------------------------------------------------------------------
1680    Name: Matthias Blume (http://www.tti-c.org/blume/)
1681    Date: 2006/03/01 22:15:00 CST
1682    Tag: blume-20060301-lexgen
1683    Description:
1684    
1685    Incorporated several bugfixes to lexgen.  Compiler now compiles to
1686    fixpoint when using lexgen instead of ml-lex.
1687    
1688    ----------------------------------------------------------------------
1689    Name: Matthias Blume (http://www.tti-c.org/blume/)
1690    Date: 2006/02/28 22:45:00 CST
1691    Tag: blume-20060228-lexgen
1692    Description:
1693    
1694    Removed ml-flex and added lexgen instead, using Aaron Turon's newly
1695    provided tarball.  The generated lexers still have problems.
1696    
1697    ----------------------------------------------------------------------
1698    Name: Matthias Blume (http://www.tti-c.org/blume/)
1699    Date: 2006/02/26 23:30:00 CST
1700    Tag: blume-20060226-ml-flex
1701    Description:
1702    
1703    Removed ml-flex' dependency on regexp-lib.cm.  Turned installation
1704    of ml-flex on by default.
1705    
1706    ----------------------------------------------------------------------
1707    Name: Matthias Blume (http://www.tti-c.org/blume/)
1708    Date: 2006/02/24 16:30:00 CST
1709    Tag: blume-20060224-ml-flex
1710    Description:
1711    
1712    Added ml-flex sources.  Partially integrated, but should not be
1713    turned on yet!  (Read: leave it commented-out in config/targets!)
1714    
1715    ----------------------------------------------------------------------
1716    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1717    Date: 2006/02/23
1718    Tag: jhr-20060223-x86-64
1719    Description:
1720    Changes to support building on x86-64 systems (using the 32-bit mode).
1721    Also cleaned up signal handling on Linux.  Support for pre-2.2 Linux
1722    kernels dropped.
1723    
1724    ----------------------------------------------------------------------
1725    Name: Allen Leung (leunga (at) reservoir (dot) com)
1726    Date: 2006/02/22 15:07:00 EST
1727    Tag: leunga-20060222-mdl-gen
1728    Description:
1729    
1730      CM has changed.  Updated the script for rebuilding the MLRISC generated
1731    files.
1732    
1733    ----------------------------------------------------------------------
1734    Name: Matthias Blume (http://www.tti-c.org/blume/)
1735    Date: 2006/02/14 17:30:00 CST
1736    Tag: blume-20060214-intel-mac
1737    Description:
1738    
1739    Hooked code for Darwin-specific Intel ABI into main compiler.
1740    (This is a temporary solution which relies on the fact that the
1741    compiler itself does not use NLFFI.  Eventually we need to divorce
1742    intel mac from generic x86 unix code and make separate sets of binaries.)
1743    
1744    ----------------------------------------------------------------------
1745    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1746    Date: 2006/02/13
1747    Tag: jhr-20060213-intel-mac
1748    Description:
1749    Changed MLRISC x86 CCalls for partial support of MacOS X ABI.
1750    
1751    ----------------------------------------------------------------------
1752    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1753    Date: 2006/02/06
1754    Tag: jhr-20060206-intel-mac
1755    Description:
1756    Changes to support MacOS X on Intel hardware.  The C-calls support in
1757    MLRISC must also be updated to support the MacOS X ABI.
1758    
1759    ----------------------------------------------------------------------
1760    Name: Matthias Blume (http://www.tti-c.org/blume/)
1761    Date: 2005/12/16 00:15:00 CST
1762    Tag: blume-20051216-cm
1763    Description:
1764    
1765    Improved error reporting and handling in CM.
1766    
1767    ----------------------------------------------------------------------
1768    Name: Matthias Blume (http://www.tti-c.org/blume/)
1769    Date: 2005/11/21 14:00:00 CST
1770    Tag: blume-20051121-html-lib
1771    Description:
1772    
1773    Enabling $/html-lib.cm in config/preloads did not work.  This is fixed
1774    now.  (Since the anchor mapping for html-lib.cm is not yet in effect
1775    at the time when config/preloads is processed, the library has to
1776    be referred to by another name.  In 110.57 this would be
1777    $SMLNJ-LIB/HTML/html-lib.cm.  I arranged for $smlnj/smlnj-lib/html-lib.cm
1778    to be valid as well.)
1779    
1780    Thanks to Todd Wilson (Fresno) for alerting me to this issue.
1781    
1782    ----------------------------------------------------------------------
1783    Name: Matthias Blume (http://www.tti-c.org/blume/)
1784    Date: 2005/11/19 13:45:00 CST
1785    Tag: Release_110_57
1786    Description:
1787    
1788    Moved release tag for 110.57.
1789    
1790    ----------------------------------------------------------------------
1791    Name: Matthias Blume (http://www.tti-c.org/blume/)
1792    Date: 2005/11/19 23:35:00 CST
1793    Tag: blume-20051119-fish
1794    Description:
1795    
1796    Fixed a problem in config/install.sh where it tries to "fish" the
1797    name of the CM metadata directory from the wrong place (because
1798    the physical location of basis.cm has changed).  Also, corrected the
1799    path anchor for $/html-lib.cm.  (Thanks to M. Fluet for pointing out
1800    these problems.)
1801    
1802    ----------------------------------------------------------------------
1803    Name: Matthias Blume (http://www.tti-c.org/blume/)
1804    Date: 2005/11/16 14:30:00 CST
1805    Tag: blume-orig-110_57
1806    Description:
1807    
1808    New working version (110.57).  NEW BOOTFILES!
1809    
1810    UPDATE: The release tag has been moved to include a fix for a brown-paper-
1811            bag glitch (see above).
1812    
1813    ----------------------------------------------------------------------
1814    Name: Matthias Blume (http://www.tti-c.org/blume/)
1815    Date: 2005/11/16 10:25:00 CST
1816    Tag: blume-22051116-btrace
1817    Description:
1818    
1819    Fixed problem with bogus exception message when using back-trace
1820    facility.
1821    
1822    ----------------------------------------------------------------------
1823    Name: Matthias Blume (http://www.tti-c.org/blume/)
1824    Date: 2005/11/15 22:35:00 CST
1825    Tag: blume-22051115-array2copy
1826    Description:
1827    
1828    Added simple implementation of Array2.copy.  (Warning: mostly untested.)
1829    
1830    ----------------------------------------------------------------------
1831    Name: Matthias Blume (http://www.tti-c.org/blume/)
1832    Date: 2005/11/15 21:35:00 CST
1833    Tag: blume-22051115-versiontool
1834    Description:
1835    
1836    Reversed change to src/system/smlnj/internals/versiontool.cm.  This
1837    file gets loaded as a tool -- by the equivalent of CM.make during the
1838    run of CMB.make.  Thus, CMB's path configuration is meaningless for
1839    it.  Instead, it has the status of "user code", so it should use
1840    $/basis.cm to refer to the Basis library.  (At least that's true for
1841    the purpose of bootstrapping the previous change.  In the future it
1842    might make sense to have versiontool.cm refer to
1843    $smlnj/basis/basis.cm, i.e., the version of the Basis that the
1844    compiler itself uses.)
1845    
1846    Also patched src/system/testml to have it activate those extra anchor
1847    bindings in config/extrapathconfig.
1848    
1849    ----------------------------------------------------------------------
1850    Name: Matthias Blume (http://www.tti-c.org/blume/)
1851    Date: 2005/11/15 16:35:00 CST
1852    Tag: blume-22051115-libraries
1853    Description:
1854    
1855    This change affects the way the following libraries are tied into
1856    the system:
1857    
1858       $/basis.cm
1859       $/smlnj-lib.cm
1860       $/pp-lib.cm
1861       $/controls-lib.cm
1862       $/html-lib.cm
1863       $/ml-yacc-lib.cm
1864    
1865    These libraries are now internally (as seen from the source code
1866    of the implementation itself) known by the following names:
1867    
1868       $smlnj/basis/basis.cm
1869       $smlnj/smlnj-lib/smlnj-lib.cm
1870       $smlnj/smlnj-lib/pp-lib.cm
1871       $smlnj/smlnj-lib/controls-lib.cm
1872       $smlnj/smlnj-lib/html-lib.cm
1873       $smlnj/ml-yacc/ml-yacc-lib.cm
1874    
1875    This makes it possible to work with code that requires different
1876    versions of these libraries, and which refers to these libraries using
1877    their "default" names (i.e., the first set of names above).  In other
1878    words, one can un-define or re-define those default names without
1879    compromising the proper functioning of the compiler itself.
1880    
1881    A similar procedure had already been performed for several of the
1882    MLRISC libraries that are linked into the compiler.  I did some
1883    cleanup on this code.
1884    
1885    A new file in the config directory (named extrapathconfig) is
1886    responsible for setting up path anchors that the compiler itself does
1887    not need, but that are typically required by user code.
1888    
1889    ----------------------------------------------------------------------
1890    Name: Matthias Blume
1891    Date: 2005/11/07 17:05:00 CST
1892    Tag: blume-20051107-slice
1893    Description:
1894    
1895    Fixed erroneous out-of-bounds test in the "update" function of
1896    various *ArraySlice modules.  (Thanks to Vesa A. Norrman for pointing
1897    out the problem.)
1898    
1899    Pushed some Basis changes through ML-Lex, CML, and eXene.
1900    
1901    ----------------------------------------------------------------------
1902    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1903    Date: 2005/11/07
1904    Description:
1905    Fixed a Basis incompatibility: The depreciated function Substring.all
1906    was removed (use Substring.full instead).
1907    
1908    ----------------------------------------------------------------------
1909    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1910    Date: 2005/11/05
1911    Description:
1912    Tweaked interval set API in SML/NJ library; see the CHANGES file for details.
1913    
1914    ----------------------------------------------------------------------
1915    Name: Matthias Blume (http://www.tti-c.org/blume/)
1916    Date: 2005/11/02 16:25:00 CST
1917    Tag: blume-20051102-hex
1918    Description:
1919    
1920    * Runtime system bootstrap code now accepts hex digits in BOOTLIST
1921      in either upper case or lower case format.
1922    * Pushed changes to names of Pack<N>{Big,Little} structures through
1923      CML and eXene.
1924    
1925    ----------------------------------------------------------------------
1926    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1927    Date: 2005/11/02
1928    Description:
1929    Fixed a Basis incompatibility: Pack<N>{Big,Little} structures should
1930    be called PackWord<N>{Big,Little}.
1931    
1932    ----------------------------------------------------------------------
1933    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1934    Date: 2005/10/28
1935    Description:
1936    Fixed a minor Basis incompatibility: hex digits should be upper case.
1937    
1938    ----------------------------------------------------------------------
1939    Name: Matthias Blume (blume (at) tti - c (dot) org)
1940    Date: 2005/10/25 16:00:00 CDT
1941    Tag: Release_110_56
1942    Description:
1943    
1944    New working version (110.56).  NEW BOOTFILES!
1945    
1946    ----------------------------------------------------------------------
1947    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1948    Date: 2005/10/25
1949    Description:
1950    Added interval sets to utility library (signatures INTERVAL_DOMAIN
1951    and INTERVAL_SET, and functor IntervalSetFn).
1952    
1953    ----------------------------------------------------------------------
1954    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1955    Date: 2005/10/14
1956    Description:
1957    Add Zhong Shao's fix for datatype equality functions.
1958    
1959    ----------------------------------------------------------------------
1960    Name: Allen Leung (leunga (at) reservoir (dot) com)
1961    Date: 2005/10/14 12:30:00 EST
1962    Tag: leunga-20051014-x86-spill
1963    Description:
1964    
1965    Bug fix a bug found by Carl Hauser.
1966    There was a typo in the reload code for FCMP in x86SpillInstr.sml.
1967    
1968    ----------------------------------------------------------------------
1969    Name: Allen Leung (leunga (at) reservoir (dot) com)
1970    Date: 2005/10/14 11:15:00 EST
1971    Tag: leunga-20051014-x86-asm
1972    Description:
1973    
1974    Removed some debugging code in file x86Asm.sml.
1975    The function emit_operand was printing out debugging output.
1976    
1977    ----------------------------------------------------------------------
1978    Name: John Reppy
1979    Date: 2005/07/27
1980    Tag:
1981    Description:
1982    
1983    Fixed ml-lex to recognize "\r" as representing carriage return.
1984    
1985    ----------------------------------------------------------------------
1986    Name: John Reppy
1987    Date: 2005/07/27
1988    Tag:
1989    Description:
1990    
1991    Fixed ml-yacc to work on files with non-native end-of-line
1992    encodings (e.g., Windows text file on a Unix system).
1993    
1994    ----------------------------------------------------------------------
1995    Name: John Reppy
1996    Date: 2005/07/20
1997    Tag:
1998    Description:
1999    
2000    Added changes from Dominic Evans (oldmanuk (at) gmail (dot) com)
2001    to support HPUX 11.
2002    
2003    ----------------------------------------------------------------------
2004    Name: John Reppy
2005    Date: 2005/07/06
2006    Tag:
2007    Description:
2008    
2009    Changes to the SML/NJ library.  See smlnj-lib/CHANGES for details.
2010    
2011    ----------------------------------------------------------------------
2012    Name: Matthias Blume (blume (at) tti - c (dot) org)
2013    Date: 2005/07/06 00:45:00 CDT
2014    Tag: blume-20050706-slice-copy
2015    Description:
2016    
2017    Fixed reversed logic for deciding whether to "copy up" or "copy down"
2018    in *-array-slice.sml.
2019    
2020    ----------------------------------------------------------------------
2021    Name: Allen Leung (leunga (at) reservoir (dot) com)
2022    Date: 2005/05/31 17:00:00 EST
2023    Tag: leunga-20050531-cygwin-fault-2
2024    Description:
2025    
2026    A typo in the cygwin code fixed.
2027    
2028    ----------------------------------------------------------------------
2029    Name: Allen Leung (leunga (at) reservoir (dot) com)
2030    Date: 2005/05/31 16:47:00 EST
2031    Tag: leunga-20050531-cygwin-fault
2032    Description:
2033    
2034    Updated Cygwin's fault/signal handling to match the Windows version.
2035    Updated the export list.
2036    
2037    ----------------------------------------------------------------------
2038    Name: Matthias Blume (blume (at) tti - c (dot) org)
2039    Date: 2005/05/18 13:35:00 CDT
2040    Tag: Release_110_54
2041    Description:
2042    
2043    New working version (110.54).  NEW BOOTFILES!
2044    
2045    ----------------------------------------------------------------------
2046    Name: Matthias Blume (blume (at) tti - c (dot) org)
2047    Date: 2005/05/18 11:58:00 CDT
2048    Tag: blume-20050518-installer
2049    Description:
2050    
2051    Added support scripts for Mac OS X PackageMaker and modified
2052    config/install.sh so that it supports re-dumping a heap image
2053    after customization.
2054    
2055    ----------------------------------------------------------------------
2056    Name: Matthias Blume (blume (at) tti - c (dot) org)
2057    Date: 2005/05/18 10:55:00 CDT
2058    Tag: blume-20050518-realdiv-noovld
2059    Description:
2060    
2061    Un-overloaded / to work around bug in overloading resolution code.
2062    
2063    ----------------------------------------------------------------------
2064    Name: Matthias Blume (blume (at) tti - c (dot) org)
2065    Date: 2005/05/16 23:50:00 CDT
2066    Tag: blume-20050516-redump-heap
2067    Description:
2068    
2069    Added mechanism for re-creating a heap file for the interactive system
2070    after configuration variables have been changed.
2071    
2072       CM.redump_heap : string -> unit
2073    
2074    This is much like SMLofNJ.exportML, but starting from the resulting
2075    heap does not return to the caller of CM.redump_heap but
2076    restarts the interactive system from scratch.  The original call of
2077    CM.redump_heap does not return but ends the interactive session.
2078    Thus, CM.redump_heap is a lot like SMLofNJ.exportFn.
2079    
2080    Internally, redump_heap winds the dynamic execution context back to
2081    the point where the original heap image was created and re-executes
2082    the heap image generation code in the boot code.
2083    
2084    ----------------------------------------------------------------------
2085    Name: Matthias Blume (blume (at) tti - c (dot) org)
2086    Date: 2005/05/09 21:55:00 CDT
2087    Tag: blume-20050509-word64
2088    Description:
2089    
2090    Added a hack to the existing hack known as Word64 to make fromString
2091    behave correctly.  I am still not sure whether Word64.scan will work
2092    as specified with respect to the interaction of radix and prefix.
2093    
2094    ----------------------------------------------------------------------
2095    Name: Allen Leung (leunga (at) reservoir (dot) com)
2096    Date: 2005/05/04 11:50:00 EST
2097    Tag: leunga-20050504-checkgc
2098    Description:
2099    
2100    Added a gc protocol checking phase.  This phase is enabled with
2101    the flag "check-gc".  "debug-check-gc" turns on the verbose mode.
2102    
2103    ----------------------------------------------------------------------
2104    Name: Matthias Blume (blume (at) tti - c (dot) org)
2105    Date: 2005/05/04 10:45:00 CDT
2106    Tag: blume-20050504-intinf
2107    Description:
2108    
2109    Fixed a bug in the implementation of div and mod for IntInf.
2110    Thanks to Neophytos Michael for reporting the problem.
2111    
2112    ----------------------------------------------------------------------
2113    Name: Matthias Blume (blume (at) tti - c (dot) org)
2114    Date: 2005/05/04 10:35:00 CDT
2115    Tag: blume-20050504-join
2116    Description:
2117    
2118    Added a "join" combinator to the ParserComb module in smlnj-lib.cm.
2119    
2120    ----------------------------------------------------------------------
2121    Name: Matthias Blume (blume (at) tti - c (dot) org)
2122    Date: 2005/02/28 23:40:00 CST
2123    Tag: blume-20050228-mVar
2124    Description:
2125    
2126    Fixed serious bug (brown paper bag variety) in new implementation of
2127    structure Atom in CML.  (I had accidentally used a mailbox instead of
2128    an mvar, leaving the door open for races.)
2129    
2130    ----------------------------------------------------------------------
2131    Name: Matthias Blume (blume (at) tti - c (dot) org)
2132    Date: 2005/02/25 15:00:00 CST
2133    Tag: Release_110_53
2134    Description:
2135    
2136    New working version (110.53).  NEW BOOTFILES!
2137    
2138    ----------------------------------------------------------------------
2139    Name: Matthias Blume (blume (at) tti - c (dot) org)
2140    Date: 2005/02/25 14:50:00 CST
2141    Tag: blume-20050225-susp
2142    Description:
2143    
2144    Brought back SMLofNJ.Susp.  The underlying suspension type is the one
2145    implemented in Core -- which means that it is the same as the one used
2146    by the lazy extension.
2147    
2148    ----------------------------------------------------------------------
2149    Name: Matthias Blume (blume (at) tti - c (dot) org)
2150    Date: 2005/02/24 16:50:00 CST
2151    Tag: blume-20050224-cml-atom
2152    Description:
2153    
2154    Simpler and at the same time more general implementation of structure
2155    Atom in CML.
2156    
2157    ----------------------------------------------------------------------
2158    Name: Matthias Blume (blume (at) tti - c (dot) org)
2159    Date: 2005/02/15 17:35:00 CST
2160    Tag: blume-20050215-tools
2161    Description:
2162    
2163    Created new "tools" directory under "src" and moved "TraceDebugProf"
2164    there.
2165    
2166    ----------------------------------------------------------------------
2167    Name: Matthias Blume (blume (at) tti - c (dot) org)
2168    Date: 2005/02/10 17:55:00 CST
2169    Tag: blume-20050210-longlong
2170    Description:
2171    
2172    Implemented "long long" arguments and results for NLFFI.  (Only the
2173    PPC/MacOS implementation is complete, the other backends still need to
2174    be updated.)
2175    
2176    ----------------------------------------------------------------------
2177    Name: Matthias Blume (blume (at) tti - c (dot) org)
2178    Date: 2005/01/24 17:40:00 CST
2179    Tag: blume-20050124-mlyacc
2180    Description:
2181    
2182    Minor cleanup in ML-Yacc rule printing mechanism.  This should fix a
2183    problem with certain "as" patterns which previously got rendered
2184    using incorrect syntax.
2185    
2186    ----------------------------------------------------------------------
2187    Name: Matthias Blume (blume (at) tti - c (dot) org)
2188    Date: 2005/01/18 12:00:00 CST
2189    Tag: blume-20050118-profile
2190    Description:
2191    
2192    Made time profiling code (interrupt handler) in runtime system aware
2193    of new array representation.
2194    
2195    ----------------------------------------------------------------------
2196    Name: Matthias Blume (blume (at) tti - c (dot) org)
2197    Date: 2005/01/14 18:00:00 CST
2198    Tag: blume-20050114-heap2exec
2199    Description:
2200    
2201    Implemented new (but still experimental) heap2exec facility.  This is
2202    tested under Mac OS X and should work under Linux (will test shortly).
2203    It will probably also work on the Sparc (will test some time later).
2204    
2205      - removed old "HACKED_STANDALONE" hack from runtime
2206    
2207    To be able to test this, uncomment the request for "heap2asm" in
2208    config/targets prior to installation.  (Notice that this is different
2209    from "heap2exec" mentioned below.  Not a typo.)
2210    
2211    To perform an actual test, run the command
2212    
2213       $ bin/heap2exec heapfile execfile
2214    
2215    (You can put heap2exec on your shell's path.)
2216    
2217    For example, run
2218    
2219      $ bin/heap2exec bin/.heap/ml-yacc.ppc-darwin mly
2220    
2221    This will create a standalone executable called "mly" which you can
2222    then invoke directly as a command.
2223    
2224    ----------------------------------------------------------------------
2225    Name: Matthias Blume (blume (at) tti - c (dot) org)
2226    Date: 2005/01/07 11:44:00 CST
2227    Tag: blume-20050107-mlstring
2228    Description:
2229    
2230    fixed off-by-one error in ML_STRING macro (globals.c)
2231    
2232    ----------------------------------------------------------------------
2233    Name: Matthias Blume (blume (at) tti - c (dot) org)
2234    Date: 2004/12/23 18:00:00 CST
2235    Tag: blume-20041223-santa
2236    Description:
2237    
2238    Made ml-build script "smarter" (but only very little).
2239    
2240    ----------------------------------------------------------------------
2241    Name: Matthias Blume (blume (at) tti - c (dot) org)
2242    Date: 2004/12/21 15:05:00 CST
2243    Tag: blume-20041221-longlong
2244    Description:
2245    
2246    * Implemented access to signed and unsigned long long data in NLFFI.
2247    (The parameter-passing part of the picture has not complete. But
2248    data structure access seems to work.)
2249    
2250    * Fixed CM's incorrect assumption that the PPC is little-endian.
2251      (On the Mac, it is big-endian.  And that's currently our only
2252      PPC platform.)
2253    
2254    ----------------------------------------------------------------------
2255    Name: Matthias Blume (blume (at) tti - c (dot) org)
2256    Date: 2004/12/21 12:50:00 CST
2257    Tag: blume-20041221-memory
2258    Description:
2259    
2260    Some cleanup in the $c/memory.cm library: separated some concerns by
2261    moving allocation code and memory access code each into their own
2262    files.
2263    
2264    ----------------------------------------------------------------------
2265    Name: Allen Leung (leunga (at) reservoir (dot) com)
2266    Date: 2004/12/17 16:12:00 EST
2267    Tag: leunga-20041217-cygwin-smlnj-home
2268    Description:
2269    
2270        The Unix I/O library of SML/NJ on cygwin does not understand
2271    Windows style pathname, so problems arise when SMLNJ_HOME is set
2272    to a Windows style pathname.  _run-sml now converts SMLNJ_HOME
2273    to a POSIX pathname on cygwin.
2274    
2275    ----------------------------------------------------------------------
2276    Name: Matthias Blume (blume (at) tti - c (dot) org)
2277    Date: 2004/12/16 13:35:00 CST
2278    Tag: Release_110_52
2279    Description:
2280    
2281    Last-minute changes incorporated into 110.52.  Release tag moved.
2282    
2283    The changes:
2284       - HashString.hashString' -> HashString.hashSubstring
2285       - bug fix in UnivariateStats
2286    
2287    ----------------------------------------------------------------------
2288    Name: Matthias Blume (blume (at) tti - c (dot) org)
2289    Date: 2004/12/15 23:40:00 CST
2290    Tag: blume-20041215-hashSubstring
2291    Description:
2292    
2293    - HashString.hashString' -> HashString.hashSubstring
2294    - corresponding changes in atom.sml
2295    - "de-compressed" (aka. un-obfuscated) code for UnivariateStats and
2296      added some comments
2297    
2298    ----------------------------------------------------------------------
2299    Name: Matthias Blume (blume (at) tti - c (dot) org)
2300    Date: 2004/12/15 15:30:00 CST
2301    Tag: (Release_110_52)
2302    Description:
2303    
2304    New working version (110.52).  NEW BOOTFILES!
2305    
2306    ----------------------------------------------------------------------
2307    Name: Matthias Blume (blume (at) tti - c (dot) org)
2308    Date: 2004/12/15 12:45:00 CST
2309    Tag: blume-20041215-spaces
2310    Description:
2311    
2312    More on the space problem (this time for Win32).
2313    
2314    ----------------------------------------------------------------------
2315    Name: Matthias Blume (blume (at) tti - c (dot) org)
2316    Date: 2004/12/14 17:30:00 CST
2317    Tag: blume-20041214-spaces
2318    Description:
2319    
2320    Hacked some of the scripts (in particular: the installer) to cope with
2321    spaces in filenames a bit better.  But beware: the current "solution"
2322    is likely still full of bugs and inherently incomplete.  (We need to
2323    do away with those shell scripts for a comprehensive solution.)
2324    
2325    ----------------------------------------------------------------------
2326    Name: Matthias Blume (blume (at) tti - c (dot) org)
2327    Date: 2004/12/13 14:45:00 CST
2328    Tag: blume-20041213-ml-makedepend
2329    Description:
2330    
2331    Fixed bug in code for ml-makedepend.
2332    
2333    ----------------------------------------------------------------------
2334    Name: Matthias Blume (blume (at) tti - c (dot) org)
2335    Date: 2004/12/09 16:30:00 CST
2336    Tag: blume-20041209-statistics
2337    Description:
2338    
2339    Added two simple but potentially useful statistics modules to SML/NJ Library.
2340    (See CHANGES file there.)
2341    
2342    ----------------------------------------------------------------------
2343    Name: Matthias Blume (blume (at) tti - c (dot) org)
2344    Date: 2004/12/01 16:50:00 CST
2345    Tag: blume-20041201-atom
2346    Description:
2347    
2348    smlnj-lib:
2349    
2350      Added function HashString.hashString' for substrings.
2351      Hand-inlined CharVector.foldl into HashString (for speed).
2352      Modified implementation of structure Atom to avoid extracting
2353      strings from substrings unless necessary.
2354      (Also see CHANGES file for smlnj-lib.)
2355    
2356    ----------------------------------------------------------------------
2357    Name: Matthias Blume (blume (at) tti - c (dot) org)
2358    Date: 2004/11/24 22:15:00 CST
2359    Tag: blume-20041124-cml
2360    Description:
2361    
2362    Made sure CML compiles when Position = Int64.
2363    
2364    ----------------------------------------------------------------------
2365    Name: Matthias Blume (blume (at) tti - c (dot) org)
2366    Date: 2004/11/24 14:30:00 CST
2367    Tag: blume-20041124-position
2368    Description:
2369    
2370    The compiler can now be compiled in a mode that makes structure Position
2371    equal to Int64.  The default, however, is unchanged (Position = Int31)
2372    for the time being.
2373    
2374    To enable 64-bit positions, use the following procedure:
2375    
2376    1. Start sml
2377    2. Autoload $smlnj/cmb.cm (if not already autoloaded)
2378    3. Type
2379          #set (CMB.symval "USE_64_BIT_POSITIONS") (SOME 1);
2380    4. Run CMB.make() as usual.
2381    
2382    This is barely tested.  The only test so far was a little SML program
2383    counting the number of characters in an 8-gigabyte file by
2384    reading it character-by-character.  That test was successful.
2385    
2386    In support of 64-bit positions, a number of new functions have been
2387    added to the runtime system.
2388    
2389    ----------------------------------------------------------------------
2390    Name: Matthias Blume (blume (at) tti - c (dot) org)
2391    Date: 2004/11/23 14:45:00 CST
2392    Tag: blume-20041123-useFile
2393    Description:
2394    
2395    Fixed a problem with unhelpful error messages related to problems with
2396    .cm- or .sml files that appear as part of the sml command line.
2397    
2398    ----------------------------------------------------------------------
2399    Name: Matthias Blume (blume (at) tti - c (dot) org)
2400    Date: 2004/11/18 15:40:00 CST
2401    Tag: Release_110_51
2402    Description:
2403    
2404    New working version (110.51).  NEW BOOTFILES!
2405    
2406    ----------------------------------------------------------------------
2407    Name: Matthias Blume (blume (at) tti - c (dot) org)
2408    Date: 2004/11/18 15:35:00 CST
2409    Tag: <none>
2410    Description:
2411    
2412    Enabled dlopen and friends for FreeBSD (as recommended by Johannes 5
2413    Joemann).
2414    
2415    ----------------------------------------------------------------------
2416    Name: Allen Leung (leunga (at) reservoir (dot) com)
2417    Date: 2004/11/17 16:05:21 EST 2004
2418    Tag: leunga-20041117-mlrisc-live-kill
2419    Description:
2420    
2421       Added support for MLTree constructs LIVE and KILL
2422    to all the architectures.
2423    
2424    ----------------------------------------------------------------------
2425    Name: Matthias Blume (blume (at) tti - c (dot) org)
2426    Date: 2004/11/13 00:20:00 CST
2427    Tag: blume-20041113-versiontool
2428    Description:
2429    
2430    - Stripped down the versiontool: It now only handles the version number.
2431      The date string is generated at bootstrap time (during makeml).
2432    
2433    - In a previous commit, fixed a minor issue with how polyequal is being
2434      translated.  In particular, the code now "looks through" abstractions.
2435      This results in slightly fewer polyEqual warnings and hopefully slightly
2436      more efficient code.  Important examples for where this matters are
2437      the new int64 and word64 types.
2438    
2439    ----------------------------------------------------------------------
2440    Name: Matthias Blume (blume (at) tti - c (dot) org)
2441    Date: 2004/11/12 00:30:00 CST
2442    Tag: blume-20041112-int64
2443    Description:
2444    
2445    Structure Int64 fully hooked in.  (The implementation is not very
2446    efficient, though.)
2447    
2448    ----------------------------------------------------------------------
2449    Name: Matthias Blume (blume (at) tti - c (dot) org)
2450    Date: 2004/11/11 17:30:00 CST
2451    Tag: blume-20041111-more64
2452    Description:
2453    
2454    All the pieces of Word64 are now there, with the exception of the
2455    conversions from and to LargeWord. (Eventually these need to be identities,
2456    but for the time being they don't even make sense because LargeWord is
2457    32-bit wide.)
2458    
2459    Also started to add similar support for Int64, but major pieces of that
2460    are still missing.
2461    
2462    ----------------------------------------------------------------------
2463    Name: Matthias Blume (blume (at) tti - c (dot) org)
2464    Date: 2004/11/11 00:15:00 CST
2465    Tag: blume-20041111-word64
2466    Description:
2467    
2468    Structure Word64 is now (almost) complete, word literals and patterns
2469    seem to work.  There are a few odd pieces missing.  In particular,
2470    I didn't do the {from,to}LargeWord parts because LargeWord is still Word32
2471    at the moment.
2472    
2473    Making Word64 official would mean that LargeWord becomes Word64.  But
2474    this requires extreme care because most word-word conversions have to
2475    go through LargeWord, so making a mistake means loss of efficiency or
2476    worse.  Eventually there will be a solution similar to (but actually
2477    simpler than) what I did with IntInf.
2478    
2479    ----------------------------------------------------------------------
2480    Name: Matthias Blume (blume (at) tti - c (dot) org)
2481    Date: 2004/11/10 18:12:00 CST
2482    Tag: blume-20041110-64bit
2483    Description:
2484    
2485    More 64-bit hacking (but still not even half-way there yet).
2486    Also, some assorted improvements to the handling of 8-bit words.
2487    
2488    ----------------------------------------------------------------------
2489    Name: Matthias Blume (blume (at) tti - c (dot) org)
2490    Date: 2004/11/09 17:50:00 CST
2491    Tag: <none>
2492    Description:
2493    
2494    Started adding some infrastructure for supporting 64-bit int- and
2495    word-types.  (Still in its very early stages.)
2496    
2497    ----------------------------------------------------------------------
2498    Name: Matthias Blume (blume (at) tti - c (dot) org)
2499    Date: 2004/10/28 10:45:00 CDT
2500    Tag: Release_110_50
2501    Description:
2502    
2503    New working version (110.50).  NEW BOOTFILES!
2504    
2505                 =====================
2506    
2507    Also:
2508    
2509      - Changend config/srcarchiveurl from a file just
2510        containing the URL string into a file containing
2511        shell script code.  The code has access to the $VERSION variable.
2512      - Made corresponding changes to config/install.sh and config/unpack.
2513      - Default contents of config/srcarchiveurl uses $VERSION and
2514        normally does not have to be edited to reflect a version change.
2515    
2516      (As a result, a version change can be done by just editing
2517       config/version, the rest is now automatic.)
2518    
2519    ----------------------------------------------------------------------
2520    Name: Matthias Blume (blume (at) tti - c (dot) org)
2521    Date: 2004/10/27 17:50:00 CDT
2522    Tag: blume-20041027-btrace-msg
2523    Description:
2524    
2525    BackTrace.monitor now also reports the source of the exception that
2526    triggered the trace.
2527    
2528    ----------------------------------------------------------------------
2529    Name: Matthias Blume (blume (at) tti - c (dot) org)
2530    Date: 2004/10/27 17:20:00 CDT
2531    Tag: blume-20041027-x86-c-calls
2532    Description:
2533    
2534    This is the HISTORY entry for two earlier commits, both concerning
2535    the x86 c-calls code in MLRISC:
2536    
2537      - added a missing LOAD in the code that deals with struct arguments
2538      - made sure the caller does not add the wrong number of bytes to the
2539        stack pointer after a call of a function returning a struct
2540        (the callee already pops the implicit argument which points to
2541         the space reserved for the result)
2542    
2543    ----------------------------------------------------------------------
2544    Name: Allen Leung (leunga (at) reservoir (dot) com)
2545    Date: 2004/10/24 14:00:00 EST
2546    Tag: leunga-20041024-x86-gas-fucomip
2547    Description:
2548    
2549       John discovered a bug in the syntax of fucomip.
2550       The opcodes FU?COMIP? have been changed to
2551    
2552           fu?comip? %st(i), %st
2553    
2554    ----------------------------------------------------------------------
2555    Name: Matthias Blume (blume (at) tti - c (dot) org)
2556    Date: 2004/10/20 15:06:00 CDT
2557    Tag: blume-20041020-standalone-backtrace
2558    Description:
2559    
2560    Added a mechanism for getting back-trace information from standalone
2561    programs.  Here is how it works:
2562    
2563       1. The part of the program from which you want to get backtrace
2564          information (usually the whole program) should be wrapped with
2565          BackTrace.monitor.  This is a (unit->'a)->'a function, and your
2566          main program could be modified from something like
2567    
2568             fun main (pgm, args) = ...
2569    
2570         to
2571    
2572            fun main (pgm, args) = BackTrace.monitor (fn () => ...)
2573    
2574       2. To be able to access BackTrace.monitor, you have to add
2575          library $smlnj-tdp/plugins.cm to the .cm file that contains your
2576          main function.
2577    
2578       3. Remove all compiled code (i.e., all the .cm/ subdirectories that
2579          CM might have created in the past for your project).
2580    
2581       4. Build the system using this command line:
2582    
2583             ml-build -Ctdp.instrument=true \$smlnj-tdp/back-trace.cm \
2584                      myprog.cm MyProg.main myprog
2585    
2586          instead of the usual
2587    
2588             ml-build myprog.cm MyProg.main myprog
2589    
2590    I changed a library name:
2591    
2592       $/trace-debug-profile.cm --> $smlnj-tdp/plugins.cm
2593    
2594    New libraries:
2595    
2596       $smlnj-tdp/back-trace.cm
2597          -- when loaded causes the back-trace plugin to be installed
2598       $smlnj-tdp/coverage.cm
2599          -- when loaded causes the coverage plugin to be installed
2600    
2601    ----------------------------------------------------------------------
2602    Name: Matthias Blume (blume (at) tti - c (dot) org)
2603    Date: 2004/10/18 16:45:00 CDT
2604    Tag: blume-20041018-groupowner
2605    Description:
2606    
2607    Added an "obsolete" warning for the "group owner" syntax to CM's parser.
2608    
2609    Eliminated group owner specs from .cm files throughout the source tree.
2610    
2611    ----------------------------------------------------------------------
2612    Name: Matthias Blume (blume (at) tti - c (dot) org)
2613    Date: 2004/10/15 15:45:00 CDT
2614    Tag: blume-20041015-coverage
2615    Description:
2616    
2617    * Test coverage tool added!
2618    * Further reorganization of tracing-, debugging-, and profiling support:
2619    
2620        - moved original BTImp -- now called BackTrace -- into a separate
2621          library called $/trace-debug-profile.cm
2622        - eliminated all mentions of BTrace from SMLofNJ.Internals
2623        - only the instrumentation mechanism is now left in the compiler proper
2624        - BackTrace module is a plugin which is NOT plugged in by default
2625        - Coverage module is another such plugin
2626    
2627    To get the benefits of any of these plugin modules, the code in
2628    question must be compiled with tdp instrumentation turned on.  This
2629    can be done by setting SMLofNJ.Internals.TDP.mode to true.
2630    (The ref cell is also controlled via the -Ctdp.instrument=... switch.)
2631    
2632    Plugins are selected at link time.  (Pre-compiled instrumented code
2633    can be re-loaded with different plugins in effect.)  When an
2634    instrumented module is linked, whatever plugins are at that time
2635    enabled will come into effect for that module.
2636    
2637    To enable the back-trace plugin, load library $/trace-debug-profile.cm
2638    and invoke BackTrace.install() (e.g., from the interactive prompt).
2639    To enable the coverage plugin, load the same library and invoke
2640    Coverage.install().
2641    
2642    Back-traces are generated automatically on uncaught exceptions and
2643    when the code in question explicitly invokes BackTrace.trigger().
2644    
2645    Coverage (and execution frequency-) information must be queried
2646    explicitly by calling Coverage.not_covered and Coverage.hot_spots.
2647    
2648    ----------------------------------------------------------------------
2649    Name: Matthias Blume (blume (at) tti - c (dot) org)
2650    Date: 2004/10/14 17:40:00 CDT
2651    Tag: blume-20041014-tdp-core
2652    Description:
2653    
2654    Snapshot of a significant overhaul of how the trace/debug/profile support
2655    is hooked into the system (specifically: Core and SMLofNJ.Internals).
2656    
2657    ----------------------------------------------------------------------
2658    Name: Matthias Blume (blume (at) tti - c (dot) org)
2659    Date: 2004/10/13 16:34:00 CDT
2660    Tag: blume-20041013-tdp
2661    Description:
2662    
2663    Some rationalization of names:
2664    
2665       structure BTrace -> structure TDPInstrument
2666       etc.
2667    
2668    This is is preparation of using the original back-trace
2669    instrumentation for other purposes.  "TDP" stands for
2670    Trace/Debug/Profile.
2671    
2672    The control flag controlling whether instrumentation is on or off is now
2673    registered under a different name, so instead of running sml as
2674    
2675     sml -Cinstrument.btrace-mode=true
2676    
2677    one has to say
2678    
2679     sml -Ctdp.instrument=true
2680    
2681    ----------------------------------------------------------------------
2682    Name: Matthias Blume (blume (at) tti - c (dot) org)
2683    Date: 2004/10/11 16:37:00 CDT
2684    Tag: blume-20041011-regions
2685    Description:
2686    
2687    Made some minor modifications to elabcore.sml to have source regions
2688    be propagated more tightly -- resulting in better (i.e., smaller)
2689    regions being reported in error- and debug messages.
2690    
2691    ----------------------------------------------------------------------
2692    Name: Matthias Blume (blume (at) tti - c (dot) org)
2693    Date: 2004/10/08 22:50:00 CDT
2694    Tag: blume-20041008-cmkw
2695    Description:
2696    
2697    Fixed handling of keywords in .cm files: After seeing "is" the lexer
2698    treats subsequent occurrences of "group", "library", "source", "is",
2699    "*", and "-" as ordinary identifiers rather than keywords.
2700    
2701    Most seriously, this fixes a problem with CM's "shell" tool.  The tool
2702    is supposed to accept a tool argument called "source", but this did
2703    not work because of the clash with the keyword.
2704    
2705    ----------------------------------------------------------------------
2706    Name: Matthias Blume (blume (at) tti - c (dot) org)
2707    Date: 2004/10/07 16:00:00 CDT
2708    Tag: blume-20041007-cleanup
2709    Description:
2710    
2711    Assorted cleanup work:
2712    
2713      - got rid of intstrmap in favor of using the library's
2714        hash table implementation
2715      - threw out most of the pathnames stuff, as it was not used anyway
2716      - simplified tokentable implementation
2717      - fixed some minor spelling errors
2718    
2719    ----------------------------------------------------------------------
2720    Name: Matthias Blume (blume (at) tti - c (dot) org)
2721    Date: 2004/10/06 15:15:15 CDT
2722    Tag: blume-20041006-handler
2723    Description:
2724    
2725    Cleaned up the absyn to reflect the invariant that HANDLE always
2726    carries a FNexp as part of the type definition.  This eliminates some
2727    superfluous sanity checks at runtime down the road.
2728    
2729    Some minor cleanup of the btrace code.
2730    
2731    ----------------------------------------------------------------------
2732    Name: Matthias Blume (blume (at) tti - c (dot) org)
2733    Date: 2004/10/01 10:20:30 CDT
2734    Tag: blume-20041001-slave
2735    Description:
2736    
2737    Added hack to make slave mode work in the presence of the version
2738    tool.  (Still, since the master does two passes over the code for
2739    CMB.make, the release number gets bumped twice when slaves are
2740    attached.  I don't know if this is worth fixing...)
2741    
2742    ----------------------------------------------------------------------
2743    Name: Matthias Blume (blume (at) tti - c (dot) org)
2744    Date: 2004/09/30 10:55:00 CDT
2745    Tag: blume-20040930-version
2746    Description:
2747    
2748    * Moved the "version" magic into its own little library under
2749      src/system/smlnj/internal.  This avoids expensive reconstruction of
2750      a stable src/compiler/core.cm.
2751    
2752    * At the same time, structure CompilerVersion is now known as
2753      structure SMLNJVersion.
2754    
2755    * Arranged for the version tool to NOT kick in when rebuilding the system
2756      (makeml -rebuild, fixpt).  Otherwise one would never reach a fixpoint.
2757      Also, loading the versiontool does not work when rebuilding the system
2758      because CM is not properly initialized at that time.
2759    
2760    ----------------------------------------------------------------------
2761    Name: Matthias Blume (blume (at) tti - c (dot) org)
2762    Date: 2004/09/29 14:00:00 CDT
2763    Tag: blume-20040929-autoversion
2764    Description:
2765    
2766    Implemented some CM magic to have
2767        file src/compiler/TopLevel/main/version.sml
2768    generated automagically.
2769    The version is taken from two files: config/version and config/release.
2770    The first is expected to contain a two-part version number such as 110.49.
2771    The second should contain a single number, but it may be missing.
2772    
2773    If the environment variable VERSIONTOOL_BUMP_RELEASE is defined at the
2774    time the version tool is loaded (which is the first time you say CMB.make),
2775    then the tool will increment the value stored in config/release every
2776    time CMB.make is invoked.
2777    
2778    The binfile format is now insensitive to anything beyond the first
2779    two components of a version number, so bumping the release does not render
2780    binfiles incompatible.  Auto-bumping can be used to keep track of versions
2781    during development without invalidating existing binfiles.
2782    
2783    In any case, every CMB.make updates the date information in version.sml.
2784    (This is the date that is printed in the banner.)
2785    
2786    ----------------------------------------------------------------------
2787    Name: Matthias Blume (blume (at) tti - c (dot) org)
2788    Date: 2004/09/28 10:53:00 CDT
2789    Tag: blume-20040928-controls
2790    Description:
2791    
2792    Some cleanup of the controls code.
2793    
2794    ----------------------------------------------------------------------
2795    Name: Matthias Blume (blume (at) tti - c (dot) org)
2796    Date: 2004/09/27 22:08:00 CDT
2797    Tag: blume-20040927-controls
2798    Description:
2799    
2800    Added two pieces of functionality to the Controls interface:
2801    
2802    1.   val save'restore: 'a control -> unit -> unit
2803    
2804       grabs the current value of the control in stage 1 and restores it
2805       in stage 2.
2806    
2807    2.   val set' : 'a control * 'a -> unit -> unit
2808    
2809       stores the given value into the control in stage 2 (i.e., delayed)
2810       but does all error checking in stage 1.
2811       (This is for string controls that need to do parse their argument --
2812        something that might fail.  In some cases, notably in CM, one
2813        already knows the intended argument but wants to delay the actual
2814        assignment until a time when error recovery would be more difficult.)
2815    
2816    Changed the handling of controls in tool arguments to classes "sml" and
2817    "lazysml":
2818       - use Controls.save'restore as a more robust way of restoring the
2819         old value (in particular: without having to re-parse the string)
2820       - use controls to handle the "overload" keyword in the init group
2821         (I believe this change actually fixes a long-standing obscure bug.)
2822    
2823    ----------------------------------------------------------------------
2824    Name: Matthias Blume (blume (at) tti - c (dot) org)
2825    Date: 2004/09/27 17:00:00 CDT
2826    Tag: blume-20040927-lazysml
2827    Description:
2828    
2829    Added a new tool class called "lazysml" to CM's tool chest.  The only
2830    difference to "sml" is that compilation is done with Control.lazysml
2831    set to true.  A source of class "lazysml" is automatically recognized
2832    by a file name suffix of ".lml".
2833    
2834    In addition to the above feature, the original class "sml" now also
2835    supports a tool argument "lazy" which has the same effect.  As a
2836    result, the following three lines are equivalent:
2837    
2838        foo.sml : lazysml
2839        foo.sml : sml (lazy)
2840        foo.sml (lazy)
2841    
2842    The setting goes into effect both during parsing and during
2843    compilation.  The original setting is restored right after parsing and
2844    after compilation, respectively.
2845    
2846    In addition to all the above, there is also a general mechanism to set
2847    ANY of the "controls" that are available at the command line via
2848    "-C..." on a per-sml-file basis.  The same rules that apply for "lazy"
2849    apply as well. (In fact, "lazy" is implemented as a special case of
2850    the general mechanism.)
2851    
2852    The .cm file syntax uses a new keyword tool argument called "with".
2853    There are several ways of indicating the desired settings:
2854    
2855        foo.sml (with:parser.quotations=true)
2856        foo.sml (with:(name:parser.quotations value:true))
2857        foo.sml (with:(name:name1 value:value1 name:name2 value:value2 ...))
2858        foo.sml (with:(name1=value1 name2=value2 ...))
2859        foo.sml (with:(name1=value1 name:name2 value:value2 name3=value3 ...))
2860    
2861        etc.
2862    
2863    Another possible abbreviation is to leave out the =v or value:v part
2864    if the name refers to a boolean control (in which case the value is
2865    taken to be true).  Thus, one could get lazy sml also by saying:
2866    
2867        foo.sml (with:parser.lazy-keyword=true)
2868        foo.sml (with:parser.lazy-keyword)
2869        foo.sml (with:(name:parser.lazy-keyword value:true))
2870        foo.sml (with:(name:parser.lazy-keyword))
2871    
2872    ----------------------------------------------------------------------
2873    Name: Matthias Blume (blume (at) tti - c (dot) org)
2874    Date: 2004/09/24 16:22:00 CDT
2875    Tag: blume-20040924-ppc-long-branch
2876    Description:
2877    
2878    Turned message about "emiting long form of branch" off by default.
2879    Added a control flag to turn it back on when desired.
2880    
2881    ----------------------------------------------------------------------
2882    Name: Matthias Blume (blume (at) tti - c (dot) org)
2883    Date: 2004/09/24 16:05:00 CDT
2884    Tag: blume-20040924-rounding
2885    Description:
2886    
2887    Applied patch for setting rounding modes under Mac OS X.  Thanks to
2888    Melissa O'Neill for providing the code!
2889    
2890    ----------------------------------------------------------------------
2891    Name: Matthias Blume (blume (at) tti - c (dot) org)
2892    Date: 2004/09/23 17:30:00 CDT
2893    Tag: blume-20040923-envvars
2894    Description:
2895    
2896    1. Changed definition of type ControlRegistry.registry_tree to
2897       include control_info (i.e., the name of the controlling environment
2898       variable).
2899    
2900    2. Added command-line flags -e and -E to print the names of environment
2901       variables that can be used to control internal settings.
2902       (This uses the new API mentioned in 1.)
2903    
2904    ----------------------------------------------------------------------
2905    Name: Matthias Blume (blume (at) tti - c (dot) org)
2906    Date: 2004/09/13 16:50:00 CDT
2907    Tag: Release_110_49
2908    Description:
2909    
2910    New working version (110.49).  NEW BOOTFILES!
2911    
2912    ----------------------------------------------------------------------
2913    Name: Matthias Blume
2914    Date: 2004/09/13 16:20:00 CDT
2915    Tag: blume-20040913-config-mlrisc
2916    Description:
2917    
2918    Put target "mlrisc" back into the default list.
2919    (There is no harm in having it, and some users have expressed their
2920    wish to have "mlrisc" included by default.)
2921    
2922    ----------------------------------------------------------------------
2923    Name: John Reppy
2924    Date: 2004/09/13
2925    Tag: jhr-20040913-signals
2926    Description:
2927    
2928    Fixed the signal masking code to properly nest mask/unmask operations
2929    on a per-signal basis.
2930    
2931    ----------------------------------------------------------------------
2932    Name: Matthias Blume (blume (at) tti - c (dot) org)
2933    Date: 2004/09/08 13:20:00 CDT
2934    Tag: blume-20040908-heap-magic
2935    Description:
2936    
2937    Bumped the heap macig number to 0x09082004 to account for the changed
2938    layout of the ML frame under MacOS X.
2939    
2940    ----------------------------------------------------------------------
2941    Name: Allen Leung (leunga (at) reservoir (dot) com)
2942    Date: 2004/09/03 11:26:00 EST
2943    Tag: leunga-20040903-cygwin-install
2944    Description:
2945    
2946       Added a patch to _arch-n-opsys to enable the Cygwin runtime.
2947    The Cygwin runtime is turned on by setting the environment
2948    variable SMLNJ_CYGWIN_RUNTIME to 1.
2949    
2950    ----------------------------------------------------------------------
2951    Name: Matthias Blume (blume (at) tti - c (dot) org)
2952    Date: 2004/08/31 17:15:00 CDT
2953    Tag: blume-20040831-core
2954    Description:
2955    
2956    Added some exports to src/compiler/core.cm upon request by J. Joemann.
2957    
2958    ----------------------------------------------------------------------
2959    Name: Matthias Blume (blume (at) tti - c (dot) org)
2960    Date: 2004/08/30 17:55:00 CDT
2961    Tag: blume-20040830-installer
2962    Description:
2963    
2964    Upon request by Johannes Joemann:
2965    
2966    - improved ML code of installer to fall back to coping when renaming
2967      fails (i.e., when source and target are on different file systems);
2968      the code compiles but has yet to be tested in anger
2969    - removed mlrisc from list of default targets (config/targets)
2970    
2971    ----------------------------------------------------------------------
2972    Name: Matthias Blume (blume (at) tti - c (dot) org)
2973    Date: 2004/08/27 17:20:00 CDT
2974    Tag: blume-20040827-ptreql
2975    Description:
2976    
2977    Added ptreql primop to structure InlineT (upon request from Larry
2978    Paulson).
2979    
2980    ----------------------------------------------------------------------
2981    Name: Allen Leung (leunga (at) reservoir (dot) com)
2982    Date: 2004/08/15 21:21:00 EST
2983    Tag: leunga-110_48-udgraph
2984    Description:
2985    
2986    Another bug fix from Carl Hauser:
2987    
2988    diff /net/niflab/smlnj48/src/MLRISC/graphs/udgraph.sml udgraph.sml
2989    > 48c48
2990    > <              | rmv((e as (k,_))::es,L) = rmv(es,if k = i then es else
2991    > e::L)
2992    > ---
2993    > >              | rmv((e as (k,_))::es,L) = rmv(es,if k = i then L else e::L)
2994    > Without this, any deletion of an edge in an undirected graph does severe
2995    > violence to the graph.
2996    
2997    ----------------------------------------------------------------------
2998    Name: Allen Leung (leunga (at) reservoir (dot) com)
2999    Date: 2004/08/10 23:35:00 EST
3000    Tag: leunga-110_48-ppc
3001    Description:
3002    
3003       The IBM/MacOS syntax switch on PPC was incorrectly swapped.
3004    
3005    ----------------------------------------------------------------------
3006    Name: Matthias Blume (blume (at) tti - c (dot) org)
3007    Date: 2004/08/10 12:00:00 CDT
3008    Tag: Release_110_48
3009    Description:
3010    
3011    New working version (110.48).  NEW BOOTFILES!
3012    
3013    ----------------------------------------------------------------------
3014    Name: Allen Leung (leunga (at) reservoir (dot) com)
3015    Date: 2004/08/09 12:21:00 EST
3016    Tag: leunga-110_47-dijsktra
3017    Description:
3018    
3019    Bug fix from Carl Hauser:
3020    
3021    single_source_shortest_paths in dijkstra.sml was observed to get wrong
3022    answers (by comparing to single_source_shortest_paths in bellman-ford.sml).
3023    
3024    The problem is that following the expression A.update(dist,s,Num.zero)
3025    it is necessary to update the priority queue using Q.decreaseWeight(Q,s).
3026    
3027    ----------------------------------------------------------------------
3028    Name: Matthias Blume (blume (at) tti - c (dot) org)
3029    Date: 2004/08/06 18:10:00 CDT
3030    Tag: blume-20040806-cmdline
3031    Description:
3032    
3033    Fiddled with handling of command-line options:
3034    
3035      * sml now quits after processing the command line
3036        if -H, -S, -h<n>, or -s<n> appears as the last
3037        command-line argument
3038      * a new option -q terminates the session when encountered on
3039        the command line; subsequent arguments will be ignored
3040      * bug fixes: short (erroneous) arguments are no longer ignored
3041        completely
3042    
3043    ----------------------------------------------------------------------
3044    Name: Allen Leung (leunga (at) reservoir (dot) com)
3045    Date: 2004/08/04 18:17:00 EST
3046    Tag: leunga-110_47-ppc-ibm-asm
3047    Description:
3048    
3049      - Added minimal IBM assembly syntax support for PowerPC.
3050    
3051      - Cygwin: manually changed the file cygwin.def.  Some exported symbols have
3052        been altered in the runtime.  We need an automatic way to keep the file
3053        in sync.
3054    
3055    ----------------------------------------------------------------------
3056    Name: Matthias Blume (blume (at) tti - c (dot) org)
3057    Date: 2004/08/04 14:00:00 CDT
3058    Tag: Release_110_47
3059    Description:
3060    
3061    New working version (110.47).  NEW BOOTFILES!
3062    
3063    ----------------------------------------------------------------------
3064    Name: Matthias Blume (blume (at) tti - c (dot) org)
3065    Date: 2004/08/03 14:25:00 CDT
3066    Tag: blume-20040803-callingconv
3067    Description:
3068    
3069    Added low-level support for choosing C calling conventions by
3070    twiddling the type of rawccall.  (See
3071    src/compiler/Semant/types/cproto.sml for details.)
3072    
3073    ----------------------------------------------------------------------
3074    Name: Matthias Blume (blume (at) tti - c (dot) org)
3075    Date: 2004/08/02 15:55:00 CDT
3076    Tag: blume-20040802-backout
3077    Description:
3078    
3079    Backed out of change to win32-filesys.c.  The earlier patch to
3080    get_file_time caused CM to produce files with the wrong time stamp.
3081    
3082    ----------------------------------------------------------------------
3083    Name: Matthias Blume (blume (at) tti - c (dot) org)
3084    Date: 2004/08/02 14:45:00 CDT
3085    Tag: blume-20040802-nlffi-win32
3086    Description:
3087    
3088    Added NLFFI support for Win32, adapted from a patch provided by David
3089    Hansel.  This is currently completely untested.  Also, the issue
3090    concerning stdcall vs. ccall is still unresolved.
3091    
3092    ----------------------------------------------------------------------
3093    Name: Matthias Blume (blume (at) tti - c (dot) org)
3094    Date: 2004/07/30 17:55:00 CDT
3095    Tag: blume-20040730-various
3096    Description:
3097    
3098    Gearing up towards 110.47...
3099    
3100    - various minor bugfixes to ml-nlffigen
3101    - a beginning of a manual for nlffi
3102    
3103    - eliminated 'export name=value' in config/install.sh as this does
3104      not work with certain versions of /bin/sh
3105      (Thanks to David King at Motorola for catching this.)
3106    
3107    - several bugfixes provided or suggested by David Hansel at Reactive Systems:
3108      - added a test for tm==NULL to gmtime.c and localtime.c
3109      - applied patch for incorrect GetFileTime under win32
3110      - toSeconds -> toMilliseconds in Win32/win32-process.sml
3111    
3112    ----------------------------------------------------------------------
3113    Name: Matthias Blume (blume (at) tti - c (dot) org)
3114    Date: 2004/07/21 18:20:00 CDT
3115    Tag: blume-20040721-nlffigen
3116    Description:
3117    
3118    - Fixed minor issue in ml-nlffigen: Now generate structure T_foo
3119      for a typedef to an incomplete type, but leave out the "typ" member.
3120      (This is just for consistency.)
3121    - Started to produce what is supposed to become better (i.e., comprehensive)
3122      documentation of what ml-nlffigen does and produces.
3123    
3124    ----------------------------------------------------------------------
3125    Name: Matthias Blume (blume (at) tti - c (dot) org)
3126    Date: 2004/07/14 16:25:00 CDT
3127    Tag: blume-20040714-union
3128    Description:
3129    
3130    Added C_UNION to c-calls/c-types.sml and updated the machinery
3131    (ml-nlffigen, cproto.sml) that conveys C function interface
3132    information to the code generator.
3133    
3134    However, the actual architecture-specific implementation of function
3135    arguments and results that are C unions is still not implemented.
3136    
3137    ----------------------------------------------------------------------
3138  Name: Allen Leung (leunga (at) reservoir (dot) com)  Name: Allen Leung (leunga (at) reservoir (dot) com)
3139  Date: 2004/07/14 14:38:00 EST  Date: 2004/07/14 14:38:00 EST
3140  Tag: leunga-110_46_1-ppc-lwzu  Tag: leunga-110_46_1-ppc-lwzu

Legend:
Removed from v.1546  
changed lines
  Added in v.3912

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