original commit: c2621183748c7f90d1cbf2d482f0bdb9ecda12e4
This commit is contained in:
commit
7264663e3c
69
LOG
69
LOG
|
@ -1132,7 +1132,7 @@
|
|||
- generated Mf-install InstallBin (InstallLib, InstallMan) now
|
||||
correctly indirects through InstallPrefix if the --installbin
|
||||
(--installlib, --installman) configure flag is not present.
|
||||
src/configure
|
||||
configure
|
||||
- removed definition of generate-procedure-source-information
|
||||
patch.ss
|
||||
- guardian tconc cells are now allocated in generation 0 in the hope
|
||||
|
@ -1182,3 +1182,70 @@
|
|||
generated config.h. Instead removed InstallPrefix entirely so
|
||||
it isn't an attractive hazzard.
|
||||
configure, makefiles/Mf-install.in
|
||||
- fixed bug in inline-lists: wasn't setting multiply-referenced flag
|
||||
on p to account for the procedure? check at optimize-level 2.
|
||||
cpletrec.ss
|
||||
- fixed bug in check-prelex-flags: was hardwiring $cpcheck-prelex-flags
|
||||
"after" argument to 'uncprep rather than passing along its argument.
|
||||
compile.ss
|
||||
- commented out local definition of sorry! so that problems detected
|
||||
by $cpcheck-prelex-flags actually result in a raised exception.
|
||||
cprep.ss
|
||||
- exposed the default-library-search-handler and a library-search-handler
|
||||
parameter to permit more control over the search for libraries during
|
||||
import, compile-whole-library, and compile-whole-program
|
||||
syntax.ss, primdata.ss,
|
||||
8.ms,
|
||||
libraries.stex
|
||||
- added fix for whole program/library compilation bug with help from
|
||||
@owaddell who originally reported the problem in issue 386. this bug
|
||||
arises from the way the parts of the combined library, and their
|
||||
binary dependencies, are invoked when one of the constituent libraries
|
||||
is invoked. consider, for example, a combined library that contains
|
||||
(A) and (B), where (B) depends on a binary library (C). depending on
|
||||
the sort order of (A) and (B), which may be unconstrained in the
|
||||
partial ordering established by library dependencies, invoking (A) may
|
||||
result in the invoke code for (B) being run first, without (B) ever
|
||||
being explicitly invoked. this can result in bindings required from
|
||||
(C) by the invoke code in (B) to be unbound. even in the case where
|
||||
(A) comes before (B) in the topological sort, if they are combined
|
||||
into the same cluster, (B)'s invoke code will be run as part of
|
||||
invoking (A). the solution is two part: first we extend the invoke
|
||||
requirements of the first library in the cluster to include the binary
|
||||
libraries that precede it in the topological sort and add a dependency
|
||||
on the first library in the cluster to all of the other libraries in
|
||||
the cluster. this means no matter which library in the cluster is
|
||||
invoked first, it will cause the first library to be invoked, in turn
|
||||
ensuring the binary libraries that precede it are invoked. when there
|
||||
are multiple clusters, a dependency is added from each cluster to the
|
||||
first library in the cluster that precedes it. this ensures that
|
||||
invoking a library in a later cluster first, will still cause all of
|
||||
the dependencies of the previous clusters to be invoked. ultimately,
|
||||
these extra dependencies enforce an ordering on the invocation of the
|
||||
source and binary libraries that matches the topological sort, even if
|
||||
the topological sort was under constrained. to maintain the property
|
||||
that import requirements are a superset of the invoke and visit
|
||||
requirements, we also extend the import requirements to include the
|
||||
extended invoke requirements. the import requirements are also added
|
||||
to the dependency graph to further constrain the topological sort and
|
||||
ensure that we do not introduce artificial cycles in the import graph.
|
||||
compile.ss,
|
||||
7.ms,
|
||||
root-experr*, patch*
|
||||
- fixed failure to install examples for tarball installs
|
||||
Mf-install.in
|
||||
- improved packaging support:
|
||||
replaced bintar script with bintar directory and make file;
|
||||
tarballs are created via "make create-tarball" and are placed in
|
||||
the workarea's bintar directory. added rpm directory and make
|
||||
file for creating RPMs via "make create-rpm". added pkg directory
|
||||
and make file for creating OSX packages via "make create-pkg".
|
||||
bintar (removed), bintar/Makefile (new), rpm/Makefile (new),
|
||||
pkg/Makefile (new), pkg/rmpkg (new), workarea, checkin, newrelease,
|
||||
Makefile.in, Makefile-workarea.in.
|
||||
- improved error message for compile-whole-program and
|
||||
compile-whole-library when a top-level expression is discovered while
|
||||
processing a wpo file.
|
||||
compile.ss
|
||||
- minor build and new-release updates
|
||||
checkin, newrelease, Makefile.in, Makefile-workarea.in
|
||||
|
|
73
bintar
73
bintar
|
@ -1,73 +0,0 @@
|
|||
#! /bin/csh -f
|
||||
|
||||
set T = "."
|
||||
if ("$argv[1]" == "--target-dir") then
|
||||
set T = "$argv[2]"
|
||||
shift
|
||||
shift
|
||||
endif
|
||||
|
||||
if ($#argv != 2 && $#argv != 3) then
|
||||
echo "Usage: $0 [ --target-dir <target-directory> ] <release> <machine-type> [ <workarea> ]"
|
||||
exit 1
|
||||
endif
|
||||
|
||||
set R = $argv[1]
|
||||
set M = $argv[2]
|
||||
if ($#argv == 2) then
|
||||
set W = $M
|
||||
else
|
||||
set W = $argv[3]
|
||||
endif
|
||||
|
||||
if (!(-d $W)) then
|
||||
echo "Error: work area $W does not exist or is not a directory"
|
||||
exit 1
|
||||
endif
|
||||
|
||||
if (!(-e $W/boot/$M)) then
|
||||
echo "Error: "$
|
||||
exit 1
|
||||
endif
|
||||
|
||||
if (-e $R) then
|
||||
echo "Error: $R already exists"
|
||||
exit 1
|
||||
endif
|
||||
|
||||
onintr error
|
||||
|
||||
mkdir $R || goto error
|
||||
( cd $R ; ln -s ../LICENSE ../NOTICE . ) || goto error
|
||||
( cd $R ; ln -s ../$W/scheme.1.in ../$W/installsh ../$W/examples . ) || goto error
|
||||
( cd $R ; ln -s ../$W/Mf-install Makefile ) || goto error
|
||||
mkdir -p $R/boot/$M $R/bin/$M || goto error
|
||||
( cd $R/boot/$M ; ln -s ../../../$W/boot/$M/{scheme.h,petite.boot,scheme.boot} . ) || goto error
|
||||
|
||||
switch ($M)
|
||||
case a6nt:
|
||||
case ta6nt:
|
||||
case ti3nt:
|
||||
case i3nt:
|
||||
( cd $R/boot/$M ; ln -s ../../../$W/boot/$M/{csv951md.lib,csv951mt.lib,mainmd.obj,mainmt.obj,scheme.res} . ) || goto error
|
||||
( cd $R/bin/$M ; ln -s ../../../$W/bin/$M/{scheme.exe,csv951.dll,csv951.lib,vcruntime140.lib} . ) || goto error
|
||||
breaksw
|
||||
default:
|
||||
( cd $R/boot/$M ; ln -s ../../../$W/boot/$M/{main.o,kernel.o} . ) || goto error
|
||||
( cd $R/bin/$M ; ln -s ../../../$W/bin/$M/{scheme} . ) || goto error
|
||||
breaksw
|
||||
endsw
|
||||
|
||||
set broken = `find -L $R -type l`
|
||||
if ($#broken != 0) then
|
||||
echo "Error: missing $broken"
|
||||
goto error
|
||||
endif
|
||||
|
||||
tar -czhf $T/csv$R-$M.tar.gz $R || goto error
|
||||
rm -rf $R
|
||||
exit
|
||||
|
||||
error:
|
||||
rm -rf $R
|
||||
exit 1
|
86
bintar/Makefile
Normal file
86
bintar/Makefile
Normal file
|
@ -0,0 +1,86 @@
|
|||
# Makefile
|
||||
# Copyright 1984-2017 Cisco Systems, Inc.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
version = 9.5.1
|
||||
m := $(shell find ../bin/* -type d | xargs basename)
|
||||
|
||||
R = csv$(version)
|
||||
TARBALL = $(R)-$(m).tar.gz
|
||||
|
||||
CONTENTS=\
|
||||
$(R)/LICENSE\
|
||||
$(R)/NOTICE\
|
||||
$(R)/scheme.1.in\
|
||||
$(R)/installsh\
|
||||
$(R)/Makefile\
|
||||
$(R)/examples\
|
||||
$(R)/boot\
|
||||
$(R)/bin
|
||||
|
||||
$(TARBALL): $(CONTENTS)
|
||||
( BROKEN=`find -L $R -type l` ; \
|
||||
if test -n "$$BROKEN" ; then \
|
||||
echo "Error: missing $(BROKEN)" ; \
|
||||
exit 1 ; \
|
||||
fi )
|
||||
tar -czhf $(TARBALL) $R
|
||||
rm -rf $(R)
|
||||
|
||||
$(R)/LICENSE: $(R)
|
||||
( cd $(R) ; ln -s ../../../LICENSE . )
|
||||
|
||||
$(R)/NOTICE: $(R)
|
||||
( cd $(R) ; ln -s ../../../NOTICE . )
|
||||
|
||||
$(R)/scheme.1.in: $(R)
|
||||
( cd $(R) ; ln -s ../../scheme.1.in . )
|
||||
|
||||
$(R)/installsh: $(R)
|
||||
( cd $(R) ; ln -s ../../installsh . )
|
||||
|
||||
$(R)/Makefile: $(R)
|
||||
( cd $(R) ; ln -s ../../Mf-install Makefile )
|
||||
|
||||
$(R)/examples: $(R)
|
||||
( cd $(R) ; ln -s ../../examples . )
|
||||
|
||||
$(R)/boot: $(R)
|
||||
mkdir -p $(R)/boot/$(m)
|
||||
( cd $(R)/boot/$(m) ; ln -s ../../../../boot/$(m)/{scheme.h,petite.boot,scheme.boot} . )
|
||||
case $(m) in \
|
||||
*nt) \
|
||||
( cd $R/boot/$(m) ; ln -s ../../../../boot/$(m)/{csv951md.lib,csv951mt.lib,mainmd.obj,mainmt.obj,scheme.res} . ) \
|
||||
;; \
|
||||
*) \
|
||||
( cd $R/boot/$(m) ; ln -s ../../../../boot/$(m)/{main.o,kernel.o} . ) \
|
||||
;; \
|
||||
esac
|
||||
|
||||
$(R)/bin: $(R)
|
||||
mkdir -p $(R)/bin/$(m)
|
||||
case $(m) in \
|
||||
*nt) \
|
||||
( cd $R/bin/$(m) ; ln -s ../../../../bin/$(m)/{scheme.exe,csv951.dll,csv951.lib,vcruntime140.lib} . ) \
|
||||
;; \
|
||||
*) \
|
||||
( cd $R/bin/$(m) ; ln -s ../../../../bin/$(m)/scheme . ) \
|
||||
;; \
|
||||
esac
|
||||
|
||||
$(R):
|
||||
mkdir $(R)
|
||||
|
||||
clean:
|
||||
rm -rf $(R) $(TARBALL)
|
18
checkin
18
checkin
|
@ -62,7 +62,7 @@ if (-e $W/scheme.1.in) then
|
|||
endif
|
||||
endif
|
||||
|
||||
set tmpsdirs = (. c mats s examples unicode makefiles csug release_notes)
|
||||
set tmpsdirs = (. c mats s examples unicode makefiles csug release_notes wininstall bintar rpm pkg)
|
||||
set sdirs = ()
|
||||
foreach x ($tmpsdirs)
|
||||
if (!(-e $x)) then
|
||||
|
@ -90,8 +90,6 @@ echo '*** running "make clean" in source directories ***'
|
|||
foreach x ($sdirs)
|
||||
switch ($x)
|
||||
case .:
|
||||
(cd $W; /bin/rm -f petite.1 scheme.1)
|
||||
(cd $W; /bin/rm -f Make.out)
|
||||
case unicode:
|
||||
case unicode/UNIDATA:
|
||||
case makefiles:
|
||||
|
@ -103,7 +101,11 @@ foreach x ($sdirs)
|
|||
case mats:
|
||||
case benchmarks:
|
||||
case examples:
|
||||
(cd $W/$x; make clean > /dev/null)
|
||||
case wininstall:
|
||||
case bintar:
|
||||
case rpm:
|
||||
case pkg:
|
||||
(cd $W/$x; make clean >& /dev/null)
|
||||
breaksw
|
||||
default:
|
||||
echo "checkin error: unexpected sdir $x"
|
||||
|
@ -231,13 +233,6 @@ if ($#oldsfiles != 0) then
|
|||
echo ""
|
||||
endif
|
||||
|
||||
foreach x ($bdirs)
|
||||
set x = ./$x
|
||||
if (!(-d $x)) then
|
||||
mkdir -p $x || goto error
|
||||
endif
|
||||
end
|
||||
|
||||
set oldbfiles = ()
|
||||
foreach x ($bfiles)
|
||||
if (-e $x) set oldbfiles = ($oldbfiles $x)
|
||||
|
@ -291,6 +286,7 @@ if ($#bfiles != 0) then
|
|||
@ n = $i + 4
|
||||
endif
|
||||
echo -n "$x "
|
||||
if (!(-e $x:h)) mkdir -p $x:h || goto error
|
||||
mv $W/$x $x || goto error
|
||||
end
|
||||
echo ""
|
||||
|
|
|
@ -469,7 +469,7 @@ as follows.
|
|||
\begin{description}
|
||||
\item[\scheme{\var{library-spec}}:]
|
||||
all exports of the library identified by the Revised$^6$ Report \var{library-spec}
|
||||
(Chapter~\ref{TSPL:CHPTLIBRARIES}.
|
||||
(Chapter~\ref{TSPL:CHPTLIBRARIES}).
|
||||
|
||||
\item[\scheme{\var{module-name}}:]
|
||||
all exports of module named by the identifier \var{module-name}
|
||||
|
@ -998,6 +998,51 @@ When the new parameter \scheme{import-notify} is set to a true value,
|
|||
searches for the file containing each library it needs to load.
|
||||
The default value of this parameter is \scheme{#f}.
|
||||
|
||||
%----------------------------------------------------------------------------
|
||||
\entryheader
|
||||
\formdef{library-search-handler}{\categorythreadparameter}{library-search-handler}
|
||||
\listlibraries
|
||||
\endentryheader
|
||||
|
||||
The value of parameter must be a procedure that follows the protocol described
|
||||
below for \scheme{default-library-search-handler}, which is the default value
|
||||
of this parameter.
|
||||
|
||||
The value of this parameter is invoked to locate the source or object code for
|
||||
a library during \scheme{import}, \scheme{compile-whole-program}, or
|
||||
\scheme{compile-whole-library}.
|
||||
|
||||
%----------------------------------------------------------------------------
|
||||
\entryheader
|
||||
\formdef{default-library-search-handler}{\categoryprocedure}{(default-library-search-handler \var{who} \var{library} \var{directories} \var{extensions})}
|
||||
\returns see below
|
||||
\listlibraries
|
||||
\endentryheader
|
||||
|
||||
This procedure is the default value of the \scheme{library-search-handler},
|
||||
which is
|
||||
called to locate the source or object code for a library
|
||||
during \scheme{import},
|
||||
\scheme{compile-whole-program}, or \scheme{compile-whole-library}.
|
||||
\var{who} is a symbol that provides context in \scheme{import-notify} messages.
|
||||
\var{library} is the name of the desired library.
|
||||
\var{directories} is a list of source and object directory pairs in
|
||||
the form returned by \scheme{library-directories}.
|
||||
\var{extensions} is a list of source and object extension pairs in the form
|
||||
returned by \scheme{library-extensions}.
|
||||
|
||||
This procedure searches the specified directories until it finds a library source or
|
||||
object file with one of the specified extensions.
|
||||
If it finds the source file first, it constructs the corresponding
|
||||
object file path and checks whether the file exists.
|
||||
If it finds the object file first, the procedure looks for a corresponding
|
||||
source file with one of the given source extensions in a source directory paired
|
||||
with that object directory.
|
||||
The procedure returns three values:
|
||||
the file-system path of the library source file or \scheme{#f} if not found,
|
||||
the file-system path of the corresponding object file, which may be \scheme{#f},
|
||||
and a boolean that is true if the object file exists.
|
||||
|
||||
\section{Library Inspection\label{SECTLIBRARYINSPECTION}}
|
||||
|
||||
%----------------------------------------------------------------------------
|
||||
|
|
|
@ -17,8 +17,8 @@ MAKEFLAGS += --no-print-directory
|
|||
PREFIX=
|
||||
|
||||
build:
|
||||
(cd c ; $(MAKE))
|
||||
(cd s ; $(MAKE) bootstrap)
|
||||
(cd c && $(MAKE))
|
||||
(cd s && $(MAKE) bootstrap)
|
||||
|
||||
install: build
|
||||
$(MAKE) -f Mf-install
|
||||
|
@ -27,16 +27,28 @@ uninstall:
|
|||
$(MAKE) -f Mf-install uninstall
|
||||
|
||||
test: build
|
||||
(cd mats ; $(MAKE) allx)
|
||||
(cd mats && $(MAKE) allx)
|
||||
@echo "test run complete. check $(PREFIX)mats/summary for errors."
|
||||
|
||||
bootfiles: build
|
||||
$(MAKE) -f Mf-boot
|
||||
|
||||
create-bintar: build
|
||||
(cd bintar && $(MAKE))
|
||||
|
||||
create-rpm: create-bintar
|
||||
(cd rpm && $(MAKE))
|
||||
|
||||
create-pkg: create-bintar
|
||||
(cd pkg && $(MAKE))
|
||||
|
||||
clean:
|
||||
rm -f petite.1 scheme.1
|
||||
(cd s ; $(MAKE) clean)
|
||||
(cd c ; $(MAKE) clean)
|
||||
(cd mats ; $(MAKE) clean)
|
||||
(cd examples ; $(MAKE) clean)
|
||||
(cd s && $(MAKE) clean)
|
||||
(cd c && $(MAKE) clean)
|
||||
(cd mats && $(MAKE) clean)
|
||||
(cd examples && $(MAKE) clean)
|
||||
(cd bintar && $(MAKE) clean)
|
||||
(cd rpm && $(MAKE) clean)
|
||||
(cd pkg && $(MAKE) clean)
|
||||
rm -f Make.out
|
||||
|
|
|
@ -34,13 +34,22 @@ docs: build
|
|||
(cd csug && $(MAKE) m=$(m))
|
||||
(cd release_notes && $(MAKE) m=$(m))
|
||||
|
||||
create-bintar:
|
||||
(cd $(workarea) && $(MAKE) create-bintar)
|
||||
|
||||
create-rpm:
|
||||
(cd $(workarea) && $(MAKE) create-rpm)
|
||||
|
||||
create-pkg:
|
||||
(cd $(workarea) && $(MAKE) create-pkg)
|
||||
|
||||
clean:
|
||||
(cd $(workarea) && $(MAKE) clean)
|
||||
|
||||
distclean:
|
||||
(cd csug ; if [ -e Makefile ] ; then make reallyreallyclean ; fi)
|
||||
(cd csug && if [ -e Makefile ] ; then make reallyreallyclean ; fi)
|
||||
rm -f csug/Makefile
|
||||
(cd release_notes ; if [ -e Makefile ] ; then make reallyreallyclean ; fi)
|
||||
(cd release_notes && if [ -e Makefile ] ; then make reallyreallyclean ; fi)
|
||||
rm -f release_notes/Makefile
|
||||
rm -rf $(workarea)
|
||||
rm -f Makefile
|
||||
|
|
|
@ -126,7 +126,7 @@ maninstall: scheme.1 petite.1 ${Man}
|
|||
if [ ${GzipManPages} = yes ] ; then gzip -f ${Man}/${InstallPetiteName}.1 ; fi
|
||||
|
||||
liblibinstall: ${LibExamples}
|
||||
$I -m 444 ../examples/* ${LibExamples}
|
||||
$I -m 444 examples/* ${LibExamples}
|
||||
|
||||
${Lib}:
|
||||
$I -d -m 755 ${Lib}
|
||||
|
|
512
mats/7.ms
512
mats/7.ms
|
@ -3359,6 +3359,518 @@ evaluating module init
|
|||
(equal?
|
||||
(separate-eval '(let () (import (testfile-wpo-extlib-2)) (p)))
|
||||
"(9 . 5)\n")
|
||||
|
||||
;; regression tests from @owaddell generated to fix problems he encountered
|
||||
;; with compile-whole-library from a test generator.
|
||||
(begin
|
||||
(with-output-to-file "testfile-wpo-coconut.ss"
|
||||
(lambda ()
|
||||
(pretty-print
|
||||
'(library (testfile-wpo-coconut)
|
||||
(export coconut apple->coconut)
|
||||
(import (scheme))
|
||||
(define $init (list '_))
|
||||
(define apple->coconut (cons 'apple->coconut $init))
|
||||
(define coconut (list 'coconut apple->coconut $init)))))
|
||||
'replace)
|
||||
(with-output-to-file "testfile-wpo-banana.ss"
|
||||
(lambda ()
|
||||
(pretty-print
|
||||
'(library (testfile-wpo-banana)
|
||||
(export banana apple->banana)
|
||||
(import (scheme))
|
||||
(define $init (list '_))
|
||||
(define apple->banana (cons 'apple->banana $init))
|
||||
(define banana (list 'banana apple->banana $init)))))
|
||||
'replace)
|
||||
(with-output-to-file "testfile-wpo-apple.ss"
|
||||
(lambda ()
|
||||
(pretty-print
|
||||
'(library (testfile-wpo-apple)
|
||||
(export apple)
|
||||
(import (scheme) (testfile-wpo-banana) (testfile-wpo-coconut))
|
||||
(define $init
|
||||
(list
|
||||
'_
|
||||
(cons 'apple->banana apple->banana)
|
||||
(cons 'apple->coconut apple->coconut)))
|
||||
(define apple (list 'apple $init)))))
|
||||
'replace)
|
||||
(with-output-to-file "testfile-wpo-main.ss"
|
||||
(lambda ()
|
||||
(pretty-print '(import (scheme) (testfile-wpo-banana) (testfile-wpo-coconut) (testfile-wpo-apple)))
|
||||
(pretty-print '(pretty-print banana))
|
||||
(pretty-print '(pretty-print coconut))
|
||||
(pretty-print '(pretty-print apple)))
|
||||
'replace)
|
||||
(separate-compile
|
||||
'(lambda (x)
|
||||
(parameterize ([compile-imported-libraries #t]
|
||||
[generate-wpo-files #t])
|
||||
(compile-program x)))
|
||||
'wpo-main)
|
||||
#t)
|
||||
|
||||
(equal?
|
||||
(separate-compile
|
||||
'(lambda (x)
|
||||
(parameterize ([generate-wpo-files #f])
|
||||
(compile-whole-library (format "~a.wpo" x) (format "~a.so" x))))
|
||||
'wpo-coconut)
|
||||
"()\n")
|
||||
|
||||
(begin
|
||||
(delete-file "testfile-wpo-coconut.wpo")
|
||||
#t)
|
||||
|
||||
(equal?
|
||||
(separate-compile
|
||||
'(lambda (x)
|
||||
(parameterize ([generate-wpo-files #f])
|
||||
(compile-whole-library (format "~a.wpo" x) (format "~a.so" x))))
|
||||
'wpo-apple)
|
||||
"((testfile-wpo-coconut))\n")
|
||||
|
||||
(begin
|
||||
(delete-file "testfile-wpo-banana.wpo")
|
||||
(delete-file "testfile-wpo-apple.wpo")
|
||||
(delete-file "testfile-wpo-banana.so")
|
||||
#t)
|
||||
|
||||
(equal?
|
||||
(separate-compile
|
||||
'(lambda (x)
|
||||
(parameterize ([library-search-handler
|
||||
(let ([lsh (library-search-handler)])
|
||||
(lambda (who name dirs exts)
|
||||
(lsh who (if (equal? name '(testfile-wpo-banana))
|
||||
'(testfile-wpo-apple)
|
||||
name)
|
||||
dirs exts)))])
|
||||
(compile-whole-program (format "~a.wpo" x) (format "~a.so" x))))
|
||||
'wpo-main)
|
||||
"((testfile-wpo-apple)\n (testfile-wpo-banana)\n (testfile-wpo-coconut))\n")
|
||||
|
||||
(equal?
|
||||
(separate-eval
|
||||
'(parameterize ([library-search-handler
|
||||
(let ([lsh (library-search-handler)])
|
||||
(lambda (who name dirs exts)
|
||||
(lsh who (if (equal? name '(testfile-wpo-banana))
|
||||
'(testfile-wpo-apple)
|
||||
name)
|
||||
dirs exts)))])
|
||||
(load-program "testfile-wpo-main.so")))
|
||||
(string-append
|
||||
"(banana (apple->banana _) (_))\n"
|
||||
"(coconut (apple->coconut _) (_))\n"
|
||||
"(apple\n (_ (apple->banana apple->banana _)\n (apple->coconut apple->coconut _)))\n"))
|
||||
|
||||
(begin
|
||||
;; clean-up to make sure previous builds don't get in the way.
|
||||
(delete-file "testfile-wpo-coconut.ss")
|
||||
(delete-file "testfile-wpo-coconut.so")
|
||||
(delete-file "testfile-wpo-coconut.wpo")
|
||||
|
||||
(delete-file "testfile-wpo-banana.ss")
|
||||
(delete-file "testfile-wpo-banana.so")
|
||||
(delete-file "testfile-wpo-banana.wpo")
|
||||
|
||||
(delete-file "testfile-wpo-apple.ss")
|
||||
(delete-file "testfile-wpo-apple.so")
|
||||
(delete-file "testfile-wpo-apple.wpo")
|
||||
|
||||
(delete-file "testfile-wpo-main.ss")
|
||||
(delete-file "testfile-wpo-main.so")
|
||||
(delete-file "testfile-wpo-main.wpo")
|
||||
|
||||
#t)
|
||||
|
||||
(begin
|
||||
(with-output-to-file "testfile-wpo-coconut.ss"
|
||||
(lambda ()
|
||||
(pretty-print
|
||||
'(library (testfile-wpo-coconut)
|
||||
(export coconut banana->coconut apple->coconut)
|
||||
(import (scheme))
|
||||
(define $init (list '_))
|
||||
(define banana->coconut (cons 'banana->coconut $init))
|
||||
(define apple->coconut (cons 'apple->coconut $init))
|
||||
(define coconut
|
||||
(list 'coconut banana->coconut apple->coconut $init)))))
|
||||
'replace)
|
||||
(with-output-to-file "testfile-wpo-date.ss"
|
||||
(lambda ()
|
||||
(pretty-print
|
||||
'(library (testfile-wpo-date)
|
||||
(export date apple->date)
|
||||
(import (scheme))
|
||||
(define $init (list '_))
|
||||
(define apple->date (cons 'apple->date $init))
|
||||
(define date (list 'date apple->date $init)))))
|
||||
'replace)
|
||||
(with-output-to-file "testfile-wpo-apple.ss"
|
||||
(lambda ()
|
||||
(pretty-print
|
||||
'(library (testfile-wpo-apple)
|
||||
(export apple)
|
||||
(import (scheme) (testfile-wpo-date) (testfile-wpo-coconut))
|
||||
(define $init
|
||||
(list
|
||||
'_
|
||||
(cons 'apple->date apple->date)
|
||||
(cons 'apple->coconut apple->coconut)))
|
||||
(define apple (list 'apple $init)))))
|
||||
'replace)
|
||||
(with-output-to-file "testfile-wpo-banana.ss"
|
||||
(lambda ()
|
||||
(pretty-print
|
||||
'(library (testfile-wpo-banana)
|
||||
(export banana)
|
||||
(import (scheme) (testfile-wpo-coconut))
|
||||
(define $init
|
||||
(list '_ (cons 'banana->coconut banana->coconut)))
|
||||
(define banana (list 'banana $init)))))
|
||||
'replace)
|
||||
(with-output-to-file "testfile-wpo-main.ss"
|
||||
(lambda ()
|
||||
(pretty-print '(import (scheme) (testfile-wpo-date)
|
||||
(testfile-wpo-banana) (testfile-wpo-coconut)
|
||||
(testfile-wpo-apple)))
|
||||
(pretty-print '(pretty-print date))
|
||||
(pretty-print '(pretty-print banana))
|
||||
(pretty-print '(pretty-print coconut))
|
||||
(pretty-print '(pretty-print apple)))
|
||||
'replace)
|
||||
(separate-compile
|
||||
'(lambda (x)
|
||||
(parameterize ([compile-imported-libraries #t]
|
||||
[generate-wpo-files #t])
|
||||
(compile-program x)))
|
||||
'wpo-main)
|
||||
#t)
|
||||
|
||||
(equal?
|
||||
(separate-compile
|
||||
'(lambda (x)
|
||||
(parameterize ([generate-wpo-files #f])
|
||||
(compile-whole-library (format "~a.wpo" x) (format "~a.so" x))))
|
||||
'wpo-coconut)
|
||||
"()\n")
|
||||
|
||||
(begin
|
||||
(delete-file "testfile-wpo-coconut.wpo")
|
||||
#t)
|
||||
|
||||
(equal?
|
||||
(separate-compile
|
||||
'(lambda (x)
|
||||
(parameterize ([generate-wpo-files #f])
|
||||
(compile-whole-library (format "~a.wpo" x) (format "~a.so" x))))
|
||||
'wpo-apple)
|
||||
"((testfile-wpo-coconut))\n")
|
||||
|
||||
(begin
|
||||
(delete-file "testfile-wpo-date.wpo")
|
||||
(delete-file "testfile-wpo-apple.wpo")
|
||||
(delete-file "testfile-wpo-date.so")
|
||||
#t)
|
||||
|
||||
(equal?
|
||||
(separate-compile
|
||||
'(lambda (x)
|
||||
(parameterize ([library-search-handler
|
||||
(let ([lsh (library-search-handler)])
|
||||
(lambda (who name dirs exts)
|
||||
(lsh who (if (equal? name '(testfile-wpo-date))
|
||||
'(testfile-wpo-apple)
|
||||
name)
|
||||
dirs exts)))])
|
||||
(compile-whole-program (format "~a.wpo" x) (format "~a.so" x))))
|
||||
'wpo-main)
|
||||
"((testfile-wpo-apple)\n (testfile-wpo-date)\n (testfile-wpo-coconut))\n")
|
||||
|
||||
(equal?
|
||||
(separate-eval
|
||||
'(parameterize ([library-search-handler
|
||||
(let ([lsh (library-search-handler)])
|
||||
(lambda (who name dirs exts)
|
||||
(lsh who (if (equal? name '(testfile-wpo-date))
|
||||
'(testfile-wpo-apple)
|
||||
name)
|
||||
dirs exts)))])
|
||||
(load-program "testfile-wpo-main.so")))
|
||||
(string-append
|
||||
"(date (apple->date _) (_))\n"
|
||||
"(banana (_ (banana->coconut banana->coconut _)))\n"
|
||||
"(coconut (banana->coconut _) (apple->coconut _) (_))\n"
|
||||
"(apple\n"
|
||||
" (_ (apple->date apple->date _)\n"
|
||||
" (apple->coconut apple->coconut _)))\n"))
|
||||
|
||||
(begin
|
||||
;; clean-up to make sure previous builds don't get in the way.
|
||||
(delete-file "testfile-wpo-coconut.ss")
|
||||
(delete-file "testfile-wpo-coconut.so")
|
||||
(delete-file "testfile-wpo-coconut.wpo")
|
||||
|
||||
(delete-file "testfile-wpo-date.ss")
|
||||
(delete-file "testfile-wpo-date.so")
|
||||
(delete-file "testfile-wpo-date.wpo")
|
||||
|
||||
(delete-file "testfile-wpo-banana.ss")
|
||||
(delete-file "testfile-wpo-banana.so")
|
||||
(delete-file "testfile-wpo-banana.wpo")
|
||||
|
||||
(delete-file "testfile-wpo-apple.ss")
|
||||
(delete-file "testfile-wpo-apple.so")
|
||||
(delete-file "testfile-wpo-apple.wpo")
|
||||
|
||||
(delete-file "testfile-wpo-main.ss")
|
||||
(delete-file "testfile-wpo-main.so")
|
||||
(delete-file "testfile-wpo-main.wpo")
|
||||
|
||||
#t)
|
||||
|
||||
(begin
|
||||
(with-output-to-file "testfile-wpo-date.ss"
|
||||
(lambda ()
|
||||
(pretty-print
|
||||
'(library (testfile-wpo-date)
|
||||
(export date apple->date)
|
||||
(import (scheme))
|
||||
(define $init (list '_))
|
||||
(define apple->date (cons 'apple->date $init))
|
||||
(define date (list 'date apple->date $init)))))
|
||||
'replace)
|
||||
(with-output-to-file "testfile-wpo-eel.ss"
|
||||
(lambda ()
|
||||
(pretty-print
|
||||
'(library (testfile-wpo-eel)
|
||||
(export eel coconut->eel apple->eel)
|
||||
(import (scheme))
|
||||
(define $init (list '_))
|
||||
(define coconut->eel (cons 'coconut->eel $init))
|
||||
(define apple->eel (cons 'apple->eel $init))
|
||||
(define eel (list 'eel coconut->eel apple->eel $init)))))
|
||||
'replace)
|
||||
(with-output-to-file "testfile-wpo-coconut.ss"
|
||||
(lambda ()
|
||||
(pretty-print
|
||||
'(library (testfile-wpo-coconut)
|
||||
(export coconut banana->coconut apple->coconut)
|
||||
(import (scheme) (testfile-wpo-eel))
|
||||
(define $init (list '_ (cons 'coconut->eel coconut->eel)))
|
||||
(define banana->coconut (cons 'banana->coconut $init))
|
||||
(define apple->coconut (cons 'apple->coconut $init))
|
||||
(define coconut
|
||||
(list 'coconut banana->coconut apple->coconut $init)))))
|
||||
'replace)
|
||||
(with-output-to-file "testfile-wpo-apple.ss"
|
||||
(lambda ()
|
||||
(pretty-print
|
||||
'(library (testfile-wpo-apple)
|
||||
(export apple)
|
||||
(import (scheme) (testfile-wpo-date) (testfile-wpo-coconut)
|
||||
(testfile-wpo-eel))
|
||||
(define $init
|
||||
(list
|
||||
'_
|
||||
(cons 'apple->date apple->date)
|
||||
(cons 'apple->coconut apple->coconut)
|
||||
(cons 'apple->eel apple->eel)))
|
||||
(define apple (list 'apple $init)))))
|
||||
'replace)
|
||||
(with-output-to-file "testfile-wpo-banana.ss"
|
||||
(lambda ()
|
||||
(pretty-print
|
||||
'(library (testfile-wpo-banana)
|
||||
(export banana)
|
||||
(import (scheme) (testfile-wpo-coconut))
|
||||
(define $init
|
||||
(list '_ (cons 'banana->coconut banana->coconut)))
|
||||
(define banana (list 'banana $init)))))
|
||||
'replace)
|
||||
(with-output-to-file "testfile-wpo-main.ss"
|
||||
(lambda ()
|
||||
(pretty-print '(import (scheme) (testfile-wpo-date)
|
||||
(testfile-wpo-banana) (testfile-wpo-coconut)
|
||||
(testfile-wpo-apple) (testfile-wpo-eel)))
|
||||
(pretty-print '(pretty-print date))
|
||||
(pretty-print '(pretty-print banana))
|
||||
(pretty-print '(pretty-print coconut))
|
||||
(pretty-print '(pretty-print apple))
|
||||
(pretty-print '(pretty-print eel)))
|
||||
'replace)
|
||||
(separate-compile
|
||||
'(lambda (x)
|
||||
(parameterize ([compile-imported-libraries #t]
|
||||
[generate-wpo-files #t])
|
||||
(compile-program x)))
|
||||
'wpo-main)
|
||||
#t)
|
||||
|
||||
(equal?
|
||||
(separate-compile
|
||||
'(lambda (x)
|
||||
(parameterize ([generate-wpo-files #f])
|
||||
(compile-whole-library (format "~a.wpo" x) (format "~a.so" x))))
|
||||
'wpo-coconut)
|
||||
"()\n")
|
||||
|
||||
(begin
|
||||
(delete-file "testfile-wpo-eel.wpo")
|
||||
(delete-file "testfile-wpo-coconut.wpo")
|
||||
(delete-file "testfile-wpo-eel.so")
|
||||
#t)
|
||||
|
||||
(equal?
|
||||
(separate-compile
|
||||
'(lambda (x)
|
||||
(parameterize ([generate-wpo-files #f]
|
||||
[library-search-handler
|
||||
(let ([lsh (library-search-handler)])
|
||||
(lambda (who name dirs exts)
|
||||
(lsh who (if (equal? name '(testfile-wpo-eel))
|
||||
'(testfile-wpo-coconut)
|
||||
name)
|
||||
dirs exts)))])
|
||||
(compile-whole-library (format "~a.wpo" x) (format "~a.so" x))))
|
||||
'wpo-apple)
|
||||
"((testfile-wpo-coconut) (testfile-wpo-eel))\n")
|
||||
|
||||
(begin
|
||||
(delete-file "testfile-wpo-date.wpo")
|
||||
(delete-file "testfile-wpo-apple.wpo")
|
||||
(delete-file "testfile-wpo-date.so")
|
||||
#t)
|
||||
|
||||
(equal?
|
||||
(separate-compile
|
||||
'(lambda (x)
|
||||
(parameterize ([library-search-handler
|
||||
(let ([lsh (library-search-handler)])
|
||||
(lambda (who name dirs exts)
|
||||
(lsh who (cond
|
||||
[(equal? name '(testfile-wpo-date)) '(testfile-wpo-apple)]
|
||||
[(equal? name '(testfile-wpo-eel)) '(testfile-wpo-coconut)]
|
||||
[else name])
|
||||
dirs exts)))])
|
||||
(compile-whole-program (format "~a.wpo" x) (format "~a.so" x))))
|
||||
'wpo-main)
|
||||
"((testfile-wpo-apple)\n (testfile-wpo-date)\n (testfile-wpo-coconut)\n (testfile-wpo-eel))\n")
|
||||
|
||||
(equal?
|
||||
(separate-eval
|
||||
'(parameterize ([library-search-handler
|
||||
(let ([lsh (library-search-handler)])
|
||||
(lambda (who name dirs exts)
|
||||
(lsh who (cond
|
||||
[(equal? name '(testfile-wpo-date)) '(testfile-wpo-apple)]
|
||||
[(equal? name '(testfile-wpo-eel)) '(testfile-wpo-coconut)]
|
||||
[else name])
|
||||
dirs exts)))])
|
||||
(load-program "testfile-wpo-main.so")))
|
||||
(string-append
|
||||
"(date (apple->date _) (_))\n"
|
||||
"(banana\n"
|
||||
" (_ (banana->coconut\n"
|
||||
" banana->coconut\n"
|
||||
" _\n"
|
||||
" (coconut->eel coconut->eel _))))\n"
|
||||
"(coconut\n"
|
||||
" (banana->coconut _ (coconut->eel coconut->eel _))\n"
|
||||
" (apple->coconut _ (coconut->eel coconut->eel _))\n"
|
||||
" (_ (coconut->eel coconut->eel _)))\n"
|
||||
"(apple\n"
|
||||
" (_ (apple->date apple->date _)\n"
|
||||
" (apple->coconut\n"
|
||||
" apple->coconut\n"
|
||||
" _\n"
|
||||
" (coconut->eel coconut->eel _))\n"
|
||||
" (apple->eel apple->eel _)))\n"
|
||||
"(eel (coconut->eel _) (apple->eel _) (_))\n"))
|
||||
|
||||
(begin
|
||||
;; clean-up to make sure previous builds don't get in the way.
|
||||
(delete-file "testfile-wpo-coconut.ss")
|
||||
(delete-file "testfile-wpo-coconut.so")
|
||||
(delete-file "testfile-wpo-coconut.wpo")
|
||||
|
||||
(delete-file "testfile-wpo-eel.ss")
|
||||
(delete-file "testfile-wpo-eel.so")
|
||||
(delete-file "testfile-wpo-eel.wpo")
|
||||
|
||||
(delete-file "testfile-wpo-date.ss")
|
||||
(delete-file "testfile-wpo-date.so")
|
||||
(delete-file "testfile-wpo-date.wpo")
|
||||
|
||||
(delete-file "testfile-wpo-banana.ss")
|
||||
(delete-file "testfile-wpo-banana.so")
|
||||
(delete-file "testfile-wpo-banana.wpo")
|
||||
|
||||
(delete-file "testfile-wpo-apple.ss")
|
||||
(delete-file "testfile-wpo-apple.so")
|
||||
(delete-file "testfile-wpo-apple.wpo")
|
||||
|
||||
(delete-file "testfile-wpo-main.ss")
|
||||
(delete-file "testfile-wpo-main.so")
|
||||
(delete-file "testfile-wpo-main.wpo")
|
||||
|
||||
#t)
|
||||
|
||||
(begin
|
||||
(with-output-to-file "testfile-deja-vu-one.ss"
|
||||
(lambda ()
|
||||
(pretty-print
|
||||
'(library (testfile-deja-vu-one)
|
||||
(export a)
|
||||
(import (scheme))
|
||||
(define a 3))))
|
||||
'replace)
|
||||
(with-output-to-file "testfile-deja-vu-two.ss"
|
||||
(lambda ()
|
||||
(pretty-print
|
||||
'(library (testfile-deja-vu-two)
|
||||
(export b)
|
||||
(import (scheme) (testfile-deja-vu-one))
|
||||
(define b (list 'b a)))))
|
||||
'replace)
|
||||
(with-output-to-file "testfile-deja-vu-dup.ss"
|
||||
(lambda ()
|
||||
(pretty-print
|
||||
'(library (testfile-deja-vu-dup)
|
||||
(export d)
|
||||
(import (scheme) (testfile-deja-vu-one))
|
||||
(define d (list a 'd)))))
|
||||
'replace)
|
||||
(with-output-to-file "testfile-deja-vu-main.ss"
|
||||
(lambda ()
|
||||
(for-each pretty-print
|
||||
'((import (scheme) (testfile-deja-vu-one) (testfile-deja-vu-two) (testfile-deja-vu-dup))
|
||||
(pretty-print (list a b d)))))
|
||||
'replace)
|
||||
(separate-eval
|
||||
'(parameterize ([generate-wpo-files #t])
|
||||
(compile-library "testfile-deja-vu-one")
|
||||
(compile-library "testfile-deja-vu-two")
|
||||
(compile-library "testfile-deja-vu-dup")
|
||||
(compile-program "testfile-deja-vu-main")
|
||||
(compile-whole-library "testfile-deja-vu-one.wpo" "testfile-deja-vu-one.done")
|
||||
(compile-whole-library "testfile-deja-vu-two.wpo" "testfile-deja-vu-two.done")
|
||||
(compile-whole-library "testfile-deja-vu-dup.wpo" "testfile-deja-vu-dup.done")))
|
||||
#t)
|
||||
|
||||
(error?
|
||||
(separate-eval
|
||||
'(compile-whole-program "testfile-deja-vu-main.wpo" "testfile-deja-vu-main.done")))
|
||||
|
||||
(begin
|
||||
(do ([stem '("one" "two" "dup" "main") (cdr stem)]) ((null? stem))
|
||||
(do ([ext '("ss" "so" "wpo" "done") (cdr ext)]) ((null? ext))
|
||||
(delete-file (format "testfile-deja-vu-~a.~a" (car stem) (car ext)))))
|
||||
#t)
|
||||
|
||||
)
|
||||
|
||||
(mat maybe-compile-whole
|
||||
|
|
138
mats/8.ms
138
mats/8.ms
|
@ -9629,6 +9629,144 @@
|
|||
(equal? (library-extensions) `(,@'((".a1.sls" . ".a1.so") (".boo" . ".booso") (".crud" . ".junk")) ,@default)))))
|
||||
)
|
||||
|
||||
(mat library-search-handler
|
||||
(procedure? (library-search-handler))
|
||||
(eq? (library-search-handler) default-library-search-handler)
|
||||
(error? (default-library-search-handler "not-symbol" '(lib) '() '()))
|
||||
(error? (default-library-search-handler 'import 'bad-library-name '() '()))
|
||||
(error? (default-library-search-handler 'import '(lib) '(("invalid" "path" "list")) '()))
|
||||
(error? (default-library-search-handler 'import '(lib) '(("foo" . "bar")) '(("bad") ("extensions"))))
|
||||
(error?
|
||||
(parameterize ([library-search-handler
|
||||
(lambda (who path dir* all-ext*)
|
||||
(values '(bad source path) #f #f))])
|
||||
(eval '(import (foo)))))
|
||||
(error?
|
||||
(parameterize ([library-search-handler
|
||||
(lambda (who path dir* all-ext*)
|
||||
(values #f '(bad object path) #f))])
|
||||
(eval '(import (foo)))))
|
||||
(error?
|
||||
(parameterize ([library-search-handler
|
||||
(lambda (who path dir* all-ext*)
|
||||
(values #f #f #t))])
|
||||
(eval '(import (foo)))))
|
||||
(begin
|
||||
(mkdir "lsh-testdir")
|
||||
(mkdir "lsh-testdir/src1")
|
||||
(mkdir "lsh-testdir/src2")
|
||||
(mkdir "lsh-testdir/obj")
|
||||
#t)
|
||||
(begin
|
||||
(with-output-to-file "lsh-testdir/src1/lib.ss"
|
||||
(lambda ()
|
||||
(pretty-print
|
||||
'(library (lib) (export a) (import (scheme))
|
||||
(define a "src1 provided this a"))))
|
||||
'replace)
|
||||
(with-output-to-file "lsh-testdir/src2/lib.ss"
|
||||
(lambda ()
|
||||
(pretty-print
|
||||
'(library (lib) (export a) (import (scheme))
|
||||
(define a "a from src2"))))
|
||||
'replace)
|
||||
(with-output-to-file "lsh-testdir/src2/foo.ss"
|
||||
(lambda ()
|
||||
(pretty-print
|
||||
'(library (foo) (export a) (import (scheme) (lib)))))
|
||||
'replace)
|
||||
(parameterize ([generate-wpo-files #t]
|
||||
[compile-imported-libraries #t]
|
||||
[library-directories '(("src2" . "obj"))])
|
||||
(compile-file "lsh-testdir/src2/lib.ss" "lsh-testdir/obj/lib.so")
|
||||
(compile-file "lsh-testdir/src2/foo.ss" "lsh-testdir/obj/foo.so"))
|
||||
#t)
|
||||
(equal?
|
||||
"a from src2\n"
|
||||
(separate-eval
|
||||
'(cd "lsh-testdir")
|
||||
'(library-extensions '((".ss" . ".so")))
|
||||
'(library-directories '(("src2" . "obj") ("src1" . "obj")))
|
||||
'(library-search-handler
|
||||
(lambda (who path dir* all-ext*)
|
||||
(let-values ([(src-path obj-path obj-exists?)
|
||||
(default-library-search-handler who path dir* all-ext*)])
|
||||
(assert (equal? src-path "src2/lib.ss"))
|
||||
(assert (equal? obj-path "obj/lib.so"))
|
||||
(assert obj-exists?)
|
||||
(values src-path obj-path obj-exists?))))
|
||||
'(printf "~a\n" (let () (import (lib)) a))))
|
||||
(equal?
|
||||
"src1 provided this a\n"
|
||||
(separate-eval
|
||||
'(cd "lsh-testdir")
|
||||
'(library-extensions '((".ss" . ".so")))
|
||||
'(library-directories '(("src2" . "obj") ("src1" . "obj")))
|
||||
'(library-search-handler
|
||||
(lambda (who path dir* all-ext*)
|
||||
(assert (eq? who 'import))
|
||||
(assert (equal? path '(lib)))
|
||||
(assert (equal? dir* (library-directories)))
|
||||
(assert (equal? all-ext* (library-extensions)))
|
||||
;; switcheroo
|
||||
(values "src1/lib.ss" #f #f)))
|
||||
'(printf "~a\n" (let () (import (lib)) a))))
|
||||
(equal?
|
||||
(string-append
|
||||
"compiling src1/lib.ss with output to obj/lib-compiled.so\n"
|
||||
"src1 provided this a\n")
|
||||
(separate-eval
|
||||
'(cd "lsh-testdir")
|
||||
'(compile-imported-libraries #t)
|
||||
'(library-search-handler
|
||||
(lambda (who path dir* all-ext*)
|
||||
(values "src1/lib.ss" "obj/lib-compiled.so" #f)))
|
||||
'(printf "~a\n" (let () (import (lib)) a))))
|
||||
;; the default library-search-handler finds obj/lib.wpo
|
||||
;; so no libraries are needed at run time
|
||||
(equal?
|
||||
"()\n"
|
||||
(separate-eval
|
||||
'(cd "lsh-testdir")
|
||||
'(library-extensions '((".ss" . ".so")))
|
||||
'(library-directories '(("src1" . "obj") ("src2" . "obj")))
|
||||
'(compile-whole-library "obj/foo.wpo" "foo.library")))
|
||||
(equal?
|
||||
"((lib))\n"
|
||||
(separate-eval
|
||||
'(cd "lsh-testdir")
|
||||
'(library-extensions '((".ss" . ".so")))
|
||||
'(library-directories '(("src1" . "obj") ("src2" . "obj")))
|
||||
'(define (check who path dir*)
|
||||
(assert (eq? who 'compile-whole-library))
|
||||
(assert (equal? path '(lib)))
|
||||
(assert (equal? dir* (library-directories))))
|
||||
'(library-search-handler
|
||||
(lambda (who path dir* all-ext*)
|
||||
(check who path dir*)
|
||||
(assert (equal? all-ext* '((".ss" . ".wpo"))))
|
||||
;; default search finds the wpo file, but ...
|
||||
(let-values ([(src-path obj-path obj-exists?)
|
||||
(default-library-search-handler who path dir* all-ext*)])
|
||||
;; user reordered library-directories since compiling the wpo file
|
||||
(assert (equal? src-path "src1/lib.ss"))
|
||||
(assert (equal? obj-path "obj/lib.wpo"))
|
||||
(assert obj-exists?))
|
||||
;; ... we install a new handler that returns the object file instead
|
||||
(library-search-handler
|
||||
(lambda (who path dir* all-ext*)
|
||||
(check who path dir*)
|
||||
(assert (equal? all-ext* (library-extensions)))
|
||||
(values #f "obj/lib.so" #t)))
|
||||
;; ... and report no .wpo file found so we fall back to the
|
||||
;; library-search-handler just installed
|
||||
(values #f #f #f)))
|
||||
'(compile-whole-library "obj/foo.wpo" "foo.library")))
|
||||
(begin
|
||||
(rm-rf "lsh-testdir")
|
||||
#t)
|
||||
)
|
||||
|
||||
(mat compile-imported-libraries
|
||||
(not (compile-imported-libraries))
|
||||
(begin
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
*** errors-compile-0-f-f-f 2019-02-11 17:18:14.000000000 -0800
|
||||
--- errors-compile-0-f-t-f 2019-02-11 16:37:31.000000000 -0800
|
||||
*** errors-compile-0-f-f-f 2019-03-15 12:05:55.397368315 -0400
|
||||
--- errors-compile-0-f-t-f 2019-03-15 11:24:12.070638664 -0400
|
||||
***************
|
||||
*** 125,131 ****
|
||||
3.mo:Expected error in mat dipa-letrec: "attempt to reference undefined variable a".
|
||||
|
@ -75,7 +75,7 @@
|
|||
misc.mo:Expected error in mat cpletrec: "attempt to reference undefined variable b".
|
||||
misc.mo:Expected error in mat cpletrec: "attempt to reference undefined variable a".
|
||||
***************
|
||||
*** 7169,7176 ****
|
||||
*** 7170,7177 ****
|
||||
7.mo:Expected error in mat bytes-allocated: "bytes-allocated: invalid space gnu".
|
||||
7.mo:Expected error in mat error: "a: hit me!".
|
||||
7.mo:Expected error in mat error: "f: n is 0".
|
||||
|
@ -84,7 +84,7 @@
|
|||
record.mo:Expected error in mat record2: "invalid value 3 for foreign type double-float".
|
||||
record.mo:Expected error in mat record2: "3 is not of type #<record type fudge>".
|
||||
record.mo:Expected error in mat record2: "make-record-type: invalid field list ((immutable double-float a) . b)".
|
||||
--- 7169,7176 ----
|
||||
--- 7170,7177 ----
|
||||
7.mo:Expected error in mat bytes-allocated: "bytes-allocated: invalid space gnu".
|
||||
7.mo:Expected error in mat error: "a: hit me!".
|
||||
7.mo:Expected error in mat error: "f: n is 0".
|
||||
|
@ -94,7 +94,7 @@
|
|||
record.mo:Expected error in mat record2: "3 is not of type #<record type fudge>".
|
||||
record.mo:Expected error in mat record2: "make-record-type: invalid field list ((immutable double-float a) . b)".
|
||||
***************
|
||||
*** 7178,7192 ****
|
||||
*** 7179,7193 ****
|
||||
record.mo:Expected error in mat type-descriptor: "invalid syntax (type-descriptor 3)".
|
||||
record.mo:Expected error in mat type-descriptor: "type-descriptor: unrecognized record car".
|
||||
record.mo:Expected error in mat record3: "variable set-fudge-a! is not bound".
|
||||
|
@ -110,7 +110,7 @@
|
|||
record.mo:Expected error in mat record9: "record-reader: invalid input #f".
|
||||
record.mo:Expected error in mat record9: "record-reader: invalid second argument fudge".
|
||||
record.mo:Expected error in mat record9: "record-reader: invalid second argument fudge".
|
||||
--- 7178,7192 ----
|
||||
--- 7179,7193 ----
|
||||
record.mo:Expected error in mat type-descriptor: "invalid syntax (type-descriptor 3)".
|
||||
record.mo:Expected error in mat type-descriptor: "type-descriptor: unrecognized record car".
|
||||
record.mo:Expected error in mat record3: "variable set-fudge-a! is not bound".
|
||||
|
@ -127,7 +127,7 @@
|
|||
record.mo:Expected error in mat record9: "record-reader: invalid second argument fudge".
|
||||
record.mo:Expected error in mat record9: "record-reader: invalid second argument fudge".
|
||||
***************
|
||||
*** 7199,7224 ****
|
||||
*** 7200,7225 ****
|
||||
record.mo:Expected error in mat record10: "read: unresolvable cycle constructing record of type #<record type bar> at char 3 of #<input port string>".
|
||||
record.mo:Expected error in mat record16: "read: unresolvable cycle constructing record of type #<record type bazar> at char 3 of #<input port string>".
|
||||
record.mo:Expected error in mat record16: "read: unresolvable cycle constructing record of type #<record type bazar> at char 3 of #<input port string>".
|
||||
|
@ -154,7 +154,7 @@
|
|||
record.mo:Expected error in mat foreign-data: "foreign-alloc: 0 is not a positive fixnum".
|
||||
record.mo:Expected error in mat foreign-data: "foreign-alloc: <int> is not a positive fixnum".
|
||||
record.mo:Expected error in mat foreign-data: "foreign-alloc: -5 is not a positive fixnum".
|
||||
--- 7199,7224 ----
|
||||
--- 7200,7225 ----
|
||||
record.mo:Expected error in mat record10: "read: unresolvable cycle constructing record of type #<record type bar> at char 3 of #<input port string>".
|
||||
record.mo:Expected error in mat record16: "read: unresolvable cycle constructing record of type #<record type bazar> at char 3 of #<input port string>".
|
||||
record.mo:Expected error in mat record16: "read: unresolvable cycle constructing record of type #<record type bazar> at char 3 of #<input port string>".
|
||||
|
@ -182,7 +182,7 @@
|
|||
record.mo:Expected error in mat foreign-data: "foreign-alloc: <int> is not a positive fixnum".
|
||||
record.mo:Expected error in mat foreign-data: "foreign-alloc: -5 is not a positive fixnum".
|
||||
***************
|
||||
*** 7349,7387 ****
|
||||
*** 7350,7388 ****
|
||||
record.mo:Expected error in mat record22: "invalid field specifier (immutable creepy q)".
|
||||
record.mo:Expected error in mat record22: "invalid field specifier (immutable creepy q)".
|
||||
record.mo:Expected error in mat record23: "make-record-type: cannot extend sealed record type #<record type foo>".
|
||||
|
@ -222,7 +222,7 @@
|
|||
record.mo:Expected error in mat record?: "record?: 4 is not a record type descriptor".
|
||||
record.mo:Expected error in mat record?: "record?: a is not a record type descriptor".
|
||||
record.mo:Expected error in mat record?: "record?: #(1) is not a record type descriptor".
|
||||
--- 7349,7387 ----
|
||||
--- 7350,7388 ----
|
||||
record.mo:Expected error in mat record22: "invalid field specifier (immutable creepy q)".
|
||||
record.mo:Expected error in mat record22: "invalid field specifier (immutable creepy q)".
|
||||
record.mo:Expected error in mat record23: "make-record-type: cannot extend sealed record type #<record type foo>".
|
||||
|
@ -263,7 +263,7 @@
|
|||
record.mo:Expected error in mat record?: "record?: a is not a record type descriptor".
|
||||
record.mo:Expected error in mat record?: "record?: #(1) is not a record type descriptor".
|
||||
***************
|
||||
*** 7396,7452 ****
|
||||
*** 7397,7453 ****
|
||||
record.mo:Expected error in mat r6rs-records-procedural: "make-record-constructor-descriptor: invalid protocol flimflam".
|
||||
record.mo:Expected error in mat r6rs-records-procedural: "attempt to apply non-procedure not-a-procedure".
|
||||
record.mo:Expected error in mat r6rs-records-procedural: "attempt to apply non-procedure spam".
|
||||
|
@ -321,7 +321,7 @@
|
|||
record.mo:Expected error in mat r6rs-records-syntactic: "define-record-type: incompatible record type cpoint - different parent".
|
||||
record.mo:Expected error in mat r6rs-records-syntactic: "define-record-type: incompatible record type cpoint - different parent".
|
||||
record.mo:Expected error in mat r6rs-records-syntactic: "cannot extend define-record-type parent fratrat".
|
||||
--- 7396,7452 ----
|
||||
--- 7397,7453 ----
|
||||
record.mo:Expected error in mat r6rs-records-procedural: "make-record-constructor-descriptor: invalid protocol flimflam".
|
||||
record.mo:Expected error in mat r6rs-records-procedural: "attempt to apply non-procedure not-a-procedure".
|
||||
record.mo:Expected error in mat r6rs-records-procedural: "attempt to apply non-procedure spam".
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
*** errors-compile-0-f-f-f 2019-02-11 17:18:14.000000000 -0800
|
||||
--- errors-compile-0-t-f-f 2019-02-11 16:46:49.000000000 -0800
|
||||
*** errors-compile-0-f-f-f 2019-03-15 12:05:55.397368315 -0400
|
||||
--- errors-compile-0-t-f-f 2019-03-15 11:33:18.696675715 -0400
|
||||
***************
|
||||
*** 93,99 ****
|
||||
3.mo:Expected error in mat case-lambda: "incorrect number of arguments to #<procedure foo>".
|
||||
|
@ -4252,9 +4252,9 @@
|
|||
7.mo:Expected error in mat compile-whole-program: "separate-eval: Exception: library (testfile-wpo-a4) not found
|
||||
7.mo:Expected error in mat compile-whole-program: "separate-eval: Exception: library (testfile-wpo-c4) not found
|
||||
***************
|
||||
*** 7067,7093 ****
|
||||
7.mo:Expected error in mat compile-whole-library: "separate-eval: Exception: library (testfile-cwl-c6) not found
|
||||
*** 7068,7094 ****
|
||||
7.mo:Expected error in mat compile-whole-library: "separate-compile: Exception in compile-whole-library: encountered visit-only run-time library (testfile-cwl-a9) while processing file "testfile-cwl-a9.wpo"
|
||||
7.mo:Expected error in mat compile-whole-library: "separate-eval: Exception in compile-whole-program: encountered library (testfile-deja-vu-one) in testfile-deja-vu-dup.wpo, but had already encountered it in testfile-deja-vu-two.wpo
|
||||
7.mo:Expected error in mat top-level-value-functions: "top-level-bound?: "hello" is not a symbol".
|
||||
! 7.mo:Expected error in mat top-level-value-functions: "incorrect argument count in call (top-level-bound?)".
|
||||
7.mo:Expected error in mat top-level-value-functions: "top-level-bound?: 45 is not a symbol".
|
||||
|
@ -4280,9 +4280,9 @@
|
|||
7.mo:Expected error in mat top-level-value-functions: "define-top-level-value: hello is not an environment".
|
||||
7.mo:Expected error in mat top-level-value-functions: "define-top-level-value: #<environment *scheme*> is not a symbol".
|
||||
7.mo:Expected error in mat top-level-value-functions: "variable i-am-not-bound-i-hope is not bound".
|
||||
--- 7067,7093 ----
|
||||
7.mo:Expected error in mat compile-whole-library: "separate-eval: Exception: library (testfile-cwl-c6) not found
|
||||
--- 7068,7094 ----
|
||||
7.mo:Expected error in mat compile-whole-library: "separate-compile: Exception in compile-whole-library: encountered visit-only run-time library (testfile-cwl-a9) while processing file "testfile-cwl-a9.wpo"
|
||||
7.mo:Expected error in mat compile-whole-library: "separate-eval: Exception in compile-whole-program: encountered library (testfile-deja-vu-one) in testfile-deja-vu-dup.wpo, but had already encountered it in testfile-deja-vu-two.wpo
|
||||
7.mo:Expected error in mat top-level-value-functions: "top-level-bound?: "hello" is not a symbol".
|
||||
! 7.mo:Expected error in mat top-level-value-functions: "incorrect number of arguments to #<procedure top-level-bound?>".
|
||||
7.mo:Expected error in mat top-level-value-functions: "top-level-bound?: 45 is not a symbol".
|
||||
|
@ -4309,7 +4309,7 @@
|
|||
7.mo:Expected error in mat top-level-value-functions: "define-top-level-value: #<environment *scheme*> is not a symbol".
|
||||
7.mo:Expected error in mat top-level-value-functions: "variable i-am-not-bound-i-hope is not bound".
|
||||
***************
|
||||
*** 7492,7602 ****
|
||||
*** 7493,7603 ****
|
||||
hash.mo:Expected error in mat old-hash-table: "hash-table-for-each: ((a . b)) is not an eq hashtable".
|
||||
hash.mo:Expected error in mat old-hash-table: "incorrect number of arguments to #<procedure>".
|
||||
hash.mo:Expected error in mat old-hash-table: "incorrect number of arguments to #<procedure>".
|
||||
|
@ -4421,7 +4421,7 @@
|
|||
hash.mo:Expected error in mat hashtable-arguments: "hashtable-ephemeron?: (hash . table) is not a hashtable".
|
||||
hash.mo:Expected error in mat hash-return-value: "hashtable-ref: invalid hash-function #<procedure> return value "oops" for any".
|
||||
hash.mo:Expected error in mat hash-return-value: "hashtable-ref: invalid hash-function #<procedure> return value 3.5 for any".
|
||||
--- 7492,7602 ----
|
||||
--- 7493,7603 ----
|
||||
hash.mo:Expected error in mat old-hash-table: "hash-table-for-each: ((a . b)) is not an eq hashtable".
|
||||
hash.mo:Expected error in mat old-hash-table: "incorrect number of arguments to #<procedure>".
|
||||
hash.mo:Expected error in mat old-hash-table: "incorrect number of arguments to #<procedure>".
|
||||
|
@ -4534,7 +4534,7 @@
|
|||
hash.mo:Expected error in mat hash-return-value: "hashtable-ref: invalid hash-function #<procedure> return value "oops" for any".
|
||||
hash.mo:Expected error in mat hash-return-value: "hashtable-ref: invalid hash-function #<procedure> return value 3.5 for any".
|
||||
***************
|
||||
*** 7616,7722 ****
|
||||
*** 7617,7723 ****
|
||||
hash.mo:Expected error in mat hash-return-value: "hashtable-delete!: invalid hash-function #<procedure> return value "oops" for any".
|
||||
hash.mo:Expected error in mat hash-return-value: "hashtable-delete!: invalid hash-function #<procedure> return value 3.5 for any".
|
||||
hash.mo:Expected error in mat hash-return-value: "hashtable-delete!: invalid hash-function #<procedure> return value 1+2i for any".
|
||||
|
@ -4642,7 +4642,7 @@
|
|||
hash.mo:Expected error in mat eqv-hashtable-arguments: "make-ephemeron-eqv-hashtable: invalid size argument -1".
|
||||
hash.mo:Expected error in mat eqv-hashtable-arguments: "make-ephemeron-eqv-hashtable: invalid size argument #t".
|
||||
hash.mo:Expected error in mat eqv-hashtable-arguments: "make-ephemeron-eqv-hashtable: invalid size argument #f".
|
||||
--- 7616,7722 ----
|
||||
--- 7617,7723 ----
|
||||
hash.mo:Expected error in mat hash-return-value: "hashtable-delete!: invalid hash-function #<procedure> return value "oops" for any".
|
||||
hash.mo:Expected error in mat hash-return-value: "hashtable-delete!: invalid hash-function #<procedure> return value 3.5 for any".
|
||||
hash.mo:Expected error in mat hash-return-value: "hashtable-delete!: invalid hash-function #<procedure> return value 1+2i for any".
|
||||
|
@ -4751,7 +4751,7 @@
|
|||
hash.mo:Expected error in mat eqv-hashtable-arguments: "make-ephemeron-eqv-hashtable: invalid size argument #t".
|
||||
hash.mo:Expected error in mat eqv-hashtable-arguments: "make-ephemeron-eqv-hashtable: invalid size argument #f".
|
||||
***************
|
||||
*** 7724,7739 ****
|
||||
*** 7725,7740 ****
|
||||
hash.mo:Expected error in mat generic-hashtable: "hashtable-delete!: #<hashtable> is not mutable".
|
||||
hash.mo:Expected error in mat generic-hashtable: "hashtable-update!: #<hashtable> is not mutable".
|
||||
hash.mo:Expected error in mat generic-hashtable: "hashtable-update!: #<hashtable> is not mutable".
|
||||
|
@ -4768,7 +4768,7 @@
|
|||
hash.mo:Expected error in mat hash-functions: "string-ci-hash: hello is not a string".
|
||||
hash.mo:Expected error in mat fasl-other-hashtable: "fasl-write: invalid fasl object #<eqv hashtable>".
|
||||
hash.mo:Expected error in mat fasl-other-hashtable: "fasl-write: invalid fasl object #<hashtable>".
|
||||
--- 7724,7739 ----
|
||||
--- 7725,7740 ----
|
||||
hash.mo:Expected error in mat generic-hashtable: "hashtable-delete!: #<hashtable> is not mutable".
|
||||
hash.mo:Expected error in mat generic-hashtable: "hashtable-update!: #<hashtable> is not mutable".
|
||||
hash.mo:Expected error in mat generic-hashtable: "hashtable-update!: #<hashtable> is not mutable".
|
||||
|
@ -4786,7 +4786,7 @@
|
|||
hash.mo:Expected error in mat fasl-other-hashtable: "fasl-write: invalid fasl object #<eqv hashtable>".
|
||||
hash.mo:Expected error in mat fasl-other-hashtable: "fasl-write: invalid fasl object #<hashtable>".
|
||||
***************
|
||||
*** 7849,7856 ****
|
||||
*** 7850,7857 ****
|
||||
8.mo:Expected error in mat with-syntax: "invalid syntax a".
|
||||
8.mo:Expected error in mat with-syntax: "duplicate pattern variable x in (x x)".
|
||||
8.mo:Expected error in mat with-syntax: "duplicate pattern variable x in (x x)".
|
||||
|
@ -4795,7 +4795,7 @@
|
|||
8.mo:Expected error in mat generate-temporaries: "generate-temporaries: improper list structure (a b . c)".
|
||||
8.mo:Expected error in mat generate-temporaries: "generate-temporaries: cyclic list structure (a b c b c b ...)".
|
||||
8.mo:Expected error in mat syntax->list: "syntax->list: invalid argument #<syntax a>".
|
||||
--- 7849,7856 ----
|
||||
--- 7850,7857 ----
|
||||
8.mo:Expected error in mat with-syntax: "invalid syntax a".
|
||||
8.mo:Expected error in mat with-syntax: "duplicate pattern variable x in (x x)".
|
||||
8.mo:Expected error in mat with-syntax: "duplicate pattern variable x in (x x)".
|
||||
|
@ -4805,7 +4805,7 @@
|
|||
8.mo:Expected error in mat generate-temporaries: "generate-temporaries: cyclic list structure (a b c b c b ...)".
|
||||
8.mo:Expected error in mat syntax->list: "syntax->list: invalid argument #<syntax a>".
|
||||
***************
|
||||
*** 8439,8454 ****
|
||||
*** 8447,8462 ****
|
||||
8.mo:Expected error in mat rnrs-eval: "attempt to assign unbound identifier foo".
|
||||
8.mo:Expected error in mat rnrs-eval: "invalid definition in immutable environment (define cons (quote #<procedure vector>))".
|
||||
8.mo:Expected error in mat top-level-syntax-functions: "top-level-syntax: "hello" is not a symbol".
|
||||
|
@ -4822,7 +4822,7 @@
|
|||
8.mo:Expected error in mat top-level-syntax-functions: "define-top-level-syntax: hello is not an environment".
|
||||
8.mo:Expected error in mat top-level-syntax-functions: "define-top-level-syntax: #<environment *scheme*> is not a symbol".
|
||||
8.mo:Expected error in mat top-level-syntax-functions: "define-top-level-syntax: cannot modify immutable environment #<environment *scheme*>".
|
||||
--- 8439,8454 ----
|
||||
--- 8447,8462 ----
|
||||
8.mo:Expected error in mat rnrs-eval: "attempt to assign unbound identifier foo".
|
||||
8.mo:Expected error in mat rnrs-eval: "invalid definition in immutable environment (define cons (quote #<procedure vector>))".
|
||||
8.mo:Expected error in mat top-level-syntax-functions: "top-level-syntax: "hello" is not a symbol".
|
||||
|
@ -4840,7 +4840,7 @@
|
|||
8.mo:Expected error in mat top-level-syntax-functions: "define-top-level-syntax: #<environment *scheme*> is not a symbol".
|
||||
8.mo:Expected error in mat top-level-syntax-functions: "define-top-level-syntax: cannot modify immutable environment #<environment *scheme*>".
|
||||
***************
|
||||
*** 8547,8569 ****
|
||||
*** 8555,8577 ****
|
||||
fx.mo:Expected error in mat fx=?: "fx=?: (a) is not a fixnum".
|
||||
fx.mo:Expected error in mat fx=?: "fx=?: <int> is not a fixnum".
|
||||
fx.mo:Expected error in mat fx=?: "fx=?: <-int> is not a fixnum".
|
||||
|
@ -4864,7 +4864,7 @@
|
|||
fx.mo:Expected error in mat $fxu<: "incorrect number of arguments to #<procedure $fxu<>".
|
||||
fx.mo:Expected error in mat $fxu<: "incorrect number of arguments to #<procedure $fxu<>".
|
||||
fx.mo:Expected error in mat $fxu<: "$fxu<: <-int> is not a fixnum".
|
||||
--- 8547,8569 ----
|
||||
--- 8555,8577 ----
|
||||
fx.mo:Expected error in mat fx=?: "fx=?: (a) is not a fixnum".
|
||||
fx.mo:Expected error in mat fx=?: "fx=?: <int> is not a fixnum".
|
||||
fx.mo:Expected error in mat fx=?: "fx=?: <-int> is not a fixnum".
|
||||
|
@ -4889,7 +4889,7 @@
|
|||
fx.mo:Expected error in mat $fxu<: "incorrect number of arguments to #<procedure $fxu<>".
|
||||
fx.mo:Expected error in mat $fxu<: "$fxu<: <-int> is not a fixnum".
|
||||
***************
|
||||
*** 8595,8607 ****
|
||||
*** 8603,8615 ****
|
||||
fx.mo:Expected error in mat r6rs:fx-: "fx-: #f is not a fixnum".
|
||||
fx.mo:Expected error in mat r6rs:fx-: "fx-: #f is not a fixnum".
|
||||
fx.mo:Expected error in mat fx*: "fx*: (a . b) is not a fixnum".
|
||||
|
@ -4903,7 +4903,7 @@
|
|||
fx.mo:Expected error in mat r6rs:fx*: "fx*: <int> is not a fixnum".
|
||||
fx.mo:Expected error in mat r6rs:fx*: "fx*: <-int> is not a fixnum".
|
||||
fx.mo:Expected error in mat r6rs:fx*: "fx*: #f is not a fixnum".
|
||||
--- 8595,8607 ----
|
||||
--- 8603,8615 ----
|
||||
fx.mo:Expected error in mat r6rs:fx-: "fx-: #f is not a fixnum".
|
||||
fx.mo:Expected error in mat r6rs:fx-: "fx-: #f is not a fixnum".
|
||||
fx.mo:Expected error in mat fx*: "fx*: (a . b) is not a fixnum".
|
||||
|
@ -4918,7 +4918,7 @@
|
|||
fx.mo:Expected error in mat r6rs:fx*: "fx*: <-int> is not a fixnum".
|
||||
fx.mo:Expected error in mat r6rs:fx*: "fx*: #f is not a fixnum".
|
||||
***************
|
||||
*** 8651,8663 ****
|
||||
*** 8659,8671 ****
|
||||
fx.mo:Expected error in mat fx1+: "fx1+: <-int> is not a fixnum".
|
||||
fx.mo:Expected error in mat fx1+: "fx1+: <int> is not a fixnum".
|
||||
fx.mo:Expected error in mat fx1+: "fx1+: a is not a fixnum".
|
||||
|
@ -4932,7 +4932,7 @@
|
|||
fx.mo:Expected error in mat fxmax: "fxmax: a is not a fixnum".
|
||||
fx.mo:Expected error in mat fxmax: "fxmax: <int> is not a fixnum".
|
||||
fx.mo:Expected error in mat fxmax: "fxmax: <-int> is not a fixnum".
|
||||
--- 8651,8663 ----
|
||||
--- 8659,8671 ----
|
||||
fx.mo:Expected error in mat fx1+: "fx1+: <-int> is not a fixnum".
|
||||
fx.mo:Expected error in mat fx1+: "fx1+: <int> is not a fixnum".
|
||||
fx.mo:Expected error in mat fx1+: "fx1+: a is not a fixnum".
|
||||
|
@ -4947,7 +4947,7 @@
|
|||
fx.mo:Expected error in mat fxmax: "fxmax: <int> is not a fixnum".
|
||||
fx.mo:Expected error in mat fxmax: "fxmax: <-int> is not a fixnum".
|
||||
***************
|
||||
*** 8755,8764 ****
|
||||
*** 8763,8772 ****
|
||||
fx.mo:Expected error in mat fxarithmetic-shift: "fxarithmetic-shift: fixnum overflow with arguments <int> and 10".
|
||||
fx.mo:Expected error in mat fxarithmetic-shift: "fxarithmetic-shift: fixnum overflow with arguments -4097 and <int>".
|
||||
fx.mo:Expected error in mat fxarithmetic-shift: "fxarithmetic-shift: fixnum overflow with arguments <-int> and 1".
|
||||
|
@ -4958,7 +4958,7 @@
|
|||
fx.mo:Expected error in mat fxbit-field: "fxbit-field: 35.0 is not a fixnum".
|
||||
fx.mo:Expected error in mat fxbit-field: "fxbit-field: 5.0 is not a valid start index".
|
||||
fx.mo:Expected error in mat fxbit-field: "fxbit-field: 8.0 is not a valid end index".
|
||||
--- 8755,8764 ----
|
||||
--- 8763,8772 ----
|
||||
fx.mo:Expected error in mat fxarithmetic-shift: "fxarithmetic-shift: fixnum overflow with arguments <int> and 10".
|
||||
fx.mo:Expected error in mat fxarithmetic-shift: "fxarithmetic-shift: fixnum overflow with arguments -4097 and <int>".
|
||||
fx.mo:Expected error in mat fxarithmetic-shift: "fxarithmetic-shift: fixnum overflow with arguments <-int> and 1".
|
||||
|
@ -4970,7 +4970,7 @@
|
|||
fx.mo:Expected error in mat fxbit-field: "fxbit-field: 5.0 is not a valid start index".
|
||||
fx.mo:Expected error in mat fxbit-field: "fxbit-field: 8.0 is not a valid end index".
|
||||
***************
|
||||
*** 8772,8805 ****
|
||||
*** 8780,8813 ****
|
||||
fx.mo:Expected error in mat fxbit-field: "fxbit-field: <int> is not a valid end index".
|
||||
fx.mo:Expected error in mat fxbit-field: "fxbit-field: <int> is not a valid start index".
|
||||
fx.mo:Expected error in mat fxbit-field: "fxbit-field: <int> is not a valid end index".
|
||||
|
@ -5005,7 +5005,7 @@
|
|||
fx.mo:Expected error in mat fxif: "fxif: a is not a fixnum".
|
||||
fx.mo:Expected error in mat fxif: "fxif: 3.4 is not a fixnum".
|
||||
fx.mo:Expected error in mat fxif: "fxif: (a) is not a fixnum".
|
||||
--- 8772,8805 ----
|
||||
--- 8780,8813 ----
|
||||
fx.mo:Expected error in mat fxbit-field: "fxbit-field: <int> is not a valid end index".
|
||||
fx.mo:Expected error in mat fxbit-field: "fxbit-field: <int> is not a valid start index".
|
||||
fx.mo:Expected error in mat fxbit-field: "fxbit-field: <int> is not a valid end index".
|
||||
|
@ -5041,7 +5041,7 @@
|
|||
fx.mo:Expected error in mat fxif: "fxif: 3.4 is not a fixnum".
|
||||
fx.mo:Expected error in mat fxif: "fxif: (a) is not a fixnum".
|
||||
***************
|
||||
*** 8809,8852 ****
|
||||
*** 8817,8860 ****
|
||||
fx.mo:Expected error in mat fxif: "fxif: <-int> is not a fixnum".
|
||||
fx.mo:Expected error in mat fxif: "fxif: <-int> is not a fixnum".
|
||||
fx.mo:Expected error in mat fxif: "fxif: <-int> is not a fixnum".
|
||||
|
@ -5086,7 +5086,7 @@
|
|||
fx.mo:Expected error in mat fxcopy-bit: "fxcopy-bit: 3.4 is not a fixnum".
|
||||
fx.mo:Expected error in mat fxcopy-bit: "fxcopy-bit: "3" is not a fixnum".
|
||||
fx.mo:Expected error in mat fxcopy-bit: "fxcopy-bit: <int> is not a fixnum".
|
||||
--- 8809,8852 ----
|
||||
--- 8817,8860 ----
|
||||
fx.mo:Expected error in mat fxif: "fxif: <-int> is not a fixnum".
|
||||
fx.mo:Expected error in mat fxif: "fxif: <-int> is not a fixnum".
|
||||
fx.mo:Expected error in mat fxif: "fxif: <-int> is not a fixnum".
|
||||
|
@ -5132,7 +5132,7 @@
|
|||
fx.mo:Expected error in mat fxcopy-bit: "fxcopy-bit: "3" is not a fixnum".
|
||||
fx.mo:Expected error in mat fxcopy-bit: "fxcopy-bit: <int> is not a fixnum".
|
||||
***************
|
||||
*** 8855,8865 ****
|
||||
*** 8863,8873 ****
|
||||
fx.mo:Expected error in mat fxcopy-bit: "fxcopy-bit: invalid bit index -1".
|
||||
fx.mo:Expected error in mat fxcopy-bit: "fxcopy-bit: invalid bit index <int>".
|
||||
fx.mo:Expected error in mat fxcopy-bit: "fxcopy-bit: invalid bit index <int>".
|
||||
|
@ -5144,7 +5144,7 @@
|
|||
fx.mo:Expected error in mat fxcopy-bit-field: "fxcopy-bit-field: "3" is not a fixnum".
|
||||
fx.mo:Expected error in mat fxcopy-bit-field: "fxcopy-bit-field: 3.4 is not a valid start index".
|
||||
fx.mo:Expected error in mat fxcopy-bit-field: "fxcopy-bit-field: 3/4 is not a valid end index".
|
||||
--- 8855,8865 ----
|
||||
--- 8863,8873 ----
|
||||
fx.mo:Expected error in mat fxcopy-bit: "fxcopy-bit: invalid bit index -1".
|
||||
fx.mo:Expected error in mat fxcopy-bit: "fxcopy-bit: invalid bit index <int>".
|
||||
fx.mo:Expected error in mat fxcopy-bit: "fxcopy-bit: invalid bit index <int>".
|
||||
|
@ -5157,7 +5157,7 @@
|
|||
fx.mo:Expected error in mat fxcopy-bit-field: "fxcopy-bit-field: 3.4 is not a valid start index".
|
||||
fx.mo:Expected error in mat fxcopy-bit-field: "fxcopy-bit-field: 3/4 is not a valid end index".
|
||||
***************
|
||||
*** 8919,8928 ****
|
||||
*** 8927,8936 ****
|
||||
fx.mo:Expected error in mat fxdiv0-and-mod0: "fxmod0: (a) is not a fixnum".
|
||||
fx.mo:Expected error in mat fxdiv0-and-mod0: "fxmod0: undefined for 0".
|
||||
fx.mo:Expected error in mat fxdiv0-and-mod0: "fxmod0: undefined for 0".
|
||||
|
@ -5168,7 +5168,7 @@
|
|||
fx.mo:Expected error in mat fx+/carry: "fx+/carry: 1.0 is not a fixnum".
|
||||
fx.mo:Expected error in mat fx+/carry: "fx+/carry: 2.0 is not a fixnum".
|
||||
fx.mo:Expected error in mat fx+/carry: "fx+/carry: 3.0 is not a fixnum".
|
||||
--- 8919,8928 ----
|
||||
--- 8927,8936 ----
|
||||
fx.mo:Expected error in mat fxdiv0-and-mod0: "fxmod0: (a) is not a fixnum".
|
||||
fx.mo:Expected error in mat fxdiv0-and-mod0: "fxmod0: undefined for 0".
|
||||
fx.mo:Expected error in mat fxdiv0-and-mod0: "fxmod0: undefined for 0".
|
||||
|
@ -5180,7 +5180,7 @@
|
|||
fx.mo:Expected error in mat fx+/carry: "fx+/carry: 2.0 is not a fixnum".
|
||||
fx.mo:Expected error in mat fx+/carry: "fx+/carry: 3.0 is not a fixnum".
|
||||
***************
|
||||
*** 8938,8947 ****
|
||||
*** 8946,8955 ****
|
||||
fx.mo:Expected error in mat fx+/carry: "fx+/carry: <-int> is not a fixnum".
|
||||
fx.mo:Expected error in mat fx+/carry: "fx+/carry: <-int> is not a fixnum".
|
||||
fx.mo:Expected error in mat fx+/carry: "fx+/carry: <-int> is not a fixnum".
|
||||
|
@ -5191,7 +5191,7 @@
|
|||
fx.mo:Expected error in mat fx-/carry: "fx-/carry: 1.0 is not a fixnum".
|
||||
fx.mo:Expected error in mat fx-/carry: "fx-/carry: 2.0 is not a fixnum".
|
||||
fx.mo:Expected error in mat fx-/carry: "fx-/carry: 3.0 is not a fixnum".
|
||||
--- 8938,8947 ----
|
||||
--- 8946,8955 ----
|
||||
fx.mo:Expected error in mat fx+/carry: "fx+/carry: <-int> is not a fixnum".
|
||||
fx.mo:Expected error in mat fx+/carry: "fx+/carry: <-int> is not a fixnum".
|
||||
fx.mo:Expected error in mat fx+/carry: "fx+/carry: <-int> is not a fixnum".
|
||||
|
@ -5203,7 +5203,7 @@
|
|||
fx.mo:Expected error in mat fx-/carry: "fx-/carry: 2.0 is not a fixnum".
|
||||
fx.mo:Expected error in mat fx-/carry: "fx-/carry: 3.0 is not a fixnum".
|
||||
***************
|
||||
*** 8957,8966 ****
|
||||
*** 8965,8974 ****
|
||||
fx.mo:Expected error in mat fx-/carry: "fx-/carry: <-int> is not a fixnum".
|
||||
fx.mo:Expected error in mat fx-/carry: "fx-/carry: <-int> is not a fixnum".
|
||||
fx.mo:Expected error in mat fx-/carry: "fx-/carry: <-int> is not a fixnum".
|
||||
|
@ -5214,7 +5214,7 @@
|
|||
fx.mo:Expected error in mat fx*/carry: "fx*/carry: 1.0 is not a fixnum".
|
||||
fx.mo:Expected error in mat fx*/carry: "fx*/carry: 2.0 is not a fixnum".
|
||||
fx.mo:Expected error in mat fx*/carry: "fx*/carry: 3.0 is not a fixnum".
|
||||
--- 8957,8966 ----
|
||||
--- 8965,8974 ----
|
||||
fx.mo:Expected error in mat fx-/carry: "fx-/carry: <-int> is not a fixnum".
|
||||
fx.mo:Expected error in mat fx-/carry: "fx-/carry: <-int> is not a fixnum".
|
||||
fx.mo:Expected error in mat fx-/carry: "fx-/carry: <-int> is not a fixnum".
|
||||
|
@ -5226,7 +5226,7 @@
|
|||
fx.mo:Expected error in mat fx*/carry: "fx*/carry: 2.0 is not a fixnum".
|
||||
fx.mo:Expected error in mat fx*/carry: "fx*/carry: 3.0 is not a fixnum".
|
||||
***************
|
||||
*** 8976,8986 ****
|
||||
*** 8984,8994 ****
|
||||
fx.mo:Expected error in mat fx*/carry: "fx*/carry: <-int> is not a fixnum".
|
||||
fx.mo:Expected error in mat fx*/carry: "fx*/carry: <-int> is not a fixnum".
|
||||
fx.mo:Expected error in mat fx*/carry: "fx*/carry: <-int> is not a fixnum".
|
||||
|
@ -5238,7 +5238,7 @@
|
|||
fx.mo:Expected error in mat fxrotate-bit-field: "fxrotate-bit-field: a is not a fixnum".
|
||||
fx.mo:Expected error in mat fxrotate-bit-field: "fxrotate-bit-field: invalid start index 0.0".
|
||||
fx.mo:Expected error in mat fxrotate-bit-field: "fxrotate-bit-field: invalid end index 2.0".
|
||||
--- 8976,8986 ----
|
||||
--- 8984,8994 ----
|
||||
fx.mo:Expected error in mat fx*/carry: "fx*/carry: <-int> is not a fixnum".
|
||||
fx.mo:Expected error in mat fx*/carry: "fx*/carry: <-int> is not a fixnum".
|
||||
fx.mo:Expected error in mat fx*/carry: "fx*/carry: <-int> is not a fixnum".
|
||||
|
@ -5251,7 +5251,7 @@
|
|||
fx.mo:Expected error in mat fxrotate-bit-field: "fxrotate-bit-field: invalid start index 0.0".
|
||||
fx.mo:Expected error in mat fxrotate-bit-field: "fxrotate-bit-field: invalid end index 2.0".
|
||||
***************
|
||||
*** 9003,9012 ****
|
||||
*** 9011,9020 ****
|
||||
fx.mo:Expected error in mat fxrotate-bit-field: "fxrotate-bit-field: invalid end index <int>".
|
||||
fx.mo:Expected error in mat fxrotate-bit-field: "fxrotate-bit-field: invalid end index <int>".
|
||||
fx.mo:Expected error in mat fxrotate-bit-field: "fxrotate-bit-field: count 1 is greater than difference between end index 5 and start index 5".
|
||||
|
@ -5262,7 +5262,7 @@
|
|||
fx.mo:Expected error in mat fxreverse-bit-field: "fxreverse-bit-field: a is not a fixnum".
|
||||
fx.mo:Expected error in mat fxreverse-bit-field: "fxreverse-bit-field: invalid start index 0.0".
|
||||
fx.mo:Expected error in mat fxreverse-bit-field: "fxreverse-bit-field: invalid end index 2.0".
|
||||
--- 9003,9012 ----
|
||||
--- 9011,9020 ----
|
||||
fx.mo:Expected error in mat fxrotate-bit-field: "fxrotate-bit-field: invalid end index <int>".
|
||||
fx.mo:Expected error in mat fxrotate-bit-field: "fxrotate-bit-field: invalid end index <int>".
|
||||
fx.mo:Expected error in mat fxrotate-bit-field: "fxrotate-bit-field: count 1 is greater than difference between end index 5 and start index 5".
|
||||
|
@ -5274,7 +5274,7 @@
|
|||
fx.mo:Expected error in mat fxreverse-bit-field: "fxreverse-bit-field: invalid start index 0.0".
|
||||
fx.mo:Expected error in mat fxreverse-bit-field: "fxreverse-bit-field: invalid end index 2.0".
|
||||
***************
|
||||
*** 9022,9039 ****
|
||||
*** 9030,9047 ****
|
||||
fx.mo:Expected error in mat fxreverse-bit-field: "fxreverse-bit-field: invalid end index <int>".
|
||||
fx.mo:Expected error in mat fxreverse-bit-field: "fxreverse-bit-field: invalid end index <-int>".
|
||||
fx.mo:Expected error in mat fxreverse-bit-field: "fxreverse-bit-field: start index 7 is greater than end index 5".
|
||||
|
@ -5293,7 +5293,7 @@
|
|||
fl.mo:Expected error in mat fl=: "fl=: (a) is not a flonum".
|
||||
fl.mo:Expected error in mat fl=: "fl=: a is not a flonum".
|
||||
fl.mo:Expected error in mat fl=: "fl=: a is not a flonum".
|
||||
--- 9022,9039 ----
|
||||
--- 9030,9047 ----
|
||||
fx.mo:Expected error in mat fxreverse-bit-field: "fxreverse-bit-field: invalid end index <int>".
|
||||
fx.mo:Expected error in mat fxreverse-bit-field: "fxreverse-bit-field: invalid end index <-int>".
|
||||
fx.mo:Expected error in mat fxreverse-bit-field: "fxreverse-bit-field: start index 7 is greater than end index 5".
|
||||
|
@ -5313,7 +5313,7 @@
|
|||
fl.mo:Expected error in mat fl=: "fl=: a is not a flonum".
|
||||
fl.mo:Expected error in mat fl=: "fl=: a is not a flonum".
|
||||
***************
|
||||
*** 9041,9047 ****
|
||||
*** 9049,9055 ****
|
||||
fl.mo:Expected error in mat fl=: "fl=: 3 is not a flonum".
|
||||
fl.mo:Expected error in mat fl=: "fl=: 7/2 is not a flonum".
|
||||
fl.mo:Expected error in mat fl=: "fl=: 7/2 is not a flonum".
|
||||
|
@ -5321,7 +5321,7 @@
|
|||
fl.mo:Expected error in mat fl<: "fl<: (a) is not a flonum".
|
||||
fl.mo:Expected error in mat fl<: "fl<: a is not a flonum".
|
||||
fl.mo:Expected error in mat fl<: "fl<: a is not a flonum".
|
||||
--- 9041,9047 ----
|
||||
--- 9049,9055 ----
|
||||
fl.mo:Expected error in mat fl=: "fl=: 3 is not a flonum".
|
||||
fl.mo:Expected error in mat fl=: "fl=: 7/2 is not a flonum".
|
||||
fl.mo:Expected error in mat fl=: "fl=: 7/2 is not a flonum".
|
||||
|
@ -5330,7 +5330,7 @@
|
|||
fl.mo:Expected error in mat fl<: "fl<: a is not a flonum".
|
||||
fl.mo:Expected error in mat fl<: "fl<: a is not a flonum".
|
||||
***************
|
||||
*** 9049,9055 ****
|
||||
*** 9057,9063 ****
|
||||
fl.mo:Expected error in mat fl<: "fl<: 3 is not a flonum".
|
||||
fl.mo:Expected error in mat fl<: "fl<: 7/2 is not a flonum".
|
||||
fl.mo:Expected error in mat fl<: "fl<: 7/2 is not a flonum".
|
||||
|
@ -5338,7 +5338,7 @@
|
|||
fl.mo:Expected error in mat fl>: "fl>: (a) is not a flonum".
|
||||
fl.mo:Expected error in mat fl>: "fl>: a is not a flonum".
|
||||
fl.mo:Expected error in mat fl>: "fl>: a is not a flonum".
|
||||
--- 9049,9055 ----
|
||||
--- 9057,9063 ----
|
||||
fl.mo:Expected error in mat fl<: "fl<: 3 is not a flonum".
|
||||
fl.mo:Expected error in mat fl<: "fl<: 7/2 is not a flonum".
|
||||
fl.mo:Expected error in mat fl<: "fl<: 7/2 is not a flonum".
|
||||
|
@ -5347,7 +5347,7 @@
|
|||
fl.mo:Expected error in mat fl>: "fl>: a is not a flonum".
|
||||
fl.mo:Expected error in mat fl>: "fl>: a is not a flonum".
|
||||
***************
|
||||
*** 9057,9063 ****
|
||||
*** 9065,9071 ****
|
||||
fl.mo:Expected error in mat fl>: "fl>: 3 is not a flonum".
|
||||
fl.mo:Expected error in mat fl>: "fl>: 7/2 is not a flonum".
|
||||
fl.mo:Expected error in mat fl>: "fl>: 7/2 is not a flonum".
|
||||
|
@ -5355,7 +5355,7 @@
|
|||
fl.mo:Expected error in mat fl<=: "fl<=: (a) is not a flonum".
|
||||
fl.mo:Expected error in mat fl<=: "fl<=: a is not a flonum".
|
||||
fl.mo:Expected error in mat fl<=: "fl<=: a is not a flonum".
|
||||
--- 9057,9063 ----
|
||||
--- 9065,9071 ----
|
||||
fl.mo:Expected error in mat fl>: "fl>: 3 is not a flonum".
|
||||
fl.mo:Expected error in mat fl>: "fl>: 7/2 is not a flonum".
|
||||
fl.mo:Expected error in mat fl>: "fl>: 7/2 is not a flonum".
|
||||
|
@ -5364,7 +5364,7 @@
|
|||
fl.mo:Expected error in mat fl<=: "fl<=: a is not a flonum".
|
||||
fl.mo:Expected error in mat fl<=: "fl<=: a is not a flonum".
|
||||
***************
|
||||
*** 9065,9071 ****
|
||||
*** 9073,9079 ****
|
||||
fl.mo:Expected error in mat fl<=: "fl<=: 3 is not a flonum".
|
||||
fl.mo:Expected error in mat fl<=: "fl<=: 7/2 is not a flonum".
|
||||
fl.mo:Expected error in mat fl<=: "fl<=: 7/2 is not a flonum".
|
||||
|
@ -5372,7 +5372,7 @@
|
|||
fl.mo:Expected error in mat fl>=: "fl>=: (a) is not a flonum".
|
||||
fl.mo:Expected error in mat fl>=: "fl>=: a is not a flonum".
|
||||
fl.mo:Expected error in mat fl>=: "fl>=: a is not a flonum".
|
||||
--- 9065,9071 ----
|
||||
--- 9073,9079 ----
|
||||
fl.mo:Expected error in mat fl<=: "fl<=: 3 is not a flonum".
|
||||
fl.mo:Expected error in mat fl<=: "fl<=: 7/2 is not a flonum".
|
||||
fl.mo:Expected error in mat fl<=: "fl<=: 7/2 is not a flonum".
|
||||
|
@ -5381,7 +5381,7 @@
|
|||
fl.mo:Expected error in mat fl>=: "fl>=: a is not a flonum".
|
||||
fl.mo:Expected error in mat fl>=: "fl>=: a is not a flonum".
|
||||
***************
|
||||
*** 9073,9112 ****
|
||||
*** 9081,9120 ****
|
||||
fl.mo:Expected error in mat fl>=: "fl>=: 3 is not a flonum".
|
||||
fl.mo:Expected error in mat fl>=: "fl>=: 7/2 is not a flonum".
|
||||
fl.mo:Expected error in mat fl>=: "fl>=: 7/2 is not a flonum".
|
||||
|
@ -5422,7 +5422,7 @@
|
|||
fl.mo:Expected error in mat fl>=?: "fl>=?: a is not a flonum".
|
||||
fl.mo:Expected error in mat fl>=?: "fl>=?: a is not a flonum".
|
||||
fl.mo:Expected error in mat fl>=?: "fl>=?: 3 is not a flonum".
|
||||
--- 9073,9112 ----
|
||||
--- 9081,9120 ----
|
||||
fl.mo:Expected error in mat fl>=: "fl>=: 3 is not a flonum".
|
||||
fl.mo:Expected error in mat fl>=: "fl>=: 7/2 is not a flonum".
|
||||
fl.mo:Expected error in mat fl>=: "fl>=: 7/2 is not a flonum".
|
||||
|
@ -5464,7 +5464,7 @@
|
|||
fl.mo:Expected error in mat fl>=?: "fl>=?: a is not a flonum".
|
||||
fl.mo:Expected error in mat fl>=?: "fl>=?: 3 is not a flonum".
|
||||
***************
|
||||
*** 9116,9122 ****
|
||||
*** 9124,9130 ****
|
||||
fl.mo:Expected error in mat fl+: "fl+: (a . b) is not a flonum".
|
||||
fl.mo:Expected error in mat fl+: "fl+: 1 is not a flonum".
|
||||
fl.mo:Expected error in mat fl+: "fl+: 2/3 is not a flonum".
|
||||
|
@ -5472,7 +5472,7 @@
|
|||
fl.mo:Expected error in mat fl-: "fl-: (a . b) is not a flonum".
|
||||
fl.mo:Expected error in mat fl-: "fl-: 1 is not a flonum".
|
||||
fl.mo:Expected error in mat fl-: "fl-: a is not a flonum".
|
||||
--- 9116,9122 ----
|
||||
--- 9124,9130 ----
|
||||
fl.mo:Expected error in mat fl+: "fl+: (a . b) is not a flonum".
|
||||
fl.mo:Expected error in mat fl+: "fl+: 1 is not a flonum".
|
||||
fl.mo:Expected error in mat fl+: "fl+: 2/3 is not a flonum".
|
||||
|
@ -5481,7 +5481,7 @@
|
|||
fl.mo:Expected error in mat fl-: "fl-: 1 is not a flonum".
|
||||
fl.mo:Expected error in mat fl-: "fl-: a is not a flonum".
|
||||
***************
|
||||
*** 9126,9208 ****
|
||||
*** 9134,9216 ****
|
||||
fl.mo:Expected error in mat fl*: "fl*: (a . b) is not a flonum".
|
||||
fl.mo:Expected error in mat fl*: "fl*: 1 is not a flonum".
|
||||
fl.mo:Expected error in mat fl*: "fl*: 2/3 is not a flonum".
|
||||
|
@ -5565,7 +5565,7 @@
|
|||
fl.mo:Expected error in mat flround: "flround: a is not a flonum".
|
||||
fl.mo:Expected error in mat flround: "flround: 2.0+1.0i is not a flonum".
|
||||
fl.mo:Expected error in mat flround: "flround: 2+1i is not a flonum".
|
||||
--- 9126,9208 ----
|
||||
--- 9134,9216 ----
|
||||
fl.mo:Expected error in mat fl*: "fl*: (a . b) is not a flonum".
|
||||
fl.mo:Expected error in mat fl*: "fl*: 1 is not a flonum".
|
||||
fl.mo:Expected error in mat fl*: "fl*: 2/3 is not a flonum".
|
||||
|
@ -5650,7 +5650,7 @@
|
|||
fl.mo:Expected error in mat flround: "flround: 2.0+1.0i is not a flonum".
|
||||
fl.mo:Expected error in mat flround: "flround: 2+1i is not a flonum".
|
||||
***************
|
||||
*** 9222,9257 ****
|
||||
*** 9230,9265 ****
|
||||
fl.mo:Expected error in mat flinfinite?: "flinfinite?: 3 is not a flonum".
|
||||
fl.mo:Expected error in mat flinfinite?: "flinfinite?: 3/4 is not a flonum".
|
||||
fl.mo:Expected error in mat flinfinite?: "flinfinite?: hi is not a flonum".
|
||||
|
@ -5687,7 +5687,7 @@
|
|||
fl.mo:Expected error in mat fleven?: "fleven?: a is not a flonum".
|
||||
fl.mo:Expected error in mat fleven?: "fleven?: 3 is not a flonum".
|
||||
fl.mo:Expected error in mat fleven?: "fleven?: 3.2 is not an integer".
|
||||
--- 9222,9257 ----
|
||||
--- 9230,9265 ----
|
||||
fl.mo:Expected error in mat flinfinite?: "flinfinite?: 3 is not a flonum".
|
||||
fl.mo:Expected error in mat flinfinite?: "flinfinite?: 3/4 is not a flonum".
|
||||
fl.mo:Expected error in mat flinfinite?: "flinfinite?: hi is not a flonum".
|
||||
|
@ -5725,7 +5725,7 @@
|
|||
fl.mo:Expected error in mat fleven?: "fleven?: 3 is not a flonum".
|
||||
fl.mo:Expected error in mat fleven?: "fleven?: 3.2 is not an integer".
|
||||
***************
|
||||
*** 9259,9266 ****
|
||||
*** 9267,9274 ****
|
||||
fl.mo:Expected error in mat fleven?: "fleven?: 1+1i is not a flonum".
|
||||
fl.mo:Expected error in mat fleven?: "fleven?: +inf.0 is not an integer".
|
||||
fl.mo:Expected error in mat fleven?: "fleven?: +nan.0 is not an integer".
|
||||
|
@ -5734,7 +5734,7 @@
|
|||
fl.mo:Expected error in mat flodd?: "flodd?: a is not a flonum".
|
||||
fl.mo:Expected error in mat flodd?: "flodd?: 3 is not a flonum".
|
||||
fl.mo:Expected error in mat flodd?: "flodd?: 3.2 is not an integer".
|
||||
--- 9259,9266 ----
|
||||
--- 9267,9274 ----
|
||||
fl.mo:Expected error in mat fleven?: "fleven?: 1+1i is not a flonum".
|
||||
fl.mo:Expected error in mat fleven?: "fleven?: +inf.0 is not an integer".
|
||||
fl.mo:Expected error in mat fleven?: "fleven?: +nan.0 is not an integer".
|
||||
|
@ -5744,7 +5744,7 @@
|
|||
fl.mo:Expected error in mat flodd?: "flodd?: 3 is not a flonum".
|
||||
fl.mo:Expected error in mat flodd?: "flodd?: 3.2 is not an integer".
|
||||
***************
|
||||
*** 9268,9274 ****
|
||||
*** 9276,9282 ****
|
||||
fl.mo:Expected error in mat flodd?: "flodd?: 3+1i is not a flonum".
|
||||
fl.mo:Expected error in mat flodd?: "flodd?: +inf.0 is not an integer".
|
||||
fl.mo:Expected error in mat flodd?: "flodd?: +nan.0 is not an integer".
|
||||
|
@ -5752,7 +5752,7 @@
|
|||
fl.mo:Expected error in mat flmin: "flmin: a is not a flonum".
|
||||
fl.mo:Expected error in mat flmin: "flmin: a is not a flonum".
|
||||
fl.mo:Expected error in mat flmin: "flmin: a is not a flonum".
|
||||
--- 9268,9274 ----
|
||||
--- 9276,9282 ----
|
||||
fl.mo:Expected error in mat flodd?: "flodd?: 3+1i is not a flonum".
|
||||
fl.mo:Expected error in mat flodd?: "flodd?: +inf.0 is not an integer".
|
||||
fl.mo:Expected error in mat flodd?: "flodd?: +nan.0 is not an integer".
|
||||
|
@ -5761,7 +5761,7 @@
|
|||
fl.mo:Expected error in mat flmin: "flmin: a is not a flonum".
|
||||
fl.mo:Expected error in mat flmin: "flmin: a is not a flonum".
|
||||
***************
|
||||
*** 9276,9282 ****
|
||||
*** 9284,9290 ****
|
||||
fl.mo:Expected error in mat flmin: "flmin: a is not a flonum".
|
||||
fl.mo:Expected error in mat flmin: "flmin: 0.0+1.0i is not a flonum".
|
||||
fl.mo:Expected error in mat flmin: "flmin: 0+1i is not a flonum".
|
||||
|
@ -5769,7 +5769,7 @@
|
|||
fl.mo:Expected error in mat flmax: "flmax: a is not a flonum".
|
||||
fl.mo:Expected error in mat flmax: "flmax: a is not a flonum".
|
||||
fl.mo:Expected error in mat flmax: "flmax: 3 is not a flonum".
|
||||
--- 9276,9282 ----
|
||||
--- 9284,9290 ----
|
||||
fl.mo:Expected error in mat flmin: "flmin: a is not a flonum".
|
||||
fl.mo:Expected error in mat flmin: "flmin: 0.0+1.0i is not a flonum".
|
||||
fl.mo:Expected error in mat flmin: "flmin: 0+1i is not a flonum".
|
||||
|
@ -5778,7 +5778,7 @@
|
|||
fl.mo:Expected error in mat flmax: "flmax: a is not a flonum".
|
||||
fl.mo:Expected error in mat flmax: "flmax: 3 is not a flonum".
|
||||
***************
|
||||
*** 9284,9297 ****
|
||||
*** 9292,9305 ****
|
||||
fl.mo:Expected error in mat flmax: "flmax: a is not a flonum".
|
||||
fl.mo:Expected error in mat flmax: "flmax: 0.0+1.0i is not a flonum".
|
||||
fl.mo:Expected error in mat flmax: "flmax: 0+1i is not a flonum".
|
||||
|
@ -5793,7 +5793,7 @@
|
|||
fl.mo:Expected error in mat fldenominator: "fldenominator: a is not a flonum".
|
||||
fl.mo:Expected error in mat fldenominator: "fldenominator: 3 is not a flonum".
|
||||
fl.mo:Expected error in mat fldenominator: "fldenominator: 0+1i is not a flonum".
|
||||
--- 9284,9297 ----
|
||||
--- 9292,9305 ----
|
||||
fl.mo:Expected error in mat flmax: "flmax: a is not a flonum".
|
||||
fl.mo:Expected error in mat flmax: "flmax: 0.0+1.0i is not a flonum".
|
||||
fl.mo:Expected error in mat flmax: "flmax: 0+1i is not a flonum".
|
||||
|
@ -5809,7 +5809,7 @@
|
|||
fl.mo:Expected error in mat fldenominator: "fldenominator: 3 is not a flonum".
|
||||
fl.mo:Expected error in mat fldenominator: "fldenominator: 0+1i is not a flonum".
|
||||
***************
|
||||
*** 9337,9343 ****
|
||||
*** 9345,9351 ****
|
||||
cfl.mo:Expected error in mat cfl-: "cfl-: a is not a cflonum".
|
||||
cfl.mo:Expected error in mat cfl-: "cfl-: a is not a cflonum".
|
||||
cfl.mo:Expected error in mat cfl-: "cfl-: a is not a cflonum".
|
||||
|
@ -5817,7 +5817,7 @@
|
|||
cfl.mo:Expected error in mat cfl-: "cfl-: a is not a cflonum".
|
||||
cfl.mo:Expected error in mat cfl-: "cfl-: a is not a cflonum".
|
||||
cfl.mo:Expected error in mat cfl-: "cfl-: a is not a cflonum".
|
||||
--- 9337,9343 ----
|
||||
--- 9345,9351 ----
|
||||
cfl.mo:Expected error in mat cfl-: "cfl-: a is not a cflonum".
|
||||
cfl.mo:Expected error in mat cfl-: "cfl-: a is not a cflonum".
|
||||
cfl.mo:Expected error in mat cfl-: "cfl-: a is not a cflonum".
|
||||
|
@ -5826,7 +5826,7 @@
|
|||
cfl.mo:Expected error in mat cfl-: "cfl-: a is not a cflonum".
|
||||
cfl.mo:Expected error in mat cfl-: "cfl-: a is not a cflonum".
|
||||
***************
|
||||
*** 9347,9360 ****
|
||||
*** 9355,9368 ****
|
||||
cfl.mo:Expected error in mat cfl/: "cfl/: a is not a cflonum".
|
||||
cfl.mo:Expected error in mat cfl/: "cfl/: a is not a cflonum".
|
||||
cfl.mo:Expected error in mat cfl/: "cfl/: a is not a cflonum".
|
||||
|
@ -5841,7 +5841,7 @@
|
|||
foreign.mo:Expected error in mat load-shared-object: "load-shared-object: invalid path 3".
|
||||
foreign.mo:Expected error in mat foreign-procedure: "foreign-procedure: no entry for "i do not exist"".
|
||||
foreign.mo:Expected error in mat foreign-procedure: "foreign-procedure: no entry for "i do not exist"".
|
||||
--- 9347,9360 ----
|
||||
--- 9355,9368 ----
|
||||
cfl.mo:Expected error in mat cfl/: "cfl/: a is not a cflonum".
|
||||
cfl.mo:Expected error in mat cfl/: "cfl/: a is not a cflonum".
|
||||
cfl.mo:Expected error in mat cfl/: "cfl/: a is not a cflonum".
|
||||
|
@ -5857,7 +5857,7 @@
|
|||
foreign.mo:Expected error in mat foreign-procedure: "foreign-procedure: no entry for "i do not exist"".
|
||||
foreign.mo:Expected error in mat foreign-procedure: "foreign-procedure: no entry for "i do not exist"".
|
||||
***************
|
||||
*** 9389,9396 ****
|
||||
*** 9397,9404 ****
|
||||
foreign.mo:Expected error in mat foreign-procedure: "id: invalid foreign-procedure argument foo".
|
||||
foreign.mo:Expected error in mat foreign-procedure: "foreign-procedure: invalid foreign procedure handle abcde".
|
||||
foreign.mo:Expected error in mat foreign-procedure: "float_id: invalid foreign-procedure argument 0".
|
||||
|
@ -5866,7 +5866,7 @@
|
|||
foreign.mo:Expected error in mat foreign-sizeof: "foreign-sizeof: invalid foreign type specifier i-am-not-a-type".
|
||||
foreign.mo:Expected error in mat foreign-sizeof: "foreign-sizeof: invalid foreign type specifier 1".
|
||||
foreign.mo:Expected error in mat foreign-bytevectors: "u8*->u8*: invalid foreign-procedure argument "hello"".
|
||||
--- 9389,9396 ----
|
||||
--- 9397,9404 ----
|
||||
foreign.mo:Expected error in mat foreign-procedure: "id: invalid foreign-procedure argument foo".
|
||||
foreign.mo:Expected error in mat foreign-procedure: "foreign-procedure: invalid foreign procedure handle abcde".
|
||||
foreign.mo:Expected error in mat foreign-procedure: "float_id: invalid foreign-procedure argument 0".
|
||||
|
@ -5876,7 +5876,7 @@
|
|||
foreign.mo:Expected error in mat foreign-sizeof: "foreign-sizeof: invalid foreign type specifier 1".
|
||||
foreign.mo:Expected error in mat foreign-bytevectors: "u8*->u8*: invalid foreign-procedure argument "hello"".
|
||||
***************
|
||||
*** 9888,9900 ****
|
||||
*** 9896,9908 ****
|
||||
unix.mo:Expected error in mat file-operations: "file-access-time: failed for "testlink": no such file or directory".
|
||||
unix.mo:Expected error in mat file-operations: "file-change-time: failed for "testlink": no such file or directory".
|
||||
unix.mo:Expected error in mat file-operations: "file-modification-time: failed for "testlink": no such file or directory".
|
||||
|
@ -5890,7 +5890,7 @@
|
|||
windows.mo:Expected error in mat registry: "get-registry: pooh is not a string".
|
||||
windows.mo:Expected error in mat registry: "put-registry!: 3 is not a string".
|
||||
windows.mo:Expected error in mat registry: "put-registry!: 3 is not a string".
|
||||
--- 9888,9900 ----
|
||||
--- 9896,9908 ----
|
||||
unix.mo:Expected error in mat file-operations: "file-access-time: failed for "testlink": no such file or directory".
|
||||
unix.mo:Expected error in mat file-operations: "file-change-time: failed for "testlink": no such file or directory".
|
||||
unix.mo:Expected error in mat file-operations: "file-modification-time: failed for "testlink": no such file or directory".
|
||||
|
@ -5905,7 +5905,7 @@
|
|||
windows.mo:Expected error in mat registry: "put-registry!: 3 is not a string".
|
||||
windows.mo:Expected error in mat registry: "put-registry!: 3 is not a string".
|
||||
***************
|
||||
*** 9922,9993 ****
|
||||
*** 9930,10001 ****
|
||||
ieee.mo:Expected error in mat flonum->fixnum: "flonum->fixnum: result for -inf.0 would be outside of fixnum range".
|
||||
ieee.mo:Expected error in mat flonum->fixnum: "flonum->fixnum: result for +nan.0 would be outside of fixnum range".
|
||||
ieee.mo:Expected error in mat fllp: "fllp: 3 is not a flonum".
|
||||
|
@ -5978,7 +5978,7 @@
|
|||
date.mo:Expected error in mat time: "time>=?: 3 is not a time record".
|
||||
date.mo:Expected error in mat time: "time>=?: #<procedure car> is not a time record".
|
||||
date.mo:Expected error in mat time: "time>=?: types of <time> and <time> differ".
|
||||
--- 9922,9993 ----
|
||||
--- 9930,10001 ----
|
||||
ieee.mo:Expected error in mat flonum->fixnum: "flonum->fixnum: result for -inf.0 would be outside of fixnum range".
|
||||
ieee.mo:Expected error in mat flonum->fixnum: "flonum->fixnum: result for +nan.0 would be outside of fixnum range".
|
||||
ieee.mo:Expected error in mat fllp: "fllp: 3 is not a flonum".
|
||||
|
@ -6052,7 +6052,7 @@
|
|||
date.mo:Expected error in mat time: "time>=?: #<procedure car> is not a time record".
|
||||
date.mo:Expected error in mat time: "time>=?: types of <time> and <time> differ".
|
||||
***************
|
||||
*** 9995,10008 ****
|
||||
*** 10003,10016 ****
|
||||
date.mo:Expected error in mat time: "add-duration: <time> does not have type time-duration".
|
||||
date.mo:Expected error in mat time: "subtract-duration: <time> does not have type time-duration".
|
||||
date.mo:Expected error in mat time: "copy-time: <date> is not a time record".
|
||||
|
@ -6067,7 +6067,7 @@
|
|||
date.mo:Expected error in mat date: "make-date: invalid nanosecond -1".
|
||||
date.mo:Expected error in mat date: "make-date: invalid nanosecond <int>".
|
||||
date.mo:Expected error in mat date: "make-date: invalid nanosecond zero".
|
||||
--- 9995,10008 ----
|
||||
--- 10003,10016 ----
|
||||
date.mo:Expected error in mat time: "add-duration: <time> does not have type time-duration".
|
||||
date.mo:Expected error in mat time: "subtract-duration: <time> does not have type time-duration".
|
||||
date.mo:Expected error in mat time: "copy-time: <date> is not a time record".
|
||||
|
@ -6083,7 +6083,7 @@
|
|||
date.mo:Expected error in mat date: "make-date: invalid nanosecond <int>".
|
||||
date.mo:Expected error in mat date: "make-date: invalid nanosecond zero".
|
||||
***************
|
||||
*** 10028,10088 ****
|
||||
*** 10036,10096 ****
|
||||
date.mo:Expected error in mat date: "make-date: invalid time-zone offset 90000".
|
||||
date.mo:Expected error in mat date: "make-date: invalid time-zone offset est".
|
||||
date.mo:Expected error in mat date: "make-date: invalid time-zone offset "est"".
|
||||
|
@ -6145,7 +6145,7 @@
|
|||
date.mo:Expected error in mat date: "current-date: invalid time-zone offset -90000".
|
||||
date.mo:Expected error in mat date: "current-date: invalid time-zone offset 90000".
|
||||
date.mo:Expected error in mat conversions/sleep: "date->time-utc: <time> is not a date record".
|
||||
--- 10028,10088 ----
|
||||
--- 10036,10096 ----
|
||||
date.mo:Expected error in mat date: "make-date: invalid time-zone offset 90000".
|
||||
date.mo:Expected error in mat date: "make-date: invalid time-zone offset est".
|
||||
date.mo:Expected error in mat date: "make-date: invalid time-zone offset "est"".
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
*** errors-compile-0-f-f-f 2019-02-11 17:18:14.000000000 -0800
|
||||
--- errors-interpret-0-f-f-f 2019-02-11 16:56:11.000000000 -0800
|
||||
*** errors-compile-0-f-f-f 2019-03-15 12:05:55.397368315 -0400
|
||||
--- errors-interpret-0-f-f-f 2019-03-15 11:43:02.326650777 -0400
|
||||
***************
|
||||
*** 1,7 ****
|
||||
primvars.mo:Expected error in mat make-parameter: "make-parameter: 2 is not a procedure".
|
||||
|
@ -232,7 +232,7 @@
|
|||
7.mo:Expected error in mat eval: "compile: 7 is not an environment".
|
||||
7.mo:Expected error in mat expand: "sc-expand: 7 is not an environment".
|
||||
***************
|
||||
*** 7360,7366 ****
|
||||
*** 7361,7367 ****
|
||||
record.mo:Expected error in mat record25: "invalid value #\9 for foreign type uptr".
|
||||
record.mo:Expected error in mat record25: "invalid value 10 for foreign type float".
|
||||
record.mo:Expected error in mat record25: "invalid value 11.0+0.0i for foreign type double".
|
||||
|
@ -240,7 +240,7 @@
|
|||
record.mo:Expected error in mat record25: "invalid value 12.0 for foreign type long-long".
|
||||
record.mo:Expected error in mat record25: "invalid value 13.0 for foreign type unsigned-long-long".
|
||||
record.mo:Expected error in mat record25: "invalid value 3.0 for foreign type int".
|
||||
--- 7360,7366 ----
|
||||
--- 7361,7367 ----
|
||||
record.mo:Expected error in mat record25: "invalid value #\9 for foreign type uptr".
|
||||
record.mo:Expected error in mat record25: "invalid value 10 for foreign type float".
|
||||
record.mo:Expected error in mat record25: "invalid value 11.0+0.0i for foreign type double".
|
||||
|
@ -249,7 +249,7 @@
|
|||
record.mo:Expected error in mat record25: "invalid value 13.0 for foreign type unsigned-long-long".
|
||||
record.mo:Expected error in mat record25: "invalid value 3.0 for foreign type int".
|
||||
***************
|
||||
*** 8595,8607 ****
|
||||
*** 8603,8615 ****
|
||||
fx.mo:Expected error in mat r6rs:fx-: "fx-: #f is not a fixnum".
|
||||
fx.mo:Expected error in mat r6rs:fx-: "fx-: #f is not a fixnum".
|
||||
fx.mo:Expected error in mat fx*: "fx*: (a . b) is not a fixnum".
|
||||
|
@ -263,7 +263,7 @@
|
|||
fx.mo:Expected error in mat r6rs:fx*: "fx*: <int> is not a fixnum".
|
||||
fx.mo:Expected error in mat r6rs:fx*: "fx*: <-int> is not a fixnum".
|
||||
fx.mo:Expected error in mat r6rs:fx*: "fx*: #f is not a fixnum".
|
||||
--- 8595,8607 ----
|
||||
--- 8603,8615 ----
|
||||
fx.mo:Expected error in mat r6rs:fx-: "fx-: #f is not a fixnum".
|
||||
fx.mo:Expected error in mat r6rs:fx-: "fx-: #f is not a fixnum".
|
||||
fx.mo:Expected error in mat fx*: "fx*: (a . b) is not a fixnum".
|
||||
|
@ -278,7 +278,7 @@
|
|||
fx.mo:Expected error in mat r6rs:fx*: "fx*: <-int> is not a fixnum".
|
||||
fx.mo:Expected error in mat r6rs:fx*: "fx*: #f is not a fixnum".
|
||||
***************
|
||||
*** 9362,9386 ****
|
||||
*** 9370,9394 ****
|
||||
foreign.mo:Expected error in mat foreign-procedure: "foreign-procedure: invalid foreign procedure handle foo".
|
||||
foreign.mo:Expected error in mat foreign-procedure: "foreign-procedure: invalid foreign procedure handle foo".
|
||||
foreign.mo:Expected error in mat foreign-procedure: "foreign-procedure: invalid foreign procedure handle foo".
|
||||
|
@ -304,7 +304,7 @@
|
|||
foreign.mo:Expected error in mat foreign-procedure: "invalid foreign-procedure argument type specifier booleen".
|
||||
foreign.mo:Expected error in mat foreign-procedure: "invalid foreign-procedure argument type specifier integer-34".
|
||||
foreign.mo:Expected error in mat foreign-procedure: "invalid foreign-procedure result type specifier chare".
|
||||
--- 9362,9386 ----
|
||||
--- 9370,9394 ----
|
||||
foreign.mo:Expected error in mat foreign-procedure: "foreign-procedure: invalid foreign procedure handle foo".
|
||||
foreign.mo:Expected error in mat foreign-procedure: "foreign-procedure: invalid foreign procedure handle foo".
|
||||
foreign.mo:Expected error in mat foreign-procedure: "foreign-procedure: invalid foreign procedure handle foo".
|
||||
|
@ -331,7 +331,7 @@
|
|||
foreign.mo:Expected error in mat foreign-procedure: "invalid foreign-procedure argument type specifier integer-34".
|
||||
foreign.mo:Expected error in mat foreign-procedure: "invalid foreign-procedure result type specifier chare".
|
||||
***************
|
||||
*** 9393,9424 ****
|
||||
*** 9401,9432 ****
|
||||
foreign.mo:Expected error in mat foreign-sizeof: "incorrect argument count in call (foreign-sizeof (quote int) (quote int))".
|
||||
foreign.mo:Expected error in mat foreign-sizeof: "foreign-sizeof: invalid foreign type specifier i-am-not-a-type".
|
||||
foreign.mo:Expected error in mat foreign-sizeof: "foreign-sizeof: invalid foreign type specifier 1".
|
||||
|
@ -364,7 +364,7 @@
|
|||
foreign.mo:Expected error in mat foreign-strings: "foreign-callable: invalid return value ("ello" 4) from #<procedure>".
|
||||
foreign.mo:Expected error in mat foreign-strings: "foreign-callable: invalid return value ("ello" 4) from #<procedure>".
|
||||
foreign.mo:Expected error in mat foreign-strings: "foreign-callable: invalid return value ("ello" 4) from #<procedure>".
|
||||
--- 9393,9424 ----
|
||||
--- 9401,9432 ----
|
||||
foreign.mo:Expected error in mat foreign-sizeof: "incorrect argument count in call (foreign-sizeof (quote int) (quote int))".
|
||||
foreign.mo:Expected error in mat foreign-sizeof: "foreign-sizeof: invalid foreign type specifier i-am-not-a-type".
|
||||
foreign.mo:Expected error in mat foreign-sizeof: "foreign-sizeof: invalid foreign type specifier 1".
|
||||
|
@ -398,7 +398,7 @@
|
|||
foreign.mo:Expected error in mat foreign-strings: "foreign-callable: invalid return value ("ello" 4) from #<procedure>".
|
||||
foreign.mo:Expected error in mat foreign-strings: "foreign-callable: invalid return value ("ello" 4) from #<procedure>".
|
||||
***************
|
||||
*** 9426,9451 ****
|
||||
*** 9434,9459 ****
|
||||
foreign.mo:Expected error in mat foreign-strings: "foreign-callable: invalid return value ("ello" 4) from #<procedure>".
|
||||
foreign.mo:Expected error in mat foreign-strings: "foreign-callable: invalid return value ("ello" 4) from #<procedure>".
|
||||
foreign.mo:Expected error in mat foreign-strings: "foreign-callable: invalid return value ("ello" 4) from #<procedure>".
|
||||
|
@ -425,7 +425,7 @@
|
|||
foreign.mo:Expected error in mat foreign-fixed-types: "foreign-callable: invalid return value (- x 7) from #<procedure>".
|
||||
foreign.mo:Expected error in mat foreign-fixed-types: "foreign-callable: invalid return value (- x 7) from #<procedure>".
|
||||
foreign.mo:Expected error in mat foreign-fixed-types: "foreign-callable: invalid return value (- x 7) from #<procedure>".
|
||||
--- 9426,9451 ----
|
||||
--- 9434,9459 ----
|
||||
foreign.mo:Expected error in mat foreign-strings: "foreign-callable: invalid return value ("ello" 4) from #<procedure>".
|
||||
foreign.mo:Expected error in mat foreign-strings: "foreign-callable: invalid return value ("ello" 4) from #<procedure>".
|
||||
foreign.mo:Expected error in mat foreign-strings: "foreign-callable: invalid return value ("ello" 4) from #<procedure>".
|
||||
|
@ -453,7 +453,7 @@
|
|||
foreign.mo:Expected error in mat foreign-fixed-types: "foreign-callable: invalid return value (- x 7) from #<procedure>".
|
||||
foreign.mo:Expected error in mat foreign-fixed-types: "foreign-callable: invalid return value (- x 7) from #<procedure>".
|
||||
***************
|
||||
*** 9456,9490 ****
|
||||
*** 9464,9498 ****
|
||||
foreign.mo:Expected error in mat foreign-fixed-types: "foreign-callable: invalid return value (- x 7) from #<procedure>".
|
||||
foreign.mo:Expected error in mat foreign-fixed-types: "foreign-callable: invalid return value (- x 7) from #<procedure>".
|
||||
foreign.mo:Expected error in mat foreign-fixed-types: "foreign-callable: invalid return value (- x 7) from #<procedure>".
|
||||
|
@ -489,7 +489,7 @@
|
|||
foreign.mo:Expected error in mat foreign-C-types: "foreign-callable: invalid return value (73 74) from #<procedure>".
|
||||
foreign.mo:Expected error in mat foreign-C-types: "foreign-callable: invalid return value (73 74) from #<procedure>".
|
||||
foreign.mo:Expected error in mat foreign-C-types: "foreign-callable: invalid return value (73 74) from #<procedure>".
|
||||
--- 9456,9490 ----
|
||||
--- 9464,9498 ----
|
||||
foreign.mo:Expected error in mat foreign-fixed-types: "foreign-callable: invalid return value (- x 7) from #<procedure>".
|
||||
foreign.mo:Expected error in mat foreign-fixed-types: "foreign-callable: invalid return value (- x 7) from #<procedure>".
|
||||
foreign.mo:Expected error in mat foreign-fixed-types: "foreign-callable: invalid return value (- x 7) from #<procedure>".
|
||||
|
@ -526,7 +526,7 @@
|
|||
foreign.mo:Expected error in mat foreign-C-types: "foreign-callable: invalid return value (73 74) from #<procedure>".
|
||||
foreign.mo:Expected error in mat foreign-C-types: "foreign-callable: invalid return value (73 74) from #<procedure>".
|
||||
***************
|
||||
*** 10091,10100 ****
|
||||
*** 10099,10108 ****
|
||||
exceptions.mo:Expected error in mat assert: "failed assertion (memq (quote b) (quote (1 2 a 3 4)))".
|
||||
exceptions.mo:Expected error in mat assert: "failed assertion (q ...)".
|
||||
exceptions.mo:Expected error in mat assert: "failed assertion (andmap symbol? (syntax (x ...)))".
|
||||
|
@ -537,7 +537,7 @@
|
|||
oop.mo:Expected error in mat oop: "m1: not applicable to 17".
|
||||
oop.mo:Expected error in mat oop: "variable <a>-x1 is not bound".
|
||||
oop.mo:Expected error in mat oop: "variable <a>-x1-set! is not bound".
|
||||
--- 10091,10100 ----
|
||||
--- 10099,10108 ----
|
||||
exceptions.mo:Expected error in mat assert: "failed assertion (memq (quote b) (quote (1 2 a 3 4)))".
|
||||
exceptions.mo:Expected error in mat assert: "failed assertion (q ...)".
|
||||
exceptions.mo:Expected error in mat assert: "failed assertion (andmap symbol? (syntax (x ...)))".
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
*** errors-compile-0-f-t-f 2019-02-11 16:37:31.000000000 -0800
|
||||
--- errors-interpret-0-f-t-f 2019-02-11 17:05:28.000000000 -0800
|
||||
*** errors-compile-0-f-t-f 2019-03-15 11:24:12.070638664 -0400
|
||||
--- errors-interpret-0-f-t-f 2019-03-15 11:52:25.024678729 -0400
|
||||
***************
|
||||
*** 1,7 ****
|
||||
primvars.mo:Expected error in mat make-parameter: "make-parameter: 2 is not a procedure".
|
||||
|
@ -205,7 +205,7 @@
|
|||
7.mo:Expected error in mat eval: "compile: 7 is not an environment".
|
||||
7.mo:Expected error in mat expand: "sc-expand: 7 is not an environment".
|
||||
***************
|
||||
*** 7169,7176 ****
|
||||
*** 7170,7177 ****
|
||||
7.mo:Expected error in mat bytes-allocated: "bytes-allocated: invalid space gnu".
|
||||
7.mo:Expected error in mat error: "a: hit me!".
|
||||
7.mo:Expected error in mat error: "f: n is 0".
|
||||
|
@ -214,7 +214,7 @@
|
|||
record.mo:Expected error in mat record2: "invalid value 3 for foreign type double-float".
|
||||
record.mo:Expected error in mat record2: "3 is not of type #<record type fudge>".
|
||||
record.mo:Expected error in mat record2: "make-record-type: invalid field list ((immutable double-float a) . b)".
|
||||
--- 7169,7176 ----
|
||||
--- 7170,7177 ----
|
||||
7.mo:Expected error in mat bytes-allocated: "bytes-allocated: invalid space gnu".
|
||||
7.mo:Expected error in mat error: "a: hit me!".
|
||||
7.mo:Expected error in mat error: "f: n is 0".
|
||||
|
@ -224,7 +224,7 @@
|
|||
record.mo:Expected error in mat record2: "3 is not of type #<record type fudge>".
|
||||
record.mo:Expected error in mat record2: "make-record-type: invalid field list ((immutable double-float a) . b)".
|
||||
***************
|
||||
*** 7178,7192 ****
|
||||
*** 7179,7193 ****
|
||||
record.mo:Expected error in mat type-descriptor: "invalid syntax (type-descriptor 3)".
|
||||
record.mo:Expected error in mat type-descriptor: "type-descriptor: unrecognized record car".
|
||||
record.mo:Expected error in mat record3: "variable set-fudge-a! is not bound".
|
||||
|
@ -240,7 +240,7 @@
|
|||
record.mo:Expected error in mat record9: "record-reader: invalid input #f".
|
||||
record.mo:Expected error in mat record9: "record-reader: invalid second argument fudge".
|
||||
record.mo:Expected error in mat record9: "record-reader: invalid second argument fudge".
|
||||
--- 7178,7192 ----
|
||||
--- 7179,7193 ----
|
||||
record.mo:Expected error in mat type-descriptor: "invalid syntax (type-descriptor 3)".
|
||||
record.mo:Expected error in mat type-descriptor: "type-descriptor: unrecognized record car".
|
||||
record.mo:Expected error in mat record3: "variable set-fudge-a! is not bound".
|
||||
|
@ -257,7 +257,7 @@
|
|||
record.mo:Expected error in mat record9: "record-reader: invalid second argument fudge".
|
||||
record.mo:Expected error in mat record9: "record-reader: invalid second argument fudge".
|
||||
***************
|
||||
*** 7199,7224 ****
|
||||
*** 7200,7225 ****
|
||||
record.mo:Expected error in mat record10: "read: unresolvable cycle constructing record of type #<record type bar> at char 3 of #<input port string>".
|
||||
record.mo:Expected error in mat record16: "read: unresolvable cycle constructing record of type #<record type bazar> at char 3 of #<input port string>".
|
||||
record.mo:Expected error in mat record16: "read: unresolvable cycle constructing record of type #<record type bazar> at char 3 of #<input port string>".
|
||||
|
@ -284,7 +284,7 @@
|
|||
record.mo:Expected error in mat foreign-data: "foreign-alloc: 0 is not a positive fixnum".
|
||||
record.mo:Expected error in mat foreign-data: "foreign-alloc: <int> is not a positive fixnum".
|
||||
record.mo:Expected error in mat foreign-data: "foreign-alloc: -5 is not a positive fixnum".
|
||||
--- 7199,7224 ----
|
||||
--- 7200,7225 ----
|
||||
record.mo:Expected error in mat record10: "read: unresolvable cycle constructing record of type #<record type bar> at char 3 of #<input port string>".
|
||||
record.mo:Expected error in mat record16: "read: unresolvable cycle constructing record of type #<record type bazar> at char 3 of #<input port string>".
|
||||
record.mo:Expected error in mat record16: "read: unresolvable cycle constructing record of type #<record type bazar> at char 3 of #<input port string>".
|
||||
|
@ -312,7 +312,7 @@
|
|||
record.mo:Expected error in mat foreign-data: "foreign-alloc: <int> is not a positive fixnum".
|
||||
record.mo:Expected error in mat foreign-data: "foreign-alloc: -5 is not a positive fixnum".
|
||||
***************
|
||||
*** 7349,7387 ****
|
||||
*** 7350,7388 ****
|
||||
record.mo:Expected error in mat record22: "invalid field specifier (immutable creepy q)".
|
||||
record.mo:Expected error in mat record22: "invalid field specifier (immutable creepy q)".
|
||||
record.mo:Expected error in mat record23: "make-record-type: cannot extend sealed record type #<record type foo>".
|
||||
|
@ -352,7 +352,7 @@
|
|||
record.mo:Expected error in mat record?: "record?: 4 is not a record type descriptor".
|
||||
record.mo:Expected error in mat record?: "record?: a is not a record type descriptor".
|
||||
record.mo:Expected error in mat record?: "record?: #(1) is not a record type descriptor".
|
||||
--- 7349,7387 ----
|
||||
--- 7350,7388 ----
|
||||
record.mo:Expected error in mat record22: "invalid field specifier (immutable creepy q)".
|
||||
record.mo:Expected error in mat record22: "invalid field specifier (immutable creepy q)".
|
||||
record.mo:Expected error in mat record23: "make-record-type: cannot extend sealed record type #<record type foo>".
|
||||
|
@ -393,7 +393,7 @@
|
|||
record.mo:Expected error in mat record?: "record?: a is not a record type descriptor".
|
||||
record.mo:Expected error in mat record?: "record?: #(1) is not a record type descriptor".
|
||||
***************
|
||||
*** 7396,7452 ****
|
||||
*** 7397,7453 ****
|
||||
record.mo:Expected error in mat r6rs-records-procedural: "make-record-constructor-descriptor: invalid protocol flimflam".
|
||||
record.mo:Expected error in mat r6rs-records-procedural: "attempt to apply non-procedure not-a-procedure".
|
||||
record.mo:Expected error in mat r6rs-records-procedural: "attempt to apply non-procedure spam".
|
||||
|
@ -451,7 +451,7 @@
|
|||
record.mo:Expected error in mat r6rs-records-syntactic: "define-record-type: incompatible record type cpoint - different parent".
|
||||
record.mo:Expected error in mat r6rs-records-syntactic: "define-record-type: incompatible record type cpoint - different parent".
|
||||
record.mo:Expected error in mat r6rs-records-syntactic: "cannot extend define-record-type parent fratrat".
|
||||
--- 7396,7452 ----
|
||||
--- 7397,7453 ----
|
||||
record.mo:Expected error in mat r6rs-records-procedural: "make-record-constructor-descriptor: invalid protocol flimflam".
|
||||
record.mo:Expected error in mat r6rs-records-procedural: "attempt to apply non-procedure not-a-procedure".
|
||||
record.mo:Expected error in mat r6rs-records-procedural: "attempt to apply non-procedure spam".
|
||||
|
@ -510,7 +510,7 @@
|
|||
record.mo:Expected error in mat r6rs-records-syntactic: "define-record-type: incompatible record type cpoint - different parent".
|
||||
record.mo:Expected error in mat r6rs-records-syntactic: "cannot extend define-record-type parent fratrat".
|
||||
***************
|
||||
*** 8595,8607 ****
|
||||
*** 8603,8615 ****
|
||||
fx.mo:Expected error in mat r6rs:fx-: "fx-: #f is not a fixnum".
|
||||
fx.mo:Expected error in mat r6rs:fx-: "fx-: #f is not a fixnum".
|
||||
fx.mo:Expected error in mat fx*: "fx*: (a . b) is not a fixnum".
|
||||
|
@ -524,7 +524,7 @@
|
|||
fx.mo:Expected error in mat r6rs:fx*: "fx*: <int> is not a fixnum".
|
||||
fx.mo:Expected error in mat r6rs:fx*: "fx*: <-int> is not a fixnum".
|
||||
fx.mo:Expected error in mat r6rs:fx*: "fx*: #f is not a fixnum".
|
||||
--- 8595,8607 ----
|
||||
--- 8603,8615 ----
|
||||
fx.mo:Expected error in mat r6rs:fx-: "fx-: #f is not a fixnum".
|
||||
fx.mo:Expected error in mat r6rs:fx-: "fx-: #f is not a fixnum".
|
||||
fx.mo:Expected error in mat fx*: "fx*: (a . b) is not a fixnum".
|
||||
|
@ -539,7 +539,7 @@
|
|||
fx.mo:Expected error in mat r6rs:fx*: "fx*: <-int> is not a fixnum".
|
||||
fx.mo:Expected error in mat r6rs:fx*: "fx*: #f is not a fixnum".
|
||||
***************
|
||||
*** 10091,10100 ****
|
||||
*** 10099,10108 ****
|
||||
exceptions.mo:Expected error in mat assert: "failed assertion (memq (quote b) (quote (1 2 a 3 4)))".
|
||||
exceptions.mo:Expected error in mat assert: "failed assertion (q ...)".
|
||||
exceptions.mo:Expected error in mat assert: "failed assertion (andmap symbol? (syntax (x ...)))".
|
||||
|
@ -550,7 +550,7 @@
|
|||
oop.mo:Expected error in mat oop: "m1: not applicable to 17".
|
||||
oop.mo:Expected error in mat oop: "variable <a>-x1 is not bound".
|
||||
oop.mo:Expected error in mat oop: "variable <a>-x1-set! is not bound".
|
||||
--- 10091,10100 ----
|
||||
--- 10099,10108 ----
|
||||
exceptions.mo:Expected error in mat assert: "failed assertion (memq (quote b) (quote (1 2 a 3 4)))".
|
||||
exceptions.mo:Expected error in mat assert: "failed assertion (q ...)".
|
||||
exceptions.mo:Expected error in mat assert: "failed assertion (andmap symbol? (syntax (x ...)))".
|
||||
|
|
|
@ -7066,6 +7066,7 @@ format.mo:Expected error in mat format-dollar: "format: expected real number for
|
|||
7.mo:Expected error in mat compile-whole-library: "separate-eval: Exception: library (testfile-cwl-a6) not found
|
||||
7.mo:Expected error in mat compile-whole-library: "separate-eval: Exception: library (testfile-cwl-c6) not found
|
||||
7.mo:Expected error in mat compile-whole-library: "separate-compile: Exception in compile-whole-library: encountered visit-only run-time library (testfile-cwl-a9) while processing file "testfile-cwl-a9.wpo"
|
||||
7.mo:Expected error in mat compile-whole-library: "separate-eval: Exception in compile-whole-program: encountered library (testfile-deja-vu-one) in testfile-deja-vu-dup.wpo, but had already encountered it in testfile-deja-vu-two.wpo
|
||||
7.mo:Expected error in mat top-level-value-functions: "top-level-bound?: "hello" is not a symbol".
|
||||
7.mo:Expected error in mat top-level-value-functions: "incorrect argument count in call (top-level-bound?)".
|
||||
7.mo:Expected error in mat top-level-value-functions: "top-level-bound?: 45 is not a symbol".
|
||||
|
@ -8380,6 +8381,13 @@ enum.mo:Expected error in mat enumeration: "make-record-type: cannot extend seal
|
|||
8.mo:Expected error in mat eval-when-library: "loading testfile-ewl2.ss did not define library (testfile-ewl2)".
|
||||
8.mo:Expected error in mat eval-when-library: "loading testfile-ewl6.ss did not define library (testfile-ewl6)".
|
||||
8.mo:Expected error in mat library-directories: "library (testfile-ld1) not found".
|
||||
8.mo:Expected error in mat library-search-handler: "default-library-search-handler: "not-symbol" is not a symbol".
|
||||
8.mo:Expected error in mat library-search-handler: "default-library-search-handler: invalid library name bad-library-name".
|
||||
8.mo:Expected error in mat library-search-handler: "default-library-search-handler: invalid path list (("invalid" "path" "list"))".
|
||||
8.mo:Expected error in mat library-search-handler: "default-library-search-handler: invalid extension list (("bad") ("extensions"))".
|
||||
8.mo:Expected error in mat library-search-handler: "library-search-handler: returned invalid source-file path (bad source path)".
|
||||
8.mo:Expected error in mat library-search-handler: "library-search-handler: returned invalid object-file path (bad object path)".
|
||||
8.mo:Expected error in mat library-search-handler: "library-search-handler: claimed object file was found but returned no object-file path".
|
||||
8.mo:Expected error in mat top-level-program: "invalid syntax (if (inc 3)) at line 4, char 1 of testfile.ss".
|
||||
8.mo:Expected error in mat top-level-program: "compiled program requires different compilation instance of (testfile-tlp1) from one already loaded".
|
||||
8.mo:Expected error in mat top-level-program: "read: #<n>(...) vector syntax is not allowed in #!r6rs mode at line 4, char 19 of testfile-tlp1.ss".
|
||||
|
|
|
@ -7086,6 +7086,7 @@ format.mo:Expected error in mat format-dollar: "format: expected real number for
|
|||
7.mo:Expected error in mat compile-whole-library: "separate-eval: Exception: library (testfile-cwl-a6) not found
|
||||
7.mo:Expected error in mat compile-whole-library: "separate-eval: Exception: library (testfile-cwl-c6) not found
|
||||
7.mo:Expected error in mat compile-whole-library: "separate-compile: Exception in compile-whole-library: encountered visit-only run-time library (testfile-cwl-a9) while processing file "testfile-cwl-a9.wpo"
|
||||
7.mo:Expected error in mat compile-whole-library: "separate-eval: Exception in compile-whole-program: encountered library (testfile-deja-vu-one) in testfile-deja-vu-dup.wpo, but had already encountered it in testfile-deja-vu-two.wpo
|
||||
7.mo:Expected error in mat top-level-value-functions: "top-level-bound?: "hello" is not a symbol".
|
||||
7.mo:Expected error in mat top-level-value-functions: "incorrect argument count in call (top-level-bound?)".
|
||||
7.mo:Expected error in mat top-level-value-functions: "top-level-bound?: 45 is not a symbol".
|
||||
|
@ -8400,6 +8401,13 @@ enum.mo:Expected error in mat enumeration: "make-record-type: cannot extend seal
|
|||
8.mo:Expected error in mat eval-when-library: "loading testfile-ewl2.ss did not define library (testfile-ewl2)".
|
||||
8.mo:Expected error in mat eval-when-library: "loading testfile-ewl6.ss did not define library (testfile-ewl6)".
|
||||
8.mo:Expected error in mat library-directories: "library (testfile-ld1) not found".
|
||||
8.mo:Expected error in mat library-search-handler: "default-library-search-handler: "not-symbol" is not a symbol".
|
||||
8.mo:Expected error in mat library-search-handler: "default-library-search-handler: invalid library name bad-library-name".
|
||||
8.mo:Expected error in mat library-search-handler: "default-library-search-handler: invalid path list (("invalid" "path" "list"))".
|
||||
8.mo:Expected error in mat library-search-handler: "default-library-search-handler: invalid extension list (("bad") ("extensions"))".
|
||||
8.mo:Expected error in mat library-search-handler: "library-search-handler: returned invalid source-file path (bad source path)".
|
||||
8.mo:Expected error in mat library-search-handler: "library-search-handler: returned invalid object-file path (bad object path)".
|
||||
8.mo:Expected error in mat library-search-handler: "library-search-handler: claimed object file was found but returned no object-file path".
|
||||
8.mo:Expected error in mat top-level-program: "invalid syntax (if (inc 3)) at line 4, char 1 of testfile.ss".
|
||||
8.mo:Expected error in mat top-level-program: "compiled program requires different compilation instance of (testfile-tlp1) from one already loaded".
|
||||
8.mo:Expected error in mat top-level-program: "read: #<n>(...) vector syntax is not allowed in #!r6rs mode at line 4, char 19 of testfile-tlp1.ss".
|
||||
|
|
33
newrelease
33
newrelease
|
@ -75,9 +75,17 @@ if ($status != 0) exit 1
|
|||
|
||||
cd $W
|
||||
|
||||
/bin/rm -f bintar
|
||||
sed -e "s/csv[0-9][0-9][0-9]*/csv$ZR/g" ../bintar > bintar
|
||||
set updatedfiles = ($updatedfiles bintar)
|
||||
/bin/rm bintar/Makefile
|
||||
sed -e "s/^v = .*/v = $R/" ../bintar/Makefile > bintar/Makefile
|
||||
set updatedfiles = ($updatedfiles bintar/Makefile)
|
||||
|
||||
/bin/rm rpm/Makefile
|
||||
sed -e "s/^v = .*/v = $R/" ../rpm/Makefile > rpm/Makefile
|
||||
set updatedfiles = ($updatedfiles rpm/Makefile)
|
||||
|
||||
/bin/rm pkg/Makefile
|
||||
sed -e "s/^v = .*/v = $R/" ../pkg/Makefile > pkg/Makefile
|
||||
set updatedfiles = ($updatedfiles pkg/Makefile)
|
||||
|
||||
/bin/rm -f BUILDING
|
||||
sed -e "s/Chez Scheme Version [^ ]*/Chez Scheme Version $R/" \
|
||||
|
@ -93,8 +101,8 @@ 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/csug[0-9]\.[0-9]\(\.[0-9]\)*/csug$R/" -e "s/csug[0-9]_[0-9]\(_[0-9]\)*/csug$underscoreR/" ../makefiles/Makefile-csug.in > makefiles/Makefile-csug.in
|
||||
set updatedfiles = ($updatedfiles makefiles/Mf-install.in)
|
||||
sed -e "s/csug[0-9]\.[0-9]/csug$MR.$mR/" -e "s/csug[0-9]_[0-9]/csug$MR""_$mR/" ../makefiles/Makefile-csug.in > makefiles/Makefile-csug.in
|
||||
set updatedfiles = ($updatedfiles makefiles/Mf-install.in makefiles/Makefile-csug.in)
|
||||
|
||||
/bin/rm 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
|
||||
|
@ -139,12 +147,21 @@ sed -e "s/thisversion{Version [^ ]*}/thisversion{Version $R}/" ../release_notes/
|
|||
set updatedfiles = ($updatedfiles release_notes/release_notes.stex)
|
||||
|
||||
mkdir csug
|
||||
sed -e "s/Revised \(.*\) for Chez Scheme Version [^ ]*\./Revised \\INSERTREVISIONMONTHSPACEYEAR for Chez Scheme Version $R./" ../csug/copyright.stex > csug/copyright.stex
|
||||
sed -e "s/Revised \(.*\) for Chez Scheme Version [^ ]*<br>/Revised \\INSERTREVISIONMONTHSPACEYEAR for Chez Scheme Version $R<br>/" ../csug/csug.stex > csug/csug.stex
|
||||
set updatedfiles = ($updatedfiles csug/csug.stex)
|
||||
sed -e "s/Revised\(.*\)for Chez Scheme Version [^ ]*\./Revised\1for Chez Scheme Version $R./" ../csug/copyright.stex > csug/copyright.stex
|
||||
sed -e "s/Revised\(.*\)for Chez Scheme Version [^ ]*<br>/Revised\1for Chez Scheme Version $R<br>/" ../csug/csug.stex > csug/csug.stex
|
||||
set updatedfiles = ($updatedfiles csug/copyright.stex csug/csug.stex)
|
||||
|
||||
/bin/rm -f rpm/Makefile
|
||||
sed -e "s/^v = .*/v = $R/" ../rpm/Makefile > rpm/Makefile
|
||||
set updatedfiles = ($updatedfiles rpm/Makefile)
|
||||
|
||||
/bin/rm -f pkg/Makefile
|
||||
sed -e "s/^v = .*/v = $R/" ../pkg/Makefile > pkg/Makefile
|
||||
set updatedfiles = ($updatedfiles pkg/Makefile)
|
||||
|
||||
mkdir wininstall
|
||||
sed -e "s/VERSION := .*/VERSION := $R/" ../wininstall/Makefile > wininstall/Makefile
|
||||
set updatedfiles = ($updatedfiles wininstall/Makefile)
|
||||
foreach fn (wininstall/{,t}{a6,i3}nt.wxs)
|
||||
set updatedfiles = ($updatedfiles $fn)
|
||||
sed -e "s/csv[0-9][0-9][0-9]*/csv$ZR/" ../$fn > $fn
|
||||
|
|
109
pkg/Makefile
Normal file
109
pkg/Makefile
Normal file
|
@ -0,0 +1,109 @@
|
|||
# Makefile
|
||||
# Copyright 1984-2017 Cisco Systems, Inc.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
m := $(shell find ../bin/* -type d | xargs basename)
|
||||
version = 9.5.1
|
||||
release = 1
|
||||
|
||||
DOTUSER = $(shell ls -ld . | sed -e 's/[^ ]* *[^ ]* *\([^ ]*\).*/\1/')
|
||||
DOTGROUP = $(shell ls -ldg . | sed -e 's/[^ ]* *[^ ]* *\([^ ]*\).*/\1/')
|
||||
BUILDROOT = $(m)$(version)
|
||||
RELEASE = csv$(version)
|
||||
TARBALL = $(RELEASE)-$(m).tar.gz
|
||||
PKG = $(RELEASE)-$(m)-$(release).pkg
|
||||
|
||||
PKGCONTENT =\
|
||||
$(BUILDROOT)/Resources/en.lproj/Welcome.html\
|
||||
$(BUILDROOT)/Resources/en.lproj/License.txt\
|
||||
$(BUILDROOT)/Distribution\
|
||||
$(BUIDROOT)/Root/bin\
|
||||
$(BUILDROOT)/Root/lib\
|
||||
$(BUILDROOT)/Root/man
|
||||
|
||||
$(PKG): $(BUILDROOT)/$(PKG)
|
||||
sudo /usr/bin/productbuild\
|
||||
--resources $(BUILDROOT)/Resources\
|
||||
--distribution $(BUILDROOT)/Distribution\
|
||||
--package-path $(BUILDROOT)\
|
||||
$(PKG)
|
||||
sudo chown $(DOTUSER):$(DOTGROUP) $(PKG)
|
||||
sudo /bin/rm -rf $(RELEASE) $(BUILDROOT)
|
||||
|
||||
$(BUILDROOT)/$(PKG): $(PKGCONTENT)
|
||||
sudo /usr/bin/pkgbuild\
|
||||
--root $(BUILDROOT)/Root\
|
||||
--identifier chezscheme\
|
||||
--version $(version)\
|
||||
--install-location /\
|
||||
--ownership recommended\
|
||||
$(BUILDROOT)/$(PKG)
|
||||
|
||||
$(BUILDROOT)/Distribution: $(BUILDROOT)
|
||||
echo '<?xml version="1.0" encoding="utf-8" standalone="no"?>' > $(BUILDROOT)/Distribution
|
||||
echo '<installer-gui-script minSpecVersion="1">' >> $(BUILDROOT)/Distribution
|
||||
echo ' <pkg-ref id="chezscheme">' >> $(BUILDROOT)/Distribution
|
||||
echo ' <bundle-version/>' >> $(BUILDROOT)/Distribution
|
||||
echo ' </pkg-ref>' >> $(BUILDROOT)/Distribution
|
||||
echo ' <title>Chez Scheme</title>' >> $(BUILDROOT)/Distribution
|
||||
echo ' <welcome file="Welcome.html"/>' >> $(BUILDROOT)/Distribution
|
||||
echo ' <license file="License.txt"/>' >> $(BUILDROOT)/Distribution
|
||||
echo ' <options customize="never" rootVolumeOnly="true"/>' >> $(BUILDROOT)/Distribution
|
||||
echo ' <options customize="never" require-scripts="false"/>' >> $(BUILDROOT)/Distribution
|
||||
echo ' <choices-outline>' >> $(BUILDROOT)/Distribution
|
||||
echo ' <line choice="default">' >> $(BUILDROOT)/Distribution
|
||||
echo ' <line choice="chezscheme"/>' >> $(BUILDROOT)/Distribution
|
||||
echo ' </line>' >> $(BUILDROOT)/Distribution
|
||||
echo ' </choices-outline>' >> $(BUILDROOT)/Distribution
|
||||
echo ' <choice id="default"/>' >> $(BUILDROOT)/Distribution
|
||||
echo ' <choice id="chezscheme" visible="false">' >> $(BUILDROOT)/Distribution
|
||||
echo ' <pkg-ref id="chezscheme"/>' >> $(BUILDROOT)/Distribution
|
||||
echo ' </choice>' >> $(BUILDROOT)/Distribution
|
||||
echo ' <pkg-ref id="chezscheme" version="$(version)" onConclusion="none" installKBytes="1639">#$(PKG)</pkg-ref>' >> $(BUILDROOT)/Distribution
|
||||
echo '</installer-gui-script>' >> $(BUILDROOT)/Distribution
|
||||
chmod 644 $(BUILDROOT)/Distribution
|
||||
|
||||
$(BUILDROOT)/Resources/en.lproj/Welcome.html: $(BUILDROOT)/Resources/en.lproj
|
||||
echo 'cat << EOF > $(RESOURCES)/en.lproj/Welcome.html' >> $(BUILDROOT)/Resources/en.lproj/Welcome.html
|
||||
echo '<html>' >> $(BUILDROOT)/Resources/en.lproj/Welcome.html
|
||||
echo '<h3>Chez Scheme Version $(version)</h3>' >> $(BUILDROOT)/Resources/en.lproj/Welcome.html
|
||||
echo '<p>Copyright (c) 2017 Cisco Systems, Inc.</p>' >> $(BUILDROOT)/Resources/en.lproj/Welcome.html
|
||||
echo '<p>Chez Scheme is a programming language and an implementation of that language, with supporting tools and documentation.</p>' >> $(BUILDROOT)/Resources/en.lproj/Welcome.html
|
||||
echo '</html>' >> $(BUILDROOT)/Resources/en.lproj/Welcome.html
|
||||
chmod 644 $(BUILDROOT)/Resources/en.lproj/Welcome.html
|
||||
|
||||
$(BUILDROOT)/Resources/en.lproj/License.txt: $(BUILDROOT)/Resources/en.lproj
|
||||
cat ../../NOTICE ../../LICENSE > $(BUILDROOT)/Resources/en.lproj/License.txt
|
||||
chmod 644 $(BUILDROOT)/Resources/en.lproj/License.txt
|
||||
|
||||
$(BUILDROOT)/Resources/en.lproj: $(BUILDROOT)/Resources
|
||||
install -d $(BUILDROOT)/Resources/en.lproj
|
||||
|
||||
$(BUILDROOT)/Resources: $(BUILDROOT)
|
||||
install -d $(BUILDROOT)/Resources
|
||||
|
||||
$(BUIDROOT)/Root/bin $(BUILDROOT)/Root/lib $(BUILDROOT)/Root/man: $(BUILDROOT)/Root $(RELEASE)
|
||||
( cd $(RELEASE); sudo make install InstallGroup=wheel TempRoot=../$(BUILDROOT)/Root )
|
||||
|
||||
$(BUILDROOT)/Root: $(BUILDROOT)
|
||||
install -d $(BUILDROOT)/Root
|
||||
|
||||
$(RELEASE): $(BUILDROOT) ../bintar/$(TARBALL)
|
||||
tar -xzf ../bintar/$(TARBALL)
|
||||
|
||||
$(BUILDROOT):
|
||||
install -d $(BUILDROOT)
|
||||
|
||||
clean:
|
||||
rm -rf $(PKG) $(BUILDROOT) $(RELEASE)
|
37
pkg/rmpkg
Executable file
37
pkg/rmpkg
Executable file
|
@ -0,0 +1,37 @@
|
|||
#! /bin/csh -f
|
||||
|
||||
# rmpkg
|
||||
# Copyright 1984-2017 Cisco Systems, Inc.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
if ( $#argv != 1) then
|
||||
echo "Usage: sudo $0 release"
|
||||
echo " e.g.,: sudo $0 8.4"
|
||||
exit 1
|
||||
endif
|
||||
|
||||
if ( `id -u` != 0 ) then
|
||||
echo "$0 must be run as root (e.g., via sudo)"
|
||||
exit 1
|
||||
endif
|
||||
|
||||
set R = $1
|
||||
|
||||
if (!(-e /usr/local/lib/csv$R)) then
|
||||
echo "(Petite) Chez Scheme Version $R doesn't appear to be installed"
|
||||
exit
|
||||
endif
|
||||
|
||||
/bin/rm -rf /usr/local/bin/petite /usr/local/bin/scheme /usr/local/bin/scheme-script /usr/local/lib/csv$R /usr/local/share/man/man1/petite.1.gz /usr/local/share/man/man1/scheme.1.gz
|
||||
pkgutil --forget chezscheme
|
84
rpm/Makefile
Normal file
84
rpm/Makefile
Normal file
|
@ -0,0 +1,84 @@
|
|||
# Makefile
|
||||
# Copyright 1984-2017 Cisco Systems, Inc.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
version = 9.5.1
|
||||
release = 1
|
||||
m := $(shell find ../bin/* -type d | xargs basename)
|
||||
arch := $(shell if test "$(m)" == "i3le" ; then echo i686 ; elif test "$(m)" == "a6le" ; then echo x86_64 ; else echo UNKNOWN ; fi)
|
||||
DOTUSER := $(shell ls -ld . | sed -e 's/[^ ]* *[^ ]* *\([^ ]*\).*/\1/')
|
||||
DOTGROUP := $(shell ls -ldg . | sed -e 's/[^ ]* *[^ ]* *\([^ ]*\).*/\1/')
|
||||
TMP := $(shell pwd)/tmp
|
||||
SPEC = $(TMP)/ChezScheme-$(version)-$(arch)-$(release).spec
|
||||
RELEASE = csv$(version)
|
||||
TARBALL = $(RELEASE)-$(m).tar.gz
|
||||
RPM = ChezScheme-$(version)-$(release).$(arch).rpm
|
||||
|
||||
|
||||
$(RPM): $(TMP)/$(RPM)
|
||||
sudo install -m 644 -o $(DOTUSER) -g $(DOTGROUP) $(TMP)/${RPM} .
|
||||
|
||||
$(TMP)/$(RPM): $(SPEC) $(TMP)/$(TARBALL)
|
||||
sudo setarch $(arch) rpmbuild\
|
||||
--target $(arch)\
|
||||
--define "_topdir $(TMP)" \
|
||||
--define "_srcrpmdir $(TMP)" \
|
||||
--define "_rpmdir $(TMP)" \
|
||||
--define "_sourcedir $(TMP)" \
|
||||
--define "_builddir $(TMP)" \
|
||||
--define "_rpmfilename %{NAME}-%{VERSION}-%{RELEASE}.%{ARCH}.rpm" \
|
||||
--quiet -ba $(SPEC)
|
||||
|
||||
$(SPEC): $(TMP)
|
||||
echo 'Summary: Chez Scheme: A high-performance version of Scheme' > $(SPEC)
|
||||
echo 'Name: ChezScheme' >> $(SPEC)
|
||||
echo 'Version: $(version)' >> $(SPEC)
|
||||
echo 'Release: $(release)' >> $(SPEC)
|
||||
echo 'Provides: ChezScheme-runtime-{VERSION}' >> $(SPEC)
|
||||
echo 'License: Apache 2.0' >> $(SPEC)
|
||||
echo 'URL: http://github.com/cisco/chezscheme' >> $(SPEC)
|
||||
echo 'Group: Development/Languages' >> $(SPEC)
|
||||
echo 'Source0: $(TARBALL)' >> $(SPEC)
|
||||
echo 'BuildRoot: %{_tmppath}/%{name}' >> $(SPEC)
|
||||
echo '%description' >> $(SPEC)
|
||||
echo 'Chez Scheme is a programming language and an implementation of that language,' >> $(SPEC)
|
||||
echo 'with supporting tools and documentation.' >> $(SPEC)
|
||||
echo '' >> $(SPEC)
|
||||
echo '%prep' >> $(SPEC)
|
||||
echo '' >> $(SPEC)
|
||||
echo '%setup -T -b 0 -n $(RELEASE)' >> $(SPEC)
|
||||
echo '' >> $(SPEC)
|
||||
echo '#%build' >> $(SPEC)
|
||||
echo '' >> $(SPEC)
|
||||
echo '%install' >> $(SPEC)
|
||||
echo 'make install TempRoot=%{buildroot}' >> $(SPEC)
|
||||
echo '' >> $(SPEC)
|
||||
echo '%files' >> $(SPEC)
|
||||
echo '#%doc NOTICE' >> $(SPEC)
|
||||
echo '#%doc LICENSE' >> $(SPEC)
|
||||
echo '/usr/lib/$(RELEASE)' >> $(SPEC)
|
||||
echo '/usr/bin/petite' >> $(SPEC)
|
||||
echo '/usr/bin/scheme' >> $(SPEC)
|
||||
echo '/usr/bin/scheme-script' >> $(SPEC)
|
||||
echo '/usr/share/man/man1/petite.1.gz' >> $(SPEC)
|
||||
echo '/usr/share/man/man1/scheme.1.gz' >> $(SPEC)
|
||||
|
||||
$(TMP)/$(TARBALL): $(TMP) ../bintar/$(TARBALL)
|
||||
cp ../bintar/$(TARBALL) $(TMP)
|
||||
|
||||
$(TMP):
|
||||
mkdir $(TMP)
|
||||
|
||||
clean:
|
||||
rm -rf $(TMP) $(RPM)
|
237
s/compile.ss
237
s/compile.ss
|
@ -549,7 +549,7 @@
|
|||
(define check-prelex-flags
|
||||
(lambda (x after)
|
||||
(when ($enable-check-prelex-flags)
|
||||
($pass-time 'cpcheck-prelex-flags (lambda () (do-trace $cpcheck-prelex-flags x 'uncprep))))))
|
||||
($pass-time 'cpcheck-prelex-flags (lambda () (do-trace $cpcheck-prelex-flags x after))))))
|
||||
|
||||
(define cptypes
|
||||
(lambda (x)
|
||||
|
@ -771,12 +771,12 @@
|
|||
(program-info-invoke-req* (program-node-pinfo node))))
|
||||
|
||||
(define-record-type library-node (nongenerative) (parent node)
|
||||
(fields binary? (mutable ctinfo) (mutable rtinfo) (mutable ctir) (mutable rtir) (mutable visible?))
|
||||
(fields binary? (mutable ctinfo) (mutable rtinfo) (mutable ctir) (mutable rtir) (mutable visible?) fn)
|
||||
(protocol
|
||||
(lambda (pargs->new)
|
||||
(lambda (binary? ctinfo rtinfo visible?)
|
||||
(lambda (binary? ctinfo rtinfo visible? fn)
|
||||
(safe-assert (or ctinfo rtinfo))
|
||||
((pargs->new) binary? ctinfo rtinfo #f #f visible?)))))
|
||||
((pargs->new) binary? ctinfo rtinfo #f #f visible? fn)))))
|
||||
(define library-node-path
|
||||
(lambda (node)
|
||||
(library-info-path (or (library-node-ctinfo node) (library-node-rtinfo node)))))
|
||||
|
@ -909,7 +909,7 @@
|
|||
[(visit-only ,[inner 'visit ->]) (values)]
|
||||
[(revisit-only ,[inner 'revisit ->]) (values)])
|
||||
(Inner : Inner (ir situation) -> * ()
|
||||
[,lsrc ($oops who "encountered bare lsrc item while processing wpo file ~s" ($uncprep lsrc))]
|
||||
[,lsrc ($oops who "expected program or library form, but encountered top-level expression ~s processing wpo file ~a" ($uncprep lsrc) ifn)]
|
||||
[,linfo/ct (let ([node (record-ct-lib! linfo/ct #f situation ifn libs-visible?)])
|
||||
(when node (set! libs-in-file (cons node libs-in-file))))
|
||||
(values)]
|
||||
|
@ -963,8 +963,11 @@
|
|||
[cell (symbol-hashtable-cell libs uid #f)]
|
||||
[node (cdr cell)])
|
||||
(if node
|
||||
(begin (unless (library-node-ctinfo node) (library-node-ctinfo-set! node linfo/ct)) #f)
|
||||
(let ([node (make-library-node binary? linfo/ct #f (or libs-visible? binary?))])
|
||||
(if (library-node-ctinfo node)
|
||||
($oops who "encountered library ~s in ~a, but had already encountered it in ~a"
|
||||
(library-info-path linfo/ct) ifn (library-node-fn node))
|
||||
(begin (library-node-ctinfo-set! node linfo/ct) #f))
|
||||
(let ([node (make-library-node binary? linfo/ct #f (or libs-visible? binary?) ifn)])
|
||||
(set-cdr! cell node)
|
||||
node)))))
|
||||
(define record-rt-lib!
|
||||
|
@ -974,8 +977,11 @@
|
|||
[cell (symbol-hashtable-cell libs uid #f)]
|
||||
[node (cdr cell)])
|
||||
(if node
|
||||
(begin (unless (library-node-rtinfo node) (library-node-rtinfo-set! node linfo/rt)) #f)
|
||||
(let ([node (make-library-node binary? #f linfo/rt (or libs-visible? binary?))])
|
||||
(if (library-node-rtinfo node)
|
||||
($oops who "encountered library ~s in ~a, but had already encountered it in ~a"
|
||||
(library-info-path linfo/rt) ifn (library-node-fn node))
|
||||
(begin (library-node-rtinfo-set! node linfo/rt) #f))
|
||||
(let ([node (make-library-node binary? #f linfo/rt (or libs-visible? binary?) ifn)])
|
||||
(set-cdr! cell node)
|
||||
node)))))
|
||||
(define record-ct-lib-ir!
|
||||
|
@ -1005,16 +1011,26 @@
|
|||
($oops who "~s does not define expected compilation instance of library ~s" fn path))
|
||||
(for-each chase-library-dependencies! node*)))]))))
|
||||
(define find-dependencies
|
||||
(lambda (req*)
|
||||
(map (lambda (req)
|
||||
(let ([node (symbol-hashtable-ref libs (libreq-uid req) #f)])
|
||||
(node-use-count-set! node (fx+ (node-use-count node) 1))
|
||||
node))
|
||||
req*)))
|
||||
(lambda (req* maybe-import-req*)
|
||||
(let ([dep* (map (lambda (req)
|
||||
(let ([node (symbol-hashtable-ref libs (libreq-uid req) #f)])
|
||||
(node-use-count-set! node (fx+ (node-use-count node) 1))
|
||||
node))
|
||||
req*)])
|
||||
(if maybe-import-req*
|
||||
(fold-right (lambda (req dep*)
|
||||
(let ([node (symbol-hashtable-ref libs (libreq-uid req) #f)])
|
||||
(if node
|
||||
(begin
|
||||
(node-use-count-set! node (fx+ (node-use-count node) 1))
|
||||
(cons node dep*))
|
||||
dep*)))
|
||||
dep* maybe-import-req*)
|
||||
dep*))))
|
||||
(define chase-program-dependencies!
|
||||
(lambda (node)
|
||||
(for-each (lambda (req) (chase-library req libs-visible?)) (program-node-invoke-req* node))
|
||||
(node-depend*-set! node (find-dependencies (program-node-invoke-req* node)))))
|
||||
(node-depend*-set! node (find-dependencies (program-node-invoke-req* node) #f))))
|
||||
(define chase-library-dependencies!
|
||||
(lambda (node)
|
||||
(if (library-node-visible? node)
|
||||
|
@ -1027,7 +1043,10 @@
|
|||
(lambda (req) (chase-library req (library-node-visible? node)))
|
||||
(library-node-invoke-req* node)))
|
||||
(unless (node-depend* node)
|
||||
(node-depend*-set! node (find-dependencies (library-node-invoke-req* node))))))
|
||||
(node-depend*-set! node
|
||||
(find-dependencies
|
||||
(library-node-invoke-req* node)
|
||||
(and (library-node-visible? node) (library-node-import-req* node)))))))
|
||||
(let-values ([(maybe-program node* rcinfo*) (process-ir*! ir* ifn capture-program? libs-visible?)])
|
||||
(when capture-program?
|
||||
(unless maybe-program ($oops who "missing entry program in file ~a" ifn))
|
||||
|
@ -1169,18 +1188,21 @@
|
|||
(build-void) dl* db* dv*)])))
|
||||
|
||||
(define make-patch-env
|
||||
(lambda (node*)
|
||||
(lambda (cluster*)
|
||||
(let ([patch-env (make-hashtable symbol-hash eq?)])
|
||||
(for-each
|
||||
(lambda (node)
|
||||
(unless (library-node-binary? node)
|
||||
(nanopass-case (Lexpand rtLibrary) (library-node-rtir node)
|
||||
[(library/rt ,uid (,dl* ...) (,db* ...) (,dv* ...) (,de* ...) ,body)
|
||||
(for-each (lambda (label var)
|
||||
(when label
|
||||
(symbol-hashtable-set! patch-env label var)))
|
||||
dl* dv*)])))
|
||||
node*)
|
||||
(lambda (cluster)
|
||||
(for-each
|
||||
(lambda (node)
|
||||
(unless (library-node-binary? node)
|
||||
(nanopass-case (Lexpand rtLibrary) (library-node-rtir node)
|
||||
[(library/rt ,uid (,dl* ...) (,db* ...) (,dv* ...) (,de* ...) ,body)
|
||||
(for-each (lambda (label var)
|
||||
(when label
|
||||
(symbol-hashtable-set! patch-env label var)))
|
||||
dl* dv*)])))
|
||||
cluster))
|
||||
cluster*)
|
||||
patch-env)))
|
||||
|
||||
(define build-combined-program-ir
|
||||
|
@ -1208,30 +1230,14 @@
|
|||
(nanopass-case (Lexpand Program) (program-node-ir program)
|
||||
[(program ,uid ,body) body])
|
||||
node*)
|
||||
(make-patch-env node*))))
|
||||
(make-patch-env (list node*)))))
|
||||
|
||||
(define build-combined-library-ir
|
||||
(lambda (node*)
|
||||
(lambda (cluster*)
|
||||
(define build-mark-invoked!
|
||||
(lambda (node)
|
||||
(build-primcall '$mark-invoked! `(quote ,(library-node-uid node)))))
|
||||
(define build-cluster*
|
||||
(lambda (node*)
|
||||
(define (s-entry/binary node* rcluster*)
|
||||
(if (null? node*)
|
||||
(reverse rcluster*)
|
||||
(let ([node (car node*)])
|
||||
(if (library-node-binary? node)
|
||||
(s-entry/binary (cdr node*) rcluster*)
|
||||
(s-source (cdr node*) (list node) rcluster*)))))
|
||||
(define (s-source node* rnode* rcluster*)
|
||||
(if (null? node*)
|
||||
(reverse (cons (reverse rnode*) rcluster*))
|
||||
(let ([node (car node*)])
|
||||
(if (library-node-binary? node)
|
||||
(s-entry/binary (cdr node*) (cons (reverse rnode*) rcluster*))
|
||||
(s-source (cdr node*) (cons node rnode*) rcluster*)))))
|
||||
(s-entry/binary node* '())))
|
||||
|
||||
(define build-cluster
|
||||
(lambda (node* cluster-body)
|
||||
(fold-right
|
||||
|
@ -1270,7 +1276,7 @@
|
|||
; ($install-library/rt-code 'B-uid (lambda () (lib-f 0)))
|
||||
; ($install-library/rt-code 'D-uid (lambda () (lib-f 1)))
|
||||
; (void))
|
||||
(let ([cluster* (build-cluster* node*)] [lib-f (gen-var 'lib-f)])
|
||||
(let ([lib-f (gen-var 'lib-f)])
|
||||
(let ([cluster-idx* (enumerate cluster*)])
|
||||
(build-let (list lib-f) (list (build-void))
|
||||
`(seq
|
||||
|
@ -1299,7 +1305,7 @@
|
|||
,body))
|
||||
body cluster))
|
||||
(build-void) cluster* cluster-idx*)))))
|
||||
(make-patch-env node*)))))
|
||||
(make-patch-env cluster*)))))
|
||||
|
||||
(with-output-language (Lexpand Outer)
|
||||
(define add-recompile-info
|
||||
|
@ -1310,64 +1316,119 @@
|
|||
body
|
||||
rcinfo*)))
|
||||
|
||||
(define add-library-records
|
||||
(lambda (node* visit-lib* body)
|
||||
(define requirements-join
|
||||
(lambda (req* maybe-collected-invoke-req*)
|
||||
(define (->libreq node)
|
||||
(make-libreq
|
||||
(library-node-path node)
|
||||
(library-node-version node)
|
||||
(library-node-uid node)))
|
||||
(if maybe-collected-invoke-req*
|
||||
(let f ([invoke-req* maybe-collected-invoke-req*])
|
||||
(if (null? invoke-req*)
|
||||
req*
|
||||
(let* ([invoke-req (car invoke-req*)] [uid (library-node-uid invoke-req)])
|
||||
(if (memp (lambda (req) (eq? (libreq-uid req) uid)) req*)
|
||||
(f (cdr invoke-req*))
|
||||
(cons (->libreq invoke-req) (f (cdr invoke-req*)))))))
|
||||
req*)))
|
||||
|
||||
(define add-library/rt-records
|
||||
(lambda (maybe-ht node* body)
|
||||
(fold-left
|
||||
(lambda (body node)
|
||||
(if (library-node-binary? node)
|
||||
body
|
||||
`(group (revisit-only
|
||||
,(let ([info (library-node-rtinfo node)])
|
||||
(make-library/rt-info
|
||||
(let* ([info (library-node-rtinfo node)]
|
||||
[uid (library-info-uid info)])
|
||||
`(group (revisit-only
|
||||
,(make-library/rt-info
|
||||
(library-info-path info)
|
||||
(library-info-version info)
|
||||
(library-info-uid info)
|
||||
(library/rt-info-invoke-req* info))))
|
||||
,body)))
|
||||
(fold-left
|
||||
(lambda (body visit-lib)
|
||||
(if (library-node-binary? visit-lib)
|
||||
body
|
||||
`(group (visit-only
|
||||
,(let ([info (library-node-ctinfo visit-lib)])
|
||||
(make-library/ct-info
|
||||
(library-info-path info)
|
||||
(library-info-version info)
|
||||
(library-info-uid info)
|
||||
(library/ct-info-include-req* info)
|
||||
uid
|
||||
(requirements-join
|
||||
(library/rt-info-invoke-req* info)
|
||||
(and maybe-ht (symbol-hashtable-ref maybe-ht uid #f)))))
|
||||
,body))))
|
||||
body node*)))
|
||||
|
||||
(define add-library/ct-records
|
||||
(lambda (maybe-ht visit-lib* body)
|
||||
(fold-left
|
||||
(lambda (body visit-lib)
|
||||
(if (library-node-binary? visit-lib)
|
||||
body
|
||||
`(group (visit-only
|
||||
,(let* ([info (library-node-ctinfo visit-lib)]
|
||||
[uid (library-info-uid info)])
|
||||
(make-library/ct-info
|
||||
(library-info-path info)
|
||||
(library-info-version info)
|
||||
uid
|
||||
(library/ct-info-include-req* info)
|
||||
(requirements-join
|
||||
(library/ct-info-import-req* info)
|
||||
(library/ct-info-visit-visit-req* info)
|
||||
(library/ct-info-visit-req* info)
|
||||
(if (library-node-visible? visit-lib)
|
||||
(library/ct-info-clo* info)
|
||||
'()))))
|
||||
,body)))
|
||||
body visit-lib*)
|
||||
node*)))
|
||||
(and maybe-ht (symbol-hashtable-ref maybe-ht uid #f)))
|
||||
(library/ct-info-visit-visit-req* info)
|
||||
(library/ct-info-visit-req* info)
|
||||
(if (library-node-visible? visit-lib)
|
||||
(library/ct-info-clo* info)
|
||||
'()))))
|
||||
,body)))
|
||||
body visit-lib*)))
|
||||
|
||||
(define add-visit-lib-install*
|
||||
(lambda (visit-lib* body)
|
||||
(fold-left (lambda (body visit-lib)
|
||||
(if (library-node-binary? visit-lib)
|
||||
body
|
||||
`(group (visit-only ,(build-install-library/ct-code visit-lib)) ,body)))
|
||||
body visit-lib*)))
|
||||
(if (library-node-binary? visit-lib)
|
||||
body
|
||||
`(group (visit-only ,(build-install-library/ct-code visit-lib)) ,body)))
|
||||
body visit-lib*)))
|
||||
|
||||
(define build-cluster*
|
||||
(lambda (node* ht)
|
||||
(define (add-deps! node deps)
|
||||
(symbol-hashtable-set! ht (library-node-uid node) deps))
|
||||
(define (s-entry/binary node* rcluster* deps)
|
||||
(if (null? node*)
|
||||
(reverse rcluster*)
|
||||
(let ([node (car node*)])
|
||||
(if (library-node-binary? node)
|
||||
(s-entry/binary (cdr node*) rcluster* (cons node deps))
|
||||
(begin
|
||||
(add-deps! node deps)
|
||||
(s-source (cdr node*) (list node) rcluster* (list node)))))))
|
||||
(define (s-source node* rnode* rcluster* deps)
|
||||
(if (null? node*)
|
||||
(reverse (cons (reverse rnode*) rcluster*))
|
||||
(let ([node (car node*)])
|
||||
(if (library-node-binary? node)
|
||||
(s-entry/binary (cdr node*) (cons (reverse rnode*) rcluster*)
|
||||
(cons node deps))
|
||||
(begin
|
||||
(add-deps! node deps)
|
||||
(s-source (cdr node*) (cons node rnode*) rcluster* deps))))))
|
||||
(s-entry/binary node* '() '())))
|
||||
|
||||
(define build-program-body
|
||||
(lambda (program-entry node* visit-lib* invisible* rcinfo*)
|
||||
(add-recompile-info rcinfo*
|
||||
(add-library-records node* visit-lib*
|
||||
(add-library-records node* invisible*
|
||||
(add-visit-lib-install* visit-lib*
|
||||
(add-visit-lib-install* invisible*
|
||||
`(revisit-only ,(build-combined-program-ir program-entry node*)))))))))
|
||||
(add-library/rt-records #f node*
|
||||
(add-library/ct-records #f visit-lib*
|
||||
(add-library/ct-records #f invisible*
|
||||
(add-visit-lib-install* visit-lib*
|
||||
(add-visit-lib-install* invisible*
|
||||
`(revisit-only ,(build-combined-program-ir program-entry node*))))))))))
|
||||
|
||||
(define build-library-body
|
||||
(lambda (node* visit-lib* rcinfo*)
|
||||
(add-recompile-info rcinfo*
|
||||
(add-library-records node* visit-lib*
|
||||
(add-visit-lib-install* visit-lib*
|
||||
`(revisit-only ,(build-combined-library-ir node*))))))))
|
||||
(let* ([collected-req-ht (make-hashtable symbol-hash eq?)]
|
||||
[cluster* (build-cluster* node* collected-req-ht)])
|
||||
(add-recompile-info rcinfo*
|
||||
(add-library/rt-records collected-req-ht node*
|
||||
(add-library/ct-records collected-req-ht visit-lib*
|
||||
(add-visit-lib-install* visit-lib*
|
||||
`(revisit-only ,(build-combined-library-ir cluster*))))))))))
|
||||
|
||||
(define finish-compile
|
||||
(lambda (who msg ifn ofn hash-bang-line x1)
|
||||
|
|
2
s/cp0.ss
2
s/cp0.ss
|
@ -3856,7 +3856,7 @@
|
|||
(if (null? ls*)
|
||||
(and (apply = (map length e**))
|
||||
(or (not all-quoted?) (fx<= (length (car e**)) 4))
|
||||
(let ([p (cp0-make-temp (fx> (length (car e**)) 1))]
|
||||
(let ([p (cp0-make-temp (or (fx= lvl 2) (fx> (length (car e**)) 1)))]
|
||||
[temp** (map (lambda (e*)
|
||||
(map (lambda (x) (cp0-make-temp #f)) e*))
|
||||
e**)])
|
||||
|
|
|
@ -261,7 +261,7 @@
|
|||
|
||||
(define-pass cpcheck-prelex-flags : Lsrc (ir) -> Lsrc ()
|
||||
(definitions
|
||||
(define sorry!
|
||||
#;(define sorry!
|
||||
(lambda (who str . arg*)
|
||||
(apply fprintf (console-output-port) str arg*)
|
||||
(newline (console-output-port))))
|
||||
|
|
|
@ -946,6 +946,7 @@
|
|||
(custom-port-buffer-size [sig [() -> (ufixnum)] [(sub-fixnum) -> (void)]] [flags])
|
||||
(debug-level [sig [() -> (ufixnum)] [(sub-ufixnum) -> (void)]] [flags])
|
||||
(debug-on-exception [sig [() -> (boolean)] [(ptr) -> (void)]] [flags unrestricted])
|
||||
(default-library-search-handler [sig [(symbol list list list) -> (maybe-string maybe-string boolean)]] [flags])
|
||||
(default-record-equal-procedure [sig [() -> (maybe-procedure)] [(maybe-procedure) -> (void)]] [flags])
|
||||
(default-record-hash-procedure [sig [() -> (maybe-procedure)] [(maybe-procedure) -> (void)]] [flags])
|
||||
(enable-arithmetic-left-associative [sig [() -> (boolean)] [(ptr) -> (void)]] [flags unrestricted])
|
||||
|
@ -980,6 +981,7 @@
|
|||
(library-object-filename [sig [(sub-list) -> (maybe-string)]] [flags])
|
||||
(library-list [sig [() -> (list)]] [flags])
|
||||
(library-requirements [sig [(sub-list) -> (list)] [(sub-list library-requirements-options) -> (list)]] [flags])
|
||||
(library-search-handler [sig [() -> (procedure)] [(procedure) -> (void)]] [flags])
|
||||
(library-version [sig [(sub-list) -> (list)]] [flags])
|
||||
(optimize-level [sig [() -> (ufixnum)] [(sub-ufixnum) -> (void)]] [flags])
|
||||
(pretty-initial-indent [sig [() -> (ufixnum)] [(ufixnum) -> (void)]] [flags])
|
||||
|
|
35
s/syntax.ss
35
s/syntax.ss
|
@ -4697,6 +4697,17 @@
|
|||
[_ (syntax-error name "invalid library name")])))
|
||||
|
||||
(define library-search
|
||||
(lambda (who path dir* all-ext*)
|
||||
(let-values ([(src-path obj-path obj-exists?) ((library-search-handler) who path dir* all-ext*)])
|
||||
(unless (or (not src-path) (string? src-path))
|
||||
($oops 'library-search-handler "returned invalid source-file path ~s" src-path))
|
||||
(unless (or (not obj-path) (string? obj-path))
|
||||
($oops 'library-search-handler "returned invalid object-file path ~s" obj-path))
|
||||
(when (and obj-exists? (not obj-path))
|
||||
($oops 'library-search-handler "claimed object file was found but returned no object-file path"))
|
||||
(values src-path obj-path obj-exists?))))
|
||||
|
||||
(define internal-library-search
|
||||
(lambda (who path dir* all-ext*)
|
||||
(define-syntax with-message
|
||||
(syntax-rules ()
|
||||
|
@ -5001,6 +5012,24 @@
|
|||
(lambda (who path dir* all-ext*)
|
||||
(library-search who path dir* all-ext*)))
|
||||
|
||||
(set-who! default-library-search-handler
|
||||
(lambda (caller path dir* all-ext*)
|
||||
(define (string-pair? x) (and (pair? x) (string? (car x)) (string? (cdr x))))
|
||||
(unless (symbol? caller) ($oops who "~s is not a symbol" caller))
|
||||
(guard (c [else ($oops who "invalid library name ~s" path)])
|
||||
(unless (list? path) (raise #f))
|
||||
(let-values ([(path version uid) (create-library-uid path)])
|
||||
(void)))
|
||||
(unless (and (list? dir*) (andmap string-pair? dir*))
|
||||
($oops who "invalid path list ~s" dir*))
|
||||
(unless (and (list? all-ext*) (andmap string-pair? all-ext*))
|
||||
($oops who "invalid extension list ~s" all-ext*))
|
||||
(internal-library-search caller path dir* all-ext*)))
|
||||
|
||||
(set-who! library-search-handler
|
||||
($make-thread-parameter default-library-search-handler
|
||||
(lambda (x) (unless (procedure? x) ($oops who "~s is not a procedure" x)) x)))
|
||||
|
||||
(set! library-list
|
||||
(lambda ()
|
||||
(list-loaded-libraries)))
|
||||
|
@ -5160,8 +5189,8 @@
|
|||
(cond
|
||||
[(libdesc-import-code desc) =>
|
||||
(lambda (p)
|
||||
(when (eq? p 'loading)
|
||||
($oops #f "attempt to import library ~s while it is still being loaded" (libdesc-path desc)))
|
||||
(when (eq? p 'loading)
|
||||
($oops #f "attempt to import library ~s while it is still being loaded" (libdesc-path desc)))
|
||||
(libdesc-import-code-set! desc #f)
|
||||
(on-reset (libdesc-import-code-set! desc p)
|
||||
(for-each (lambda (req) (import-library (libreq-uid req))) (libdesc-import-req* desc))
|
||||
|
@ -5409,7 +5438,7 @@
|
|||
(cond
|
||||
[(string? x) (parse-string x (library-extensions) default-obj-ext)]
|
||||
[(list? x) (parse-list who x default-obj-ext)]
|
||||
[else ($oops who "invalid path list ~s" x)]))))))
|
||||
[else ($oops who "invalid extension list ~s" x)]))))))
|
||||
|
||||
(set! $install-program-desc
|
||||
(lambda (pinfo)
|
||||
|
|
10
workarea
10
workarea
|
@ -237,6 +237,16 @@ case $M in
|
|||
;;
|
||||
esac
|
||||
|
||||
workdir $W/bintar
|
||||
(cd $W/bintar; workln ../../bintar/Makefile Makefile)
|
||||
|
||||
workdir $W/rpm
|
||||
(cd $W/rpm; workln ../../rpm/Makefile Makefile)
|
||||
|
||||
workdir $W/pkg
|
||||
(cd $W/pkg; workln ../../pkg/Makefile Makefile)
|
||||
(cd $W/pkg; workln ../../pkg/rmpkg rmpkg)
|
||||
|
||||
(cd $W; workln ../LOG LOG)
|
||||
(cd $W; forceworkln2 ../nanopass nanopass)
|
||||
(cd $W; workln ../makefiles/installsh installsh)
|
||||
|
|
Loading…
Reference in New Issue
Block a user