diff --git a/BUILDING b/BUILDING index 6f32a132ab..d3279de1a6 100644 --- a/BUILDING +++ b/BUILDING @@ -1,4 +1,4 @@ -Building Chez Scheme Version 9.4.1 +Building Chez Scheme Version 9.5 Copyright 1984-2017 Cisco Systems, Inc. Licensed under the Apache License, Version 2.0 (the "License"); diff --git a/LOG b/LOG index 7583cafa71..40a51528d6 100644 --- a/LOG +++ b/LOG @@ -592,3 +592,20 @@ convention that the only undocumented externs are prefixed with S_. externs.h, stats.c, thread.c +- added version number to scheme.1.in trailer; updated date. + scheme.1.in, newrelease +- removed version update of no-longer-existing bldnt.bat. "fixed" + sed patterns to replace \? with * for the benefit of the deficient + mac sed. + newrelease + +9.5 changes: +- updated version to 9.5 + bintar BUILDING NOTICE makefiles/Mf-install.in scheme.1.in + c/Makefile.i3nt c/Makefile.a6nt c/Makefile.ti3nt c/Makefile.ta6nt + workarea c/scheme.rc s/7.ss s/cmacros.ss + release_notes/release_notes.stex csug/csug.stex +- updated release notes and fixed user's guide overfull hbox. + release-notes.stex, syntax.stex +- updated install target to do something more sensible + release_notes/Makefile diff --git a/NOTICE b/NOTICE index eeec731297..504af1a92d 100644 --- a/NOTICE +++ b/NOTICE @@ -1,4 +1,4 @@ -Chez Scheme Version 9.4.1 +Chez Scheme Version 9.5 Copyright 1984-2017 Cisco Systems, Inc. This product includes code developed by Cisco Systems, Inc. diff --git a/bintar b/bintar index caca537e94..b0f737185a 100644 --- a/bintar +++ b/bintar @@ -40,11 +40,11 @@ foreach m ($argv[3-]) case ti3nt: case i3nt: set files = ($files $release/bin/$m/scheme.exe) - set files = ($files $release/bin/$m/csv941.dll) - set files = ($files $release/bin/$m/csv941.lib) + set files = ($files $release/bin/$m/csv95.dll) + set files = ($files $release/bin/$m/csv95.lib) set files = ($files $release/bin/$m/vcruntime140.dll) - set files = ($files $release/boot/$m/csv941md.lib) - set files = ($files $release/boot/$m/csv941mt.lib) + set files = ($files $release/boot/$m/csv95md.lib) + set files = ($files $release/boot/$m/csv95mt.lib) set files = ($files $release/boot/$m/custommd.obj) set files = ($files $release/boot/$m/custommt.obj) set files = ($files $release/boot/$m/scheme.res) diff --git a/c/Makefile.a6nt b/c/Makefile.a6nt index 1156f31a5c..7277ec389f 100644 --- a/c/Makefile.a6nt +++ b/c/Makefile.a6nt @@ -17,11 +17,11 @@ m = a6nt # following have to use \ for directory separator SchemeInclude = ..\boot\$m -KernelDll = ..\bin\$m\csv941.dll -KernelLib = ..\bin\$m\csv941.lib -MTKernelLib = ..\boot\$m\csv941mt.lib -MDKernelLib = ..\boot\$m\csv941md.lib -KernelExp = ..\bin\$m\csv941.exp +KernelDll = ..\bin\$m\csv95.dll +KernelLib = ..\bin\$m\csv95.lib +MTKernelLib = ..\boot\$m\csv95mt.lib +MDKernelLib = ..\boot\$m\csv95md.lib +KernelExp = ..\bin\$m\csv95.exp Exec = ..\bin\$m\scheme.exe MTMain = ..\boot\$m\mainmt.obj MDMain = ..\boot\$m\mainmd.obj diff --git a/c/Makefile.i3nt b/c/Makefile.i3nt index afcb39089e..35d8d9fcae 100644 --- a/c/Makefile.i3nt +++ b/c/Makefile.i3nt @@ -17,11 +17,11 @@ m = i3nt # following have to use \ for directory separator SchemeInclude = ..\boot\$m -KernelDll = ..\bin\$m\csv941.dll -KernelLib = ..\bin\$m\csv941.lib -MTKernelLib = ..\boot\$m\csv941mt.lib -MDKernelLib = ..\boot\$m\csv941md.lib -KernelExp = ..\bin\$m\csv941.exp +KernelDll = ..\bin\$m\csv95.dll +KernelLib = ..\bin\$m\csv95.lib +MTKernelLib = ..\boot\$m\csv95mt.lib +MDKernelLib = ..\boot\$m\csv95md.lib +KernelExp = ..\bin\$m\csv95.exp Exec = ..\bin\$m\scheme.exe MTMain = ..\boot\$m\mainmt.obj MDMain = ..\boot\$m\mainmd.obj diff --git a/c/Makefile.ta6nt b/c/Makefile.ta6nt index 21f6bc4a95..61e46ca4c4 100644 --- a/c/Makefile.ta6nt +++ b/c/Makefile.ta6nt @@ -17,11 +17,11 @@ m = ta6nt # following have to use \ for directory separator SchemeInclude = ..\boot\$m -KernelDll = ..\bin\$m\csv941.dll -KernelLib = ..\bin\$m\csv941.lib -MTKernelLib = ..\boot\$m\csv941mt.lib -MDKernelLib = ..\boot\$m\csv941md.lib -KernelExp = ..\bin\$m\csv941.exp +KernelDll = ..\bin\$m\csv95.dll +KernelLib = ..\bin\$m\csv95.lib +MTKernelLib = ..\boot\$m\csv95mt.lib +MDKernelLib = ..\boot\$m\csv95md.lib +KernelExp = ..\bin\$m\csv95.exp Exec = ..\bin\$m\scheme.exe MTMain = ..\boot\$m\mainmt.obj MDMain = ..\boot\$m\mainmd.obj diff --git a/c/Makefile.ti3nt b/c/Makefile.ti3nt index 24e9117ac9..c26989397e 100644 --- a/c/Makefile.ti3nt +++ b/c/Makefile.ti3nt @@ -17,11 +17,11 @@ m = ti3nt # following have to use \ for directory separator SchemeInclude = ..\boot\$m -KernelDll = ..\bin\$m\csv941.dll -KernelLib = ..\bin\$m\csv941.lib -MTKernelLib = ..\boot\$m\csv941mt.lib -MDKernelLib = ..\boot\$m\csv941md.lib -KernelExp = ..\bin\$m\csv941.exp +KernelDll = ..\bin\$m\csv95.dll +KernelLib = ..\bin\$m\csv95.lib +MTKernelLib = ..\boot\$m\csv95mt.lib +MDKernelLib = ..\boot\$m\csv95md.lib +KernelExp = ..\bin\$m\csv95.exp Exec = ..\bin\$m\scheme.exe MTMain = ..\boot\$m\mainmt.obj MDMain = ..\boot\$m\mainmd.obj diff --git a/c/scheme.rc b/c/scheme.rc index 9390da5b94..478797d260 100644 --- a/c/scheme.rc +++ b/c/scheme.rc @@ -1,8 +1,8 @@ #include "winver.h" VS_VERSION_INFO VERSIONINFO - FILEVERSION 9,4,1,0 - PRODUCTVERSION 9,4,1,0 + FILEVERSION 9,5,0,0 + PRODUCTVERSION 9,5,0,0 FILEFLAGSMASK 0x3fL FILEFLAGS 0x0L FILEOS VOS__WINDOWS32 @@ -12,13 +12,13 @@ VS_VERSION_INFO VERSIONINFO BLOCK "StringFileInfo" { BLOCK "04090000" { VALUE "CompanyName", "Cisco Systems, Inc." - VALUE "FileDescription", "Chez Scheme Version 9.4.1" - VALUE "FileVersion", "9.4.1" + VALUE "FileDescription", "Chez Scheme Version 9.5" + VALUE "FileVersion", "9.5" VALUE "InternalName", "scheme.exe" VALUE "LegalCopyright", "Copyright 1984-2017 Cisco Systems, Inc. Licensed under the Apache License, Version 2.0." VALUE "OriginalFilename", "scheme.exe" VALUE "ProductName", "Chez Scheme" - VALUE "ProductVersion", "9.4.1" + VALUE "ProductVersion", "9.5" } } BLOCK "VarFileInfo" { diff --git a/csug/copyright.stex b/csug/copyright.stex index 6c57affc70..f7d12360ce 100644 --- a/csug/copyright.stex +++ b/csug/copyright.stex @@ -22,7 +22,7 @@ Licensed under the Apache License Version 2.0\\ http://www.apache.org/licenses/LICENSE-2.0 % NB: also update corresponding notice in csug.stex -Revised \INSERTREVISIONMONTHSPACEYEAR for Chez Scheme Version 9.4.1. +Revised \INSERTREVISIONMONTHSPACEYEAR for Chez Scheme Version 9.5. \medskip\noindent Cisco and the Cisco logo are trademarks or registered trademarks diff --git a/csug/csug.stex b/csug/csug.stex index a23e97eef8..fe791e0715 100644 --- a/csug/csug.stex +++ b/csug/csug.stex @@ -44,7 +44,7 @@ Copyright © 2017 Cisco Systems, Inc.
Licensed under the Apache License Version 2.0 (full copyright notice.).
-Revised \INSERTREVISIONMONTHSPACEYEAR for Chez Scheme Version 9.4.1
+Revised \INSERTREVISIONMONTHSPACEYEAR for Chez Scheme Version 9.5
about this book }} diff --git a/csug/syntax.stex b/csug/syntax.stex index 55141e212f..3a4189eb92 100644 --- a/csug/syntax.stex +++ b/csug/syntax.stex @@ -1955,12 +1955,12 @@ taking an sfd and a position, it takes a source object plus a request for either the start or end location. If \var{get-start?} is true and \var{source-object} has a line and column, -\scheme{locate-source-object-source} returns the path in +this procedure returns the path in \var{source-objects}'s sfd, \var{source-object}'s line, and \var{source-objects}'s column. If \var{source-object} has no line and column, then -\scheme{locate-source-object-source} calls \scheme{locate-source} on +this procedure calls \scheme{locate-source} on \var{source-object}'s sfd, either \var{source-object}'s bfp or efp depending on \var{get-start?}, and \var{use-cache?}. diff --git a/makefiles/Mf-install.in b/makefiles/Mf-install.in index dbd13789f8..3d8d6cbb99 100644 --- a/makefiles/Mf-install.in +++ b/makefiles/Mf-install.in @@ -58,7 +58,7 @@ InstallScriptName=scheme-script # no changes should be needed below this point # ############################################################################### -Version=csv9.4.1 +Version=csv9.5 Include=boot/$m PetiteBoot=boot/$m/petite.boot SchemeBoot=boot/$m/scheme.boot diff --git a/newrelease b/newrelease index 22d52aba8b..77be7aed39 100755 --- a/newrelease +++ b/newrelease @@ -70,8 +70,8 @@ if ($status != 0) exit 1 cd $W /bin/rm -f bintar -sed -e "s/csv[0-9]\.[0-9]\(\.[0-9]\)\?/csv$ZR/g" \ - -e "s/csv[0-9][0-9][0-9]\?/csv$ZR/g" \ +sed -e "s/csv[0-9]\.[0-9]\(\.[0-9]\)*/csv$ZR/g" \ + -e "s/csv[0-9][0-9][0-9]*/csv$ZR/g" \ ../bintar > bintar set updatedfiles = ($updatedfiles bintar) @@ -88,25 +88,21 @@ sed -e "s/Chez Scheme Version [^ ]*/Chez Scheme Version $R/" \ set updatedfiles = ($updatedfiles NOTICE) mkdir makefiles -sed -e "s/csv[0-9]\.[0-9]\(\.[0-9]\)\?/csv$R/" ../makefiles/Mf-install.in > makefiles/Mf-install.in +sed -e "s/csv[0-9]\.[0-9]\(\.[0-9]\)*/csv$R/" ../makefiles/Mf-install.in > makefiles/Mf-install.in set updatedfiles = ($updatedfiles makefiles/Mf-install.in) /bin/rm scheme.1.in -sed -e "s/csv[0-9]\.[0-9]\(\.[0-9]\)\?/csv$R/" ../scheme.1.in > scheme.1.in +sed -e "s/Chez Scheme Version [0-9]\.[0-9]\(\.[0-9]\)*/Chez Scheme Version $R/" ../scheme.1.in > scheme.1.in set updatedfiles = ($updatedfiles scheme.1.in) /bin/rm -f c/Makefile.{,t}{i3,a6}nt -sed -e "s/csv[0-9][0-9][0-9]\?/csv$ZR/g" ../c/Makefile.i3nt > c/Makefile.i3nt -sed -e "s/csv[0-9][0-9][0-9]\?/csv$ZR/g" ../c/Makefile.ti3nt > c/Makefile.ti3nt -sed -e "s/csv[0-9][0-9][0-9]\?/csv$ZR/g" ../c/Makefile.a6nt > c/Makefile.a6nt -sed -e "s/csv[0-9][0-9][0-9]\?/csv$ZR/g" ../c/Makefile.ta6nt > c/Makefile.ta6nt +sed -e "s/csv[0-9][0-9][0-9]*/csv$ZR/g" ../c/Makefile.i3nt > c/Makefile.i3nt +sed -e "s/csv[0-9][0-9][0-9]*/csv$ZR/g" ../c/Makefile.ti3nt > c/Makefile.ti3nt +sed -e "s/csv[0-9][0-9][0-9]*/csv$ZR/g" ../c/Makefile.a6nt > c/Makefile.a6nt +sed -e "s/csv[0-9][0-9][0-9]*/csv$ZR/g" ../c/Makefile.ta6nt > c/Makefile.ta6nt set updatedfiles = ($updatedfiles c/Makefile.{,t}{i3,a6}nt) -/bin/rm -f mats/bldnt.bat -sed -e "s/csv[0-9][0-9][0-9]\?/csv$ZR/g" ../mats/bldnt.bat > mats/bldnt.bat -set updatedfiles = ($updatedfiles mats/bldnt.bat) - -sed -e "s/csv[0-9][.0-9][0-9]\?/csv$ZR/g" ../workarea > workarea +sed -e "s/csv[0-9][.0-9][0-9]*/csv$ZR/g" ../workarea > workarea chmod +x workarea set updatedfiles = ($updatedfiles workarea) diff --git a/release_notes/Makefile b/release_notes/Makefile index 257a0d31e8..bab98e94ad 100644 --- a/release_notes/Makefile +++ b/release_notes/Makefile @@ -1,14 +1,13 @@ m = a6le Scheme=../$m/bin/$m/scheme -b ../$m/boot/$m/petite.boot -b ../$m/boot/$m/scheme.boot STEXLIB=../stex +installdir=/tmp/csv9 +INSTALL=../$m/installsh # define default document pathname here # override on command line with 'make x=newdoc' x = release_notes -distdir=../release/dist$(x) -commondir=$(distdir)/common - # define latex processor: latex or pdflatex latex = pdflatex @@ -28,21 +27,20 @@ include $(STEXLIB)/Mf-stex # define any additional targets here install: $x.pdf $x.html - installsh -m 2755 -d $(distdir) - installsh -m 2755 -d $(commondir) - installsh -m 0644 --ifdiff $x.html $x.pdf $(commondir) - installsh -m 0644 --ifdiff releasenotes.css $(commondir) + $(INSTALL) -m 2755 -d $(installdir) + $(INSTALL) -m 0644 --ifdiff $x.html $x.pdf $(installdir) + $(INSTALL) -m 0644 --ifdiff releasenotes.css $(installdir) (X=`echo canned/*` ;\ if [ "$$X" != "canned/*" ] ; then\ - installsh -m 2755 -d $(commondir)/canned ;\ - installsh -m 0644 --ifdiff canned/* $(commondir)/canned ;\ + $(INSTALL) -m 2755 -d $(installdir)/canned ;\ + $(INSTALL) -m 0644 --ifdiff canned/* $(installdir)/canned ;\ fi) - installsh -m 2755 -d $(commondir)/gifs - installsh -m 0644 --ifdiff gifs/*.gif $(commondir)/gifs - installsh -m 2755 -d $(commondir)/math - -/bin/rm -rf $(commondir)/$(mathdir) - installsh -m 2755 -d $(commondir)/$(mathdir) - if [ -e $(mathdir)/0.gif ] ; then installsh -m 0644 $(mathdir)/*.gif $(commondir)/$(mathdir) ; fi + $(INSTALL) -m 2755 -d $(installdir)/gifs + $(INSTALL) -m 0644 --ifdiff gifs/*.gif $(installdir)/gifs + $(INSTALL) -m 2755 -d $(installdir)/math + -/bin/rm -rf $(installdir)/$(mathdir) + $(INSTALL) -m 2755 -d $(installdir)/$(mathdir) + if [ -e $(mathdir)/0.gif ] ; then $(INSTALL) -m 0644 $(mathdir)/*.gif $(installdir)/$(mathdir) ; fi # define any dependencies here diff --git a/release_notes/release_notes.stex b/release_notes/release_notes.stex index 7077334c8d..081c56f0c6 100644 --- a/release_notes/release_notes.stex +++ b/release_notes/release_notes.stex @@ -1,8 +1,8 @@ \documentclass{releasenotes} -\thisversion{Version 9.4.1} +\thisversion{Version 9.5} \thatversion{Version 8.4} -\pubmonth{March} +\pubmonth{October} \pubyear{2017} \begin{document} @@ -58,7 +58,7 @@ Online versions of both books can be found at %----------------------------------------------------------------------------- \section{Functionality Changes}\label{section:functionality} -\subsection{Record equality and hashing (9.4.1)} +\subsection{Record equality and hashing (9.5)} The new procedures \scheme{record-type-equal-procedure} and \scheme{record-type-hash-procedure} can be used to customize the @@ -68,7 +68,7 @@ the new procedures \scheme{record-equal-procedure} and applicable (possibly inherited) equality and hashing procedures for specific record instances. -\subsection{Immutable vectors, fxvectors, bytevectors, strings, and boxes (9.4.1)} +\subsection{Immutable vectors, fxvectors, bytevectors, strings, and boxes (9.5)} Support for immutable vectors, fxvectors, bytevectors, strings, and boxes has been added. @@ -78,7 +78,7 @@ procedures. Immutable boxes are created via \scheme{box-immutable}. Any attempt to modify an immutable object causes an exception to be raised. -\subsection{Ephemeron pairs and hashtables (9.4.1)} +\subsection{Ephemeron pairs and hashtables (9.5)} Support for ephemeron pairs has been added, along with eq and eqv hashtables that use ephemeron pairs to combine keys and values. An @@ -91,7 +91,7 @@ the pair have been found reachable. An ephemeron hashtable implements a weak mapping where referencing a key in a value does not prevent the mapping from being removed from the table. -\subsection{Optional timeout for \protect\scheme{condition-wait} (9.4.1)} +\subsection{Optional timeout for \protect\scheme{condition-wait} (9.5)} The \scheme{condition-wait} procedure now takes an optional \var{timeout} argument and returns a boolean indicating whether the @@ -100,7 +100,7 @@ thread was awakened by the condition before the timeout. The \scheme{time-utc}, or it can be \scheme{#f} for no timeout (the default). -\subsection{\protect\scheme{date-dst?} and \protect\scheme{date-zone-name} (9.4.1)} +\subsection{\protect\scheme{date-dst?} and \protect\scheme{date-zone-name} (9.5)} The new primitive procedures \scheme{date-dst?} and \scheme{date-zone-name} access time-zone information for a @@ -108,7 +108,7 @@ The new primitive procedures \scheme{date-dst?} and zone offset. The zone-offset argument to \scheme{make-date} is now optional. -\subsection{\protect\scheme{procedure-arity-mask} (9.4.1)} +\subsection{\protect\scheme{procedure-arity-mask} (9.5)} The new primitive procedure \scheme{procedure-arity-mask} takes a procedure \var{p} and returns a two's complement bitmask representing @@ -118,14 +118,14 @@ For example, the arity mask for a two-argument procedure such as while the arity mask for a procedure that accepts one or more arguments, such as \var{list*}, is $-2$ (all but bit 0 set). -\subsection{Bytevector compression (9.4.1)} +\subsection{Bytevector compression (9.5)} The new primitive procedures \scheme{bytevector-compress} and \scheme{bytevector-decompress} exposes for bytevectors the kind of compression functionality that is used for files with the \scheme{compressed} option. -\subsection{Line caching and source objects (9.4.1)} +\subsection{Line caching and source objects (9.5)} The \scheme{locate-source} function accepts an optional argument that enables the use of a cache for line information, so that a source file @@ -142,24 +142,24 @@ error reporting, instead of calling \scheme{locate-source} or \scheme{locate-source-object-source} directly, so that just-in-time source-location lookup can be adjusted, too. -\subsection{High-precision clock time in Windows 8 and up (9.4.1)} +\subsection{High-precision clock time in Windows 8 and up (9.5)} When running on Windows 8 and up, Chez Scheme uses the high-precision clock time function for the current date and time. -\subsection{Printing of non-standard (extended) identifiers (9.4.1)} +\subsection{Printing of non-standard (extended) identifiers (9.5)} Chez Scheme extends the syntax of identifiers as described in the introduction to the Chez Scheme User's Guide, except within forms prefixed by \scheme{#!r6rs}, which is implied by in a library or top-level program. -Prior to Version~9.4.1, the printer always printed such identifiers using +Prior to Version~9.5, the printer always printed such identifiers using hex scalar value escapes as necessary to render them with valid R6RS identifier syntax. When the new parameter \scheme{print-extended-identifiers} is set to \scheme{#t}, these identifiers are printed without escapes, e.g., \scheme{1+} prints as \scheme{1+} rather than as \scheme{\x31;+}. The default value of this parameter is \scheme{#f}. -\subsection{Expression-editor Unicode support (9.4.1)} +\subsection{Expression-editor Unicode support (9.5)} The expression editor now supports Unicode characters under Linux and MacOS~X except that combining characters are not treated correctly for @@ -1535,38 +1535,63 @@ in fasl files does not generally make sense. %----------------------------------------------------------------------------- \section{Bug Fixes}\label{section:bugfixes} -\subsection{Invalid memory references involving complex numbers (9.4.1)} +\subsection{Compiler mishandling of fx /carry operations (9.5)} + +A bug in the source optimizer that caused an internal compiler error when +folding certain calls to \scheme{fx+/carry}, \scheme{fx-/carry}, and +\scheme{fx*/carry} has been fixed. +[This bug dated back to Version 9.1.] + +\subsection{Compiler mishandling of nested \protect\scheme{call-with-values} calls (9.5)} + +A bug in that caused an internal compiler error when optimizing certain +nested calls to \scheme{call-with-values} has been fixed. +[This bug dated back to Version 8.9.1.] + +\subsection{Incorrect expansion of \protect\scheme{define-values} of no values (9.5)} + +A bug in the expansion of \scheme{define-values} that caused it to produce +a non-definition form when used to define no values has been fixed. +[This bug dated back to at least Version 8.4.] + +\subsection{Optimizer dropping \protect\scheme{pariah} forms (9.5)} + +A bug in the source optimizer that caused pariah forms to be ignored +has been fixed. +[This bug dated back to at least Version 9.3.1.] + +\subsection{Invalid memory references involving complex numbers (9.5)} A bug on 64-bit platforms that occasionally caused invalid memory references when operating on inexact complex numbers or the imaginary parts of inexact complex numbers has been fixed. [This bug dated back to Version 8.9.1.] -\subsection{Overflow detection for left-shift operations on fixnums (9.4.1)} +\subsection{Overflow detection for left-shift operations on fixnums (9.5)} A bug that caused \scheme{fxsll}, \scheme{fxarithmetic-shift-left}, and \scheme{fxarithmetic-shift} to fail to detect overflow in certain cases has been fixed. [This bug dated back to Version 4.0.] -\subsection{Missing \protect\scheme{enum-set-indexer} argument check (9.4.1)} +\subsection{Missing \protect\scheme{enum-set-indexer} argument check (9.5)} A missing argument check that resulted in the procedure returned by \scheme{enum-set-indexer} causing an invalid memory reference when passed a non-symbol argument has been fixed. [This bug dated back to Version 7.5.] -\subsection{Storage for inaccessible mutexes and conditions is reclaimed (9.4.1)} +\subsection{Storage for inaccessible mutexes and conditions is reclaimed (9.5)} The C heap storage for inaccessible mutexes and conditions is now reclaimed. [This bug dated back to Version 6.5.] -\subsection{Missing guardian entries when a thread exits (9.4.1)} +\subsection{Missing guardian entries when a thread exits (9.5)} A bug that caused guardian entries for a thread to be lost when a thread exits has been fixed. [This bug dated back to Version 6.5.] -\subsection{Incorrect code for certain nested \protect\scheme{if} patterns (9.4.1)} +\subsection{Incorrect code for certain nested \protect\scheme{if} patterns (9.5)} A bug in the source optimizer that produced incorrect code for certain nested \scheme{if} patterns has been fixed. @@ -1585,7 +1610,7 @@ subexpression \scheme{(a)} evaluates to 0 and not when \scheme{(a)} evaluates to 1. [This bug dated back to Version 9.0.] -\subsection{Leaked or unexpected \protect\scheme{cpvalid-defer} form (9.4.1)} +\subsection{Leaked or unexpected \protect\scheme{cpvalid-defer} form (9.5)} A bug in the pass of the compiler that inserts valid checks for \scheme{letrec} and \scheme{letrec*} bindings has been fixed. diff --git a/s/cmacros.ss b/s/cmacros.ss index 5b3cffb821..01ed21861b 100644 --- a/s/cmacros.ss +++ b/s/cmacros.ss @@ -328,7 +328,7 @@ [(_ foo e1 e2) e1] ... [(_ bar e1 e2) e2]))))]))) -(define-constant scheme-version #x00090401) +(define-constant scheme-version #x00090500) (define-syntax define-machine-types (lambda (x) diff --git a/scheme.1.in b/scheme.1.in index 09eef1e7fa..4a0fe87c4c 100644 --- a/scheme.1.in +++ b/scheme.1.in @@ -3,7 +3,7 @@ .if t .ds c caf\o'\'e' .if n .ds c cafe .ds ]W -.TH SCHEME 1 "April 2017 Cisco Systems, Inc." +.TH SCHEME 1 "Chez Scheme Version 9.5 October 2017" .SH NAME \fIChez Scheme\fP .br diff --git a/workarea b/workarea index 31bfda6115..dac988a62c 100755 --- a/workarea +++ b/workarea @@ -201,8 +201,8 @@ case $M in *nt) (cd $W/boot/$M; workln ../../../boot/$M/mainmd.obj mainmd.obj) (cd $W/boot/$M; workln ../../../boot/$M/mainmt.obj mainmt.obj) - (cd $W/boot/$M; workln ../../../boot/$M/csv941md.lib csv941md.lib) - (cd $W/boot/$M; workln ../../../boot/$M/csv941mt.lib csv941mt.lib) + (cd $W/boot/$M; workln ../../../boot/$M/csv95md.lib csv95md.lib) + (cd $W/boot/$M; workln ../../../boot/$M/csv95mt.lib csv95mt.lib) (cd $W/boot/$M; workln ../../../boot/$M/scheme.res scheme.res) ;; *) @@ -217,8 +217,8 @@ case $M in *nt) (cd $W/bin/$M; workln ../../../bin/$M/scheme.exe scheme.exe) (cd $W/bin/$M; forceworkln2 scheme.exe petite.exe) - (cd $W/bin/$M; workln ../../../bin/$M/csv941.dll csv941.dll) - (cd $W/bin/$M; workln ../../../bin/$M/csv941.lib csv941.lib) + (cd $W/bin/$M; workln ../../../bin/$M/csv95.dll csv95.dll) + (cd $W/bin/$M; workln ../../../bin/$M/csv95.lib csv95.lib) ;; *) (cd $W/bin/$M; workln ../../../bin/$M/scheme scheme)