Hi,
I have (somewhat belatedly) tested CHICKEN 4.9.0rc1.
* OS: OpenBSD/amd64 5.4 (RELEASE)
* C-Compiler: clang-3.3 (from packages)
* Install runs OK. Invocation "gmake PREFIX=/usr/local/ PLATFORM=bsd
C_COMPILER=clang install"
* "sudo chicken-install pastiche" works.
* Tests fail. Invocation "gmake PREFIX=/usr/local/ PLATFORM=bsd
C_COMPILER=clang check"
* See attached "typescript.txt" for details.
Best Regards,
Alexander
Script started on Tue Apr 29 23:04:36 2014
$ sudo gmake PREFIX=/usr/local PLATFORM=bsd C_COMPILER=clang check
"gmake" -f ./Makefile.bsd CONFIG= check
gmake[1]: Entering directory
`/home/alexshendi/sources/packages/chicken-4.9.0rc1'
cd tests; sh runtests.sh
======================================== compiler tests ...
/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/../chicken
'compiler-tests.scm' -output-file 'a.c' -types ../types.db -ignore-repository
-verbose -include-path
/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
Warning: in toplevel procedure `foo':
(compiler-tests.scm:9) in procedure call to `bar11', expected 0 arguments,
but was given 1 argument
Note: global variable `foo#bar' is only locally visible and never used
Note: global variable `bla#blabla' is only locally visible and never used
'clang' 'a.c' -o 'a.o' -c -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H
-DC_ENABLE_PTABLES -Os -fomit-frame-pointer
-I/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
-I"/usr/local//include/chicken"
rm a.c
'clang' 'a.o' -o 'a.out'
-L/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
-Wl,-R/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
-L"/usr/local//lib" -Wl,-R"/usr/local//lib" -lchicken -lm -lpthread
rm a.o
12
12
12
12
12
bar
1 2 3
1 2 3 :1:2:3
1 2 3
Good, unrepresentable C strings cause errors
======================================== compiler inlining tests ...
/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/../chicken
'inlining-tests.scm' -output-file 'a.c' -types ../types.db -ignore-repository
-verbose -include-path
/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/.. -optimize-level 3
'clang' 'a.c' -o 'a.o' -c -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H
-DC_ENABLE_PTABLES -Os -fomit-frame-pointer
-I/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
-I"/usr/local//include/chicken"
rm a.c
'clang' 'a.o' -o 'a.out'
-L/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
-Wl,-R/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
-L"/usr/local//lib" -Wl,-R"/usr/local//lib" -lchicken -lm -lpthread
rm a.o
======================================== scrutiny tests ...
/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/../chicken
'typematch-tests.scm' -output-file 'a.c' -types ../types.db -ignore-repository
-verbose -include-path
/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/.. -specialize
-no-warnings
'clang' 'a.c' -o 'a.o' -c -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H
-DC_ENABLE_PTABLES -Os -fomit-frame-pointer -w
-I/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
-I"/usr/local//include/chicken"
rm a.c
'clang' 'a.o' -o 'a.out'
-L/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
-Wl,-R/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
-L"/usr/local//lib" -Wl,-R"/usr/local//lib" -lchicken -lm -lpthread
rm a.o
check fixnum 123
check string abc
check symbol (quote abc)
check char x
check true #t
check false #f
check number (+ 1 2)
check (list fixnum) (quote (1))
check (list symbol) (quote (a))
check (list fixnum) (list 1)
check pair (quote (1 . 2))
check procedure +
check vector (quote #(1))
check null (quote ())
check input-port (current-input-port)
check blob (make-blob 10)
check pointer (address->pointer 0)
check pointer-vector (make-pointer-vector 1)
check locative (make-locative a)
check (struct promise) (##sys#make-structure (quote promise))
check (pair fixnum float) (quote (1 . 2.3))
check (vector symbol) (quote #(a))
check (list string) (quote (ok))
specialize fixnum
specialize not fixnum
specialize string
specialize not string
specialize symbol
specialize not symbol
specialize char
specialize not char
specialize true
specialize not true
specialize false
specialize not false
specialize (list fixnum)
specialize not (list fixnum)
specialize pair
specialize not pair
specialize procedure
specialize not procedure
specialize (vector fixnum)
specialize not (vector fixnum)
specialize null
specialize not null
specialize undefined
specialize not undefined
specialize input-port
specialize not input-port
specialize blob
specialize not blob
specialize pointer
specialize not pointer
specialize pointer-vector
specialize not pointer-vector
specialize locative
specialize not locative
specialize (struct promise)
specialize not (struct promise)
specialize (pair fixnum float)
specialize not (pair fixnum float)
specialize (vector symbol)
specialize not (vector symbol)
specialize (or (list fixnum) symbol)
specialize not (or (list fixnum) symbol)
specialize (list fixnum)
specialize not (list fixnum)
specialize (or null pair)
specialize not (or null pair)
check predicate true boolean?
check predicate false boolean?
check predicate pair pair?
check predicate null null?
check predicate symbol symbol?
check predicate number number?
check predicate number number?
check predicate fixnum exact?
check predicate number real?
check predicate number complex?
check predicate float inexact?
check predicate char char?
check predicate string string?
check predicate vector vector?
check predicate procedure procedure?
check predicate blob blob?
check predicate (struct condition) condition?
check predicate fixnum fixnum?
check predicate float flonum?
check predicate input-port input-port?
check predicate pointer-vector pointer-vector?
check predicate pointer pointer?
list != null
null != list
pair != null
null != pair
pair != list
list != pair
(procedure (*) *) != (procedure () *)
(procedure () *) != (procedure (*) *)
(procedure (#!rest) . *) = (procedure (*) . *)
(procedure (*) . *) = (procedure (#!rest) . *)
(procedure () *) != (procedure () * *)
(procedure () * *) != (procedure () *)
specialize pair
specialize not pair
specialize (not pair)
specialize not (not pair)
specialize (not pair)
specialize not (not pair)
specialize (pair * pair)
specialize not (pair * pair)
specialize (pair * list)
specialize not (pair * list)
specialize (pair * (pair * null))
specialize not (pair * (pair * null))
specialize (pair * (pair * (not pair)))
specialize not (pair * (pair * (not pair)))
specialize (pair * (pair * (not null)))
specialize not (pair * (pair * (not null)))
specialize (pair * (pair * fixnum))
specialize not (pair * (pair * fixnum))
(pair * null) = (list *)
(list *) = (pair * null)
(pair * (list *)) = (list * *)
(list * *) = (pair * (list *))
(pair * (list fixnum)) = (list * fixnum)
(list * fixnum) = (pair * (list fixnum))
(pair fixnum (list *)) = (list fixnum *)
(list fixnum *) = (pair fixnum (list *))
(pair fixnum (pair * null)) = (list fixnum *)
(list fixnum *) = (pair fixnum (pair * null))
(pair fixnum (pair fixnum null)) = (list fixnum fixnum)
(list fixnum fixnum) = (pair fixnum (pair fixnum null))
(pair char (list fixnum)) = (list char fixnum)
(list char fixnum) = (pair char (list fixnum))
(pair fixnum (list char)) = (list fixnum char)
(list fixnum char) = (pair fixnum (list char))
(pair fixnum (list fixnum)) = (list fixnum fixnum)
(list fixnum fixnum) = (pair fixnum (list fixnum))
(pair * *) != list
list != (pair * *)
(pair * list) != list
list != (pair * list)
(pair fixnum *) != (list-of *)
(list-of *) != (pair fixnum *)
(pair fixnum *) != (list-of fixnum)
(list-of fixnum) != (pair fixnum *)
(pair fixnum (list-of *)) != (list-of fixnum)
(list-of fixnum) != (pair fixnum (list-of *))
(pair fixnum (list-of fixnum)) != (list-of fixnum)
(list-of fixnum) != (pair fixnum (list-of fixnum))
(pair char (list-of fixnum)) != (list-of fixnum)
(list-of fixnum) != (pair char (list-of fixnum))
(pair fixnum (list-of char)) != (list-of fixnum)
(list-of fixnum) != (pair fixnum (list-of char))
(pair fixnum (list-of fixnum)) != (list-of fixnum)
(list-of fixnum) != (pair fixnum (list-of fixnum))
/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/../chicken
'scrutiny-tests.scm' -output-file 'a.c' -types ../types.db -ignore-repository
-verbose -include-path
/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/.. -analyze-only
-scrutinize -verbose
/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/../chicken
'scrutiny-tests-2.scm' -output-file 'a.c' -types ../types.db -ignore-repository
-verbose -include-path
/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/.. -analyze-only
-scrutinize -analyze-only -verbose
/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/../chicken
'scrutiny-tests-3.scm' -output-file 'a.c' -types ../types.db -ignore-repository
-verbose -include-path
/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/.. -specialize -block
'clang' 'a.c' -o 'a.o' -c -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H
-DC_ENABLE_PTABLES -Os -fomit-frame-pointer
-I/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
-I"/usr/local//include/chicken"
rm a.c
'clang' 'a.o' -o 'a.out'
-L/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
-Wl,-R/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
-L"/usr/local//lib" -Wl,-R"/usr/local//lib" -lchicken -lm -lpthread
rm a.o
/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/../chicken
'scrutiny-tests-strict.scm' -output-file 'a.c' -types ../types.db
-ignore-repository -verbose -include-path
/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/.. -strict-types
-specialize
'clang' 'a.c' -o 'a.o' -c -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H
-DC_ENABLE_PTABLES -Os -fomit-frame-pointer
-I/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
-I"/usr/local//include/chicken"
rm a.c
'clang' 'a.o' -o 'a.out'
-L/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
-Wl,-R/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
-L"/usr/local//lib" -Wl,-R"/usr/local//lib" -lchicken -lm -lpthread
rm a.o
======================================== specialization tests ...
/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/../chicken
'specialization-test-1.scm' -output-file 'a.c' -types ../types.db
-ignore-repository -verbose -include-path
/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/.. -emit-type-file
foo.types -specialize -debug ox -emit-import-library foo
hiding nonexported module bindings: foo#spec
hiding nonexported module bindings: foo#spec20
generating import library `foo.import.scm' for module `foo' ...
eliminated procedure checks: 6
eliminated procedure checks: 1
Note: at toplevel:
expression returns a result of type `null', but is declared to return
`undefined', which is not a subtype
specializations:
1 (set-cdr! pair *)
1 (foo#spec fixnum)
1 (= fixnum fixnum)
1 (foo#bar fixnum)
2 (zero? fixnum)
safe globals: (foo#bar foo#foo)
Note: global variable `foo#spec' is only locally visible and never used
removed side-effect free assignment to unused variable: foo#spec
contracted procedure: foo#spec20
substituted constant variable: a321
substituted constant variable: a327
substituted constant variable: a325
replaced variables: 27
removed binding forms: 17
substituted constant variable: x23
folded constant expression: (+ (quote 1) (quote 1))
removed binding forms: 26
replaced variables: 1
removed binding forms: 1
removed binding forms: 1
contracted procedure: k318
removed binding forms: 1
substituted constant variable: r319
folded constant expression: (= (quote 2) (quote 2))
contracted procedure: k268
removed binding forms: 2
substituted constant variable: r269
substituted constant variable: r269
removed conditional forms: 1
contracted procedure: k271
removed binding forms: 2
removed binding forms: 1
simplifications: ((##core#call . 9))
call simplifications:
eq? 3
##sys#setslot
list?
not
list 2
null?
contracted procedure: k241
contracted procedure: k247
contracted procedure: k253
contracted procedure: k274
contracted procedure: k277
contracted procedure: k309
contracted procedure: k280
contracted procedure: k302
contracted procedure: k286
removed binding forms: 9
substituted constant variable: r303
replaced variables: 3
removed binding forms: 2
calls to known targets: 5
'clang' 'a.c' -o 'a.o' -c -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H
-DC_ENABLE_PTABLES -Os -fomit-frame-pointer
-I/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
-I"/usr/local//include/chicken"
rm a.c
'clang' 'a.o' -o 'a.out'
-L/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
-Wl,-R/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
-L"/usr/local//lib" -Wl,-R"/usr/local//lib" -lchicken -lm -lpthread
rm a.o
foo: 1
bar: 1.0
/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/../chicken
'specialization-test-2.scm' -output-file 'a.c' -types ../types.db
-ignore-repository -verbose -include-path
/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/.. -types foo.types
-specialize -debug ox
eliminated procedure checks: 3
specializations:
1 (##sys#call-with-values (procedure () *) *)
1 (zero? fixnum)
1 (= fixnum fixnum)
1 (foo#bar fixnum)
merged explicitly consed rest parameter: args1927
consed rest parameter at call site: tmp2208 1
contracted procedure: tmp1207
substituted constant variable: a303
substituted constant variable: a301
replaced variables: 16
removed binding forms: 9
removed binding forms: 16
simplifications: ((##core#call . 5))
call simplifications:
##sys#apply
car
string-length
eq? 2
contracted procedure: k220
contracted procedure: k229
contracted procedure: k236
removed binding forms: 3
customizable procedures: (tmp2208)
calls to known targets: 3
'clang' 'a.c' -o 'a.o' -c -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H
-DC_ENABLE_PTABLES -Os -fomit-frame-pointer
-I/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
-I"/usr/local//include/chicken"
rm a.c
'clang' 'a.o' -o 'a.out'
-L/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
-Wl,-R/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
-L"/usr/local//lib" -Wl,-R"/usr/local//lib" -lchicken -lm -lpthread
rm a.o
======================================== specialization benchmark ...
/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/../chicken 'fft.scm'
-output-file 'fft1.c' -types ../types.db -ignore-repository -verbose
-include-path /home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
-optimize-level 2 -local -debug-level 0 -disable-interrupts -block
'clang' 'fft1.c' -o 'fft1.o' -c -fno-strict-aliasing -fwrapv
-DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer
-I/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
-I"/usr/local//include/chicken"
rm fft1.c
'clang' 'fft1.o' -o 'fft1'
-L/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
-Wl,-R/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
-L"/usr/local//lib" -Wl,-R"/usr/local//lib" -lchicken -lm -lpthread
rm fft1.o
/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/../chicken 'fft.scm'
-output-file 'fft2.c' -types ../types.db -ignore-repository -verbose
-include-path /home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
-optimize-level 2 -local -specialize -debug x -debug-level 0
-disable-interrupts -block -specialize
'clang' 'fft2.c' -o 'fft2.o' -c -fno-strict-aliasing -fwrapv
-DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer
-I/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
-I"/usr/local//include/chicken"
rm fft2.c
'clang' 'fft2.o' -o 'fft2'
-L/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
-Wl,-R/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
-L"/usr/local//lib" -Wl,-R"/usr/local//lib" -lchicken -lm -lpthread
rm fft2.o
normal:
0m0.49s real 0m0.49s user 0m0.00s system
specialized:
0m0.26s real 0m0.26s user 0m0.00s system
======================================== callback tests ...
/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/../chicken
'callback-tests.scm' -output-file 'a.c' -types ../types.db -ignore-repository
-verbose -include-path
/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
'clang' 'a.c' -o 'a.o' -c -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H
-DC_ENABLE_PTABLES -Os -fomit-frame-pointer
-I/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
-I"/usr/local//include/chicken"
rm a.c
'clang' 'a.o' -o 'a.out'
-L/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
-Wl,-R/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
-L"/usr/local//lib" -Wl,-R"/usr/local//lib" -lchicken -lm -lpthread
rm a.o
callbacks ...
hi!
callbacks ...
hi!
hi!
[panic] callback returned twice - execution terminated
callback-tests.scm:16: print
callback-tests.scm:17: ##sys#gc
callback-tests.scm:17: g11
callback-tests.scm:7: call/cc
callback-tests.scm:9: print
callback-tests.scm:19: command-line-arguments
callback-tests.scm:20: k1
callback-tests.scm:9: print <--
double-return from callback failed as it should.
======================================== runtime tests ...
many arguments supported.
testing 'apply' with 0..2048 (maximum apply argument count)...
If this segfaults on x86-64, try updating GCC (4.5 has a code-generation bug):
invoking directly with 0..50...
invoking directly with 1998..2048 (maximum interpreted direct argument count)...
testing 'apply' can detect calls of too many arguments...
testing direct invocation can detect calls of too many arguments...
/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/../chicken
'apply-test.scm' -output-file 'a.c' -types ../types.db -ignore-repository
-verbose -include-path
/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
'clang' 'a.c' -o 'a.o' -c -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H
-DC_ENABLE_PTABLES -Os -fomit-frame-pointer
-I/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
-I"/usr/local//include/chicken"
rm a.c
'clang' 'a.o' -o 'a.out'
-L/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
-Wl,-R/home/alexshendi/sources/packages/chicken-4.9.0rc1/tests/..
-L"/usr/local//lib" -Wl,-R"/usr/local//lib" -lchicken -lm -lpthread
rm a.o
many arguments supported.
testing 'apply' with 0..2048 (maximum apply argument count)...
If this segfaults on x86-64, try updating GCC (4.5 has a code-generation bug):
invoking directly with 0..50...
invoking directly with 1998..2048 (maximum compiled direct argument count)...
[panic] unrecoverable segmentation violation - execution terminated
...more...
apply-test.scm:20: last
apply-test.scm:42: foo
apply-test.scm:20: last
apply-test.scm:42: foo
apply-test.scm:20: last
apply-test.scm:42: ##sys#check-output-port
apply-test.scm:42: ##sys#print
apply-test.scm:42: ##sys#print
apply-test.scm:42: ##sys#print
apply-test.scm:42: ##sys#print
apply-test.scm:42: ##sys#print
apply-test.scm:42: ##sys#print
apply-test.scm:42: ##sys#print
apply-test.scm:42: foo
apply-test.scm:20: last
apply-test.scm:42: foo <--
gmake[1]: *** [check] Error 1
gmake[1]: Leaving directory `/home/alexshendi/sources/packages/chicken-4.9.0rc1'
gmake: *** [check] Error 2
$ ^D
Script done on Tue Apr 29 23:06:20 2014
_______________________________________________
Chicken-users mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/chicken-users