Testing CHICKEN-5 - not sure if I've done right - Tests fail added by arthurmaciel on Sat Jun 20 18:30:03 2015
(installed latest CHICKEN 4.9.0.1) Retrieve: $ git clone git://code.call-cc.org/chicken-core $ git checkout -b chicken-5-boot chicken-5 $ make PLATFORM=linux PREFIX=. CHICKEN=/usr/local/bin/chicken boot-chicken $ make PLATFORM=linux PREFIX=. CHICKEN=./chicken-boot $ make PLATFORM=linux PREFIX=. install ;;; GCC 4.9.2 $ CSC_OPTIONS="-O0" make PLATFORM=linux PREFIX=. CHICKEN=./chicken check cd tests; sh runtests.sh ======================================== version tests ... Checking major and minor version numbers against chicken-version... ok Checking the registered feature chicken-. ... ok ======================================== compiler tests ... /home/arthur/chickens/chicken-core/tests/../chicken 'compiler-tests.scm' -output-file 'a.c' -optimize-level 0 -types ../types.db -ignore-repository -verbose -include-path /home/arthur/chickens/chicken-core/tests/.. Note: global variable `foo#bar' is only locally visible and never used Note: global variable `bla#blabla' is only locally visible and never used 'gcc' 'a.c' -o 'a.o' -c -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I/home/arthur/chickens/chicken-core/tests/.. -I"./include/chicken" rm a.c 'gcc' 'a.o' -o 'a.out' -L/home/arthur/chickens/chicken-core/tests/.. -Wl,-R/home/arthur/chickens/chicken-core/tests/.. -L"./lib" -Wl,-R"./lib" -lchicken -lm -ldl 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 Testing unsigned FFI type "unsigned-integer32" (32 bits): Can hold maximum value 4294967295... Cannot hold one more than maximum value, 4294967296... Cannot hold -1 (any fixnum negative value) Cannot hold -2^64 (any bignum negative value < smallest int64) Testing signed FFI type "integer32" (32 bits): Can hold maximum value 2147483647... Can hold minimum value -2147483648... Cannot hold one more than maximum value 2147483648... Cannot hold one less than minimum value -2147483648... Testing unsigned FFI type "unsigned-integer64" (64 bits): Can hold maximum value 18446744073709551615... Cannot hold one more than maximum value, 18446744073709551616... Cannot hold -1 (any fixnum negative value) Cannot hold -2^64 (any bignum negative value < smallest int64) Testing signed FFI type "integer64" (64 bits): Can hold maximum value 9223372036854775807... Can hold minimum value -9223372036854775808... Cannot hold one more than maximum value 9223372036854775808... Cannot hold one less than minimum value -9223372036854775808... Testing unsigned FFI type "unsigned-integer" (32 bits): Can hold maximum value 4294967295... Cannot hold one more than maximum value, 4294967296... Cannot hold -1 (any fixnum negative value) Cannot hold -2^64 (any bignum negative value < smallest int64) Testing signed FFI type "integer" (32 bits): Can hold maximum value 2147483647... Can hold minimum value -2147483648... Cannot hold one more than maximum value 2147483648... Cannot hold one less than minimum value -2147483648... Testing unsigned FFI type "unsigned-long" (64 bits): Can hold maximum value 18446744073709551615... Cannot hold one more than maximum value, 18446744073709551616... Cannot hold -1 (any fixnum negative value) Cannot hold -2^64 (any bignum negative value < smallest int64) Testing signed FFI type "long" (64 bits): Can hold maximum value 9223372036854775807... Can hold minimum value -9223372036854775808... Cannot hold one more than maximum value 9223372036854775808... Cannot hold one less than minimum value -9223372036854775808... ======================================== compiler inlining tests ... /home/arthur/chickens/chicken-core/tests/../chicken 'inlining-tests.scm' -output-file 'a.c' -optimize-level 0 -types ../types.db -ignore-repository -verbose -include-path /home/arthur/chickens/chicken-core/tests/.. -optimize-level 3 'gcc' 'a.c' -o 'a.o' -c -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I/home/arthur/chickens/chicken-core/tests/.. -I"./include/chicken" rm a.c 'gcc' 'a.o' -o 'a.out' -L/home/arthur/chickens/chicken-core/tests/.. -Wl,-R/home/arthur/chickens/chicken-core/tests/.. -L"./lib" -Wl,-R"./lib" -lchicken -lm -ldl rm a.o ======================================== optimizer tests ... /home/arthur/chickens/chicken-core/tests/../chicken 'clustering-tests.scm' -output-file 'a.c' -optimize-level 0 -types ../types.db -ignore-repository -verbose -include-path /home/arthur/chickens/chicken-core/tests/.. -clustering 'gcc' 'a.c' -o 'a.o' -c -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I/home/arthur/chickens/chicken-core/tests/.. -I"./include/chicken" rm a.c 'gcc' 'a.o' -o 'a.out' -L/home/arthur/chickens/chicken-core/tests/.. -Wl,-R/home/arthur/chickens/chicken-core/tests/.. -L"./lib" -Wl,-R"./lib" -lchicken -lm -ldl rm a.o ======================================== scrutiny tests ... /home/arthur/chickens/chicken-core/tests/../chicken 'typematch-tests.scm' -output-file 'a.c' -optimize-level 0 -types ../types.db -ignore-repository -verbose -include-path /home/arthur/chickens/chicken-core/tests/.. -specialize -no-warnings 'gcc' 'a.c' -o 'a.o' -c -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -w -I/home/arthur/chickens/chicken-core/tests/.. -I"./include/chicken" rm a.c 'gcc' 'a.o' -o 'a.out' -L/home/arthur/chickens/chicken-core/tests/.. -Wl,-R/home/arthur/chickens/chicken-core/tests/.. -L"./lib" -Wl,-R"./lib" -lchicken -lm -ldl rm a.o check fixnum 123 check string abc check symbol (quote abc) check char x check true #t check false #f check integer (+ 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 () *) + = (forall (a) (procedure (#!rest a) a)) (quote (1)) = (list fixnum) (car-alike l) = fixnum (car-alike p) = fixnum (cadr-alike l) = fixnum (cadr-alike p) = fixnum (cddr-alike l) = list (cddr-alike p) = fixnum 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)) x = (struct foo) (vector-ref (quote #(1 2 3.4)) 2) = float (vector-ref (quote #(1 2 3.4)) 0) = fixnum (##sys#vector-ref (quote #(1 2 3.4)) 2) = float (##sys#vector-ref (quote #(1 2 3.4)) 0) = fixnum (vector 1 2.3) = (vector fixnum float) (list 1 2.3) = (list fixnum float) (list-ref (list 1 2.3) 0) = fixnum (list-ref (cons 1 2.3) 0) = fixnum (list-ref (list 1 2.3) 1) = float (list-tail (list 1 2.3) 0) = (list fixnum float) (list-tail (cons 1 2.3) 0) = (pair fixnum float) (list-tail (list 1 2.3) 1) = (list float) (list-tail (cons 1 2.3) 1) = float (list-tail (list 1 2.3) 2) = null (make-vector 2) = (vector * *) (make-vector 2 a) = (vector string string) (reverse (quote ())) = null (reverse (the list (list 1 2))) = list (reverse (list 1 2)) = (list string fixnum) (reverse (cons 1 (cons 2 (quote ())))) = (list fixnum string) (f1 (quote (1))) = fixnum /home/arthur/chickens/chicken-core/tests/../chicken 'scrutiny-tests.scm' -output-file 'a.c' -optimize-level 0 -types ../types.db -ignore-repository -verbose -include-path /home/arthur/chickens/chicken-core/tests/.. -analyze-only -scrutinize -verbose --- scrutiny.expected 2015-06-14 12:25:04.659178584 -0300 +++ scrutiny.out 2015-06-20 13:27:37.572126972 -0300 @@ -1,150 +0,0 @@ - -Note: in local procedure `c', - in local procedure `b', - in toplevel procedure `a': - expected value of type boolean in conditional but were given a value of type - `number' which is always true: - -(if x 1 2) - -Note: in toplevel procedure `b': - expected value of type boolean in conditional but were given a value of type - `true' which is always true: - -(if x 1 2) - -Warning: in toplevel procedure `foo': - branches in conditional expression differ in the number of results: - -(if x (values 1 2) (values 1 2 (+ (+ ...)))) - -Warning: at toplevel: - (scrutiny-tests.scm:19) in procedure call to `bar', expected argument #2 of type `number', but was given an argument of type `symbol' - -Warning: at toplevel: - (scrutiny-tests.scm:21) in procedure call to `pp', expected 1 argument, but was given 0 arguments - -Warning: at toplevel: - expected in argument #1 of procedure call `(print (cpu-time))' a single result, but were given 2 results - -Warning: at toplevel: - expected in argument #1 of procedure call `(print (values))' a single result, but were given zero results - -Warning: at toplevel: - (scrutiny-tests.scm:27) in procedure call to `x', expected a value of type `(procedure () *)', but was given a value of type `fixnum' - -Warning: at toplevel: - (scrutiny-tests.scm:29) in procedure call to `+', expected argument #1 of type `number', but was given an argument of type `symbol' - -Warning: at toplevel: - (scrutiny-tests.scm:29) in procedure call to `+', expected argument #2 of type `number', but was given an argument of type `symbol' - -Warning: at toplevel: - assignment of value of type `fixnum' to toplevel variable `car' does not match declared type `(forall (a178) (procedure car ((pair a178 *)) a178))' - -Warning: at toplevel: - expected in `let' binding of `g10' a single result, but were given 2 results - -Warning: at toplevel: - in procedure call to `g10', expected a value of type `(procedure () *)', but was given a value of type `fixnum' - -Note: in toplevel procedure `foo': - expected value of type boolean in conditional but were given a value of type - `(procedure bar32 () *)' which is always true: - -(if bar 3 (##core#undefined)) - -Warning: in toplevel procedure `foo2': - (scrutiny-tests.scm:58) in procedure call to `string-append', expected argument #1 of type `string', but was given an argument of type `number' - -Warning: at toplevel: - (scrutiny-tests.scm:66) in procedure call to `foo3', expected argument #1 of type `string', but was given an argument of type `fixnum' - -Warning: in toplevel procedure `foo4': - (scrutiny-tests.scm:71) in procedure call to `+', expected argument #1 of type `number', but was given an argument of type `string' - -Warning: in toplevel procedure `foo5': - (scrutiny-tests.scm:77) in procedure call to `+', expected argument #1 of type `number', but was given an argument of type `string' - -Warning: in toplevel procedure `foo6': - (scrutiny-tests.scm:83) in procedure call to `+', expected argument #1 of type `number', but was given an argument of type `string' - -Warning: at toplevel: - (scrutiny-tests.scm:90) in procedure call to `+', expected argument #1 of type `number', but was given an argument of type `string' - -Warning: in toplevel procedure `foo10': - (scrutiny-tests.scm:104) in procedure call to `foo9', expected argument #1 of type `string', but was given an argument of type `number' - -Warning: in toplevel procedure `foo10': - (scrutiny-tests.scm:105) in procedure call to `+', expected argument #1 of type `number', but was given an argument of type `string' - -Note: in toplevel procedure `foo10': - expression returns a result of type `string', but is declared to return `pair', which is not a subtype - -Warning: in toplevel procedure `foo10': - (scrutiny-tests.scm:109) in procedure call to `string-append', expected argument #1 of type `string', but was given an argument of type `pair' - -Warning: in toplevel procedure `foo10': - expression returns 2 values but is declared to have a single result - -Note: in toplevel procedure `foo10': - expression returns a result of type `fixnum', but is declared to return `*', which is not a subtype - -Warning: in toplevel procedure `foo10': - expression returns zero values but is declared to have a single result of type `*' - -Warning: in toplevel procedure `foo10': - (scrutiny-tests.scm:112) in procedure call to `*', expected argument #1 of type `number', but was given an argument of type `string' - -Warning: in toplevel procedure `foo#blabla': - (scrutiny-tests.scm:137) in procedure call to `+', expected argument #2 of type `number', but was given an argument of type `symbol' - -Warning: at toplevel: - use of deprecated `deprecated-procedure' - -Warning: at toplevel: - use of deprecated `another-deprecated-procedure' - consider `replacement-procedure' - -Warning: at toplevel: - (scrutiny-tests.scm:162) in procedure call to `apply1', expected argument #2 of type `(list-of number)', but was given an argument of type `(list symbol fixnum fixnum)' - -Warning: at toplevel: - (scrutiny-tests.scm:163) in procedure call to `apply1', expected argument #2 of type `(list-of number)', but was given an argument of type `(list symbol fixnum fixnum)' - -Note: at toplevel: - (scrutiny-tests.scm:176) in procedure call to `fixnum?', the predicate is called with an argument of type - `fixnum' and will always return true - -Note: at toplevel: - (scrutiny-tests.scm:184) in procedure call to `symbol?', the predicate is called with an argument of type - `(or char string)' and will always return false - -Note: at toplevel: - (scrutiny-tests.scm:188) in procedure call to `char-or-string?', the predicate is called with an argument of type - `fixnum' and will always return false - -Note: at toplevel: - (scrutiny-tests.scm:189) in procedure call to `symbol?', the predicate is called with an argument of type - `(or char string)' and will always return false - -Note: at toplevel: - (scrutiny-tests.scm:190) in procedure call to `string?', the predicate is called with an argument of type - `fixnum' and will always return false - -Note: at toplevel: - (scrutiny-tests.scm:194) in procedure call to `symbol?', the predicate is called with an argument of type - `char' and will always return false - -Note: at toplevel: - (scrutiny-tests.scm:195) in procedure call to `string?', the predicate is called with an argument of type - `symbol' and will always return false - -Note: at toplevel: - (scrutiny-tests.scm:199) in procedure call to `symbol?', the predicate is called with an argument of type - `(or char string)' and will always return false - -Note: at toplevel: - (scrutiny-tests.scm:200) in procedure call to `string?', the predicate is called with an argument of type - `symbol' and will always return false - -Warning: redefinition of standard binding: car make: ** [check] Erro 1