LOGPRO RESULTS
Summary is here
(processed by logpro version 1.15, tool details at: logpro)
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 ...
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'compiler-tests.scm' -output-file 'a.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/..

Warning: in toplevel procedure `foo':
  (compiler-tests.scm:9) in procedure call to `bar', expected 0 arguments but was given 1 argument
'gcc' 'a.c' -o 'a.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm a.c
'gcc' 'a.o' -o 'a.out' -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
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  ...
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'inlining-tests.scm' -output-file 'a.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/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/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm a.c
'gcc' 'a.o' -o 'a.out' -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm a.o
======================================== scrutiny tests ...
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'typematch-tests.scm' -output-file 'a.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/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/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm a.c
'gcc' 'a.o' -o 'a.out' -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
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?
null = list
(list *) = list
(vector *) = vector
list != null
list != (list *)
vector != (vector *)
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 pair
specialize not pair
specialize pair
specialize not pair
specialize (not pair)
specialize not (not pair)
specialize (not pair)
specialize not (not pair)
specialize (not pair)
specialize not (not pair)
specialize list
specialize not list
specialize (not list)
specialize not (not list)
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-copy (list 1 2.3)) = (list fixnum float)
(list-copy (cons 1 2.3)) = (pair fixnum float)
(list-copy 1) = fixnum
(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
(drop (list 1 2.3) 0) = (list fixnum float)
(drop (cons 1 2.3) 0) = (pair fixnum float)
(drop (list 1 2.3) 1) = (list float)
(drop (cons 1 2.3) 1) = float
(drop (list 1 2.3) 2) = null
(take (list 1 2.3) 0) = null
(take (cons 1 2.3) 0) = null
(take (list 1 2.3) 1) = (list fixnum)
(take (cons 1 2.3) 1) = (list fixnum)
(take (list 1 2.3) 2) = (list fixnum float)
(make-list 2) = (list * *)
(make-list 2 a) = (list string string)
(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
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'scrutiny-tests.scm' -output-file 'a.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -analyze-only -verbose
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'specialization-tests.scm' -output-file 'a.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -analyze-only -verbose -specialize
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'scrutiny-tests-2.scm' -output-file 'a.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -analyze-only -scrutinize -analyze-only -verbose
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'scrutiny-tests-3.scm' -output-file 'a.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -specialize -block

Note: at toplevel:
  expected a value of type boolean in conditional, but was given a value of type `true' which is always true:

(if tmp
  tmp
  (##sys#error
    "(scrutiny-tests-3.scm:9) assertion failed"
    '(compiler-typecase vec ... ...)))
'gcc' 'a.c' -o 'a.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm a.c
'gcc' 'a.o' -o 'a.out' -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm a.o
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'scrutiny-tests-strict.scm' -output-file 'a.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -strict-types -specialize
'gcc' 'a.c' -o 'a.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm a.c
'gcc' 'a.o' -o 'a.out' -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm a.o
======================================== specialization tests ...
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'specialization-test-1.scm' -output-file 'a.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.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 
hiding nonexported module bindings: foo#abc 
hiding nonexported module bindings: foo#abc46 
hiding nonexported module bindings: foo#abc51 
hiding nonexported module bindings: foo#+58 
generating import library `foo.import.scm' for module `foo' ...
eliminated procedure checks: 10 
eliminated procedure checks: 1 

Note: at toplevel:
  expected a value of type boolean in conditional, but was given a value of type `true' which is always true:

(if #t 'a "a")
specializations:
  1 (+)
  1 (foo#abc number)
  1 (set-cdr! pair *)
  1 (foo#spec fixnum)
  1 (= fixnum fixnum)
  1 (foo#bar fixnum)
  2 (zero? fixnum)
safe calls: 31 
dropped branches: 1 
safe globals: (foo#bar foo#foo) 
removed side-effect free assignment to unused variable: foo#spec 
removed side-effect free assignment to unused variable: foo#abc 
removed side-effect free assignment to unused variable: foo#abc51 
contracted procedure: foo#+58 
contracted procedure: foo#abc46 
substituted constant variable: a400 
contracted procedure: "(specialization-test-1.scm:51) g3435" 
contracted procedure: foo#spec20 
substituted constant variable: a438 
substituted constant variable: a444 
substituted constant variable: a442 
replaced variables: 40 
removed binding forms: 29 
substituted constant variable: x23 
folded constant expression: (+ (quote 1) (quote 1)) 
replaced variables: 2 
removed binding forms: 42 
replaced variables: 2 
removed binding forms: 3 
contracted procedure: k369 
contracted procedure: k394 
removed binding forms: 4 
substituted constant variable: r395 
folded constant expression: (= (quote 1) (quote 1)) 
substituted constant variable: r370 
substituted constant variable: r370 
contracted procedure: k435 
removed binding forms: 1 
removed conditional forms: 1 
contracted procedure: k372 
contracted procedure: k378 
substituted constant variable: r436 
folded constant expression: (= (quote 2) (quote 2)) 
removed binding forms: 4 
contracted procedure: k327 
substituted constant variable: r379 
substituted constant variable: r379 
removed binding forms: 3 
removed conditional forms: 1 
contracted procedure: k381 
substituted constant variable: r328 
substituted constant variable: r328 
removed binding forms: 2 
removed conditional forms: 1 
contracted procedure: k330 
removed binding forms: 3 
removed binding forms: 1 
simplifications: ((##core#call . 11)) 
  call simplifications:
    eq?	3
    ##sys#setslot
    list?
    not
    list	2
    null?
    ##sys#call-with-values
    equal?
contracted procedure: k300 
contracted procedure: k306 
contracted procedure: k312 
contracted procedure: k333 
contracted procedure: k336 
contracted procedure: k426 
contracted procedure: k339 
contracted procedure: k419 
contracted procedure: k345 
contracted procedure: k354 
removed binding forms: 10 
substituted constant variable: r420 
replaced variables: 3 
removed binding forms: 2 
calls to known targets: 6 
'gcc' 'a.c' -o 'a.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm a.c
'gcc' 'a.o' -o 'a.out' -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm a.o
foo: 1
bar: 1.0
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'specialization-test-2.scm' -output-file 'a.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -types foo.types -types specialization-test-2.types -feature chicken-bootstrap -specialize -debug ox
eliminated procedure checks: 4 
specializations:
  1 (specialize-me fixnum)
  1 (##sys#call-with-values (procedure () *) *)
  1 (zero? fixnum)
  2 (= fixnum fixnum)
  1 (foo#bar fixnum)
safe calls: 14 
substituted constant variable: a295 
substituted constant variable: a296 
folded constant expression: (eq? (quote 123) (quote 123)) 
merged explicitly consed rest parameter: args1927 
consed rest parameter at call site: tmp2234 1 
contracted procedure: tmp1233 
substituted constant variable: a346 
substituted constant variable: a344 
replaced variables: 20 
removed binding forms: 11 
contracted procedure: k280 
removed binding forms: 22 
substituted constant variable: r281 
substituted constant variable: r281 
removed conditional forms: 1 
contracted procedure: k283 
removed binding forms: 2 
removed binding forms: 1 
simplifications: ((##core#call . 5)) 
  call simplifications:
    ##sys#apply
    car
    string-length
    eq?	2
contracted procedure: k246 
contracted procedure: k255 
contracted procedure: k262 
removed binding forms: 3 
customizable procedures: (tmp2234) 
calls to known targets: 3 
'gcc' 'a.c' -o 'a.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm a.c
'gcc' 'a.o' -o 'a.out' -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm a.o
======================================== specialization benchmark ...
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'fft.scm' -output-file 'fft1.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -optimize-level 2 -local -debug-level 0 -disable-interrupts -block
'gcc' 'fft1.c' -o 'fft1.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm fft1.c
'gcc' 'fft1.o' -o 'fft1' -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm fft1.o
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'fft.scm' -output-file 'fft2.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -optimize-level 2 -local -specialize -debug x -debug-level 0 -disable-interrupts -block -specialize
'gcc' 'fft2.c' -o 'fft2.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm fft2.c
'gcc' 'fft2.o' -o 'fft2' -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm fft2.o
normal:
real	0m 0.59s
user	0m 0.56s
sys	0m 0.00s
specialized:
real	0m 0.35s
user	0m 0.34s
sys	0m 0.00s
======================================== callback tests ...
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'callback-tests.scm' -output-file 'a.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/..
'gcc' 'a.c' -o 'a.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm a.c
'gcc' 'a.o' -o 'a.out' -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm a.o
callbacks ...
hi!
callbacks ...
hi!
hi!
double-return from callback failed as it should.
======================================== runtime tests ...
testing 'apply' with 0..2000...
testing 'apply' with 10000...
invoking directly with 0..50 (Lower edge case)...
invoking directly with 1950..2000 (Higher edge case)...
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'apply-test.scm' -output-file 'a.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/..
'gcc' 'a.c' -o 'a.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm a.c
'gcc' 'a.o' -o 'a.out' -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm a.o
testing 'apply' with 0..2000...
testing 'apply' with 10000...
invoking directly with 0..50 (Lower edge case)...
invoking directly with 1950..2000 (Higher edge case)...
apply test with limited temp stack failed as it should.
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'test-gc-hooks.scm' -output-file 'a.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/..
'gcc' 'a.c' -o 'a.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm a.c
'gcc' 'a.o' -o 'a.out' -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm a.o

	0x000000000003af68

	0x000000000003af68

	0x000000000003af68

	0x000000000003afb8
major gc ...
>>>>> GC pre hook - mode=0, count=0
<<<<< GC post hook - mode=1, count=0, ms=3
minor gc ...
>>>>> GC pre hook - mode=0, count=0
<<<<< GC post hook - mode=0, count=0, ms=0
alloc ...
>>>>> GC pre hook - mode=0, count=0
<<<<< GC post hook - mode=1, count=0, ms=0
>>>>> GC pre hook - mode=2, count=0
<<<<< GC post hook - mode=2, count=0, ms=0
>>>>> GC pre hook - mode=2, count=0
<<<<< GC post hook - mode=2, count=0, ms=0
resize ...
>>>>> GC pre hook - mode=2, count=0
<<<<< GC post hook - mode=2, count=0, ms=0
major gc ...
>>>>> GC pre hook - mode=0, count=0
>>>>> GC pre hook - mode=2, count=1
<<<<< GC post hook - mode=2, count=1, ms=0
<<<<< GC post hook - mode=1, count=0, ms=7
minor gc ...
>>>>> GC pre hook - mode=0, count=0
<<<<< GC post hook - mode=0, count=0, ms=0
>>>>> GC pre hook - mode=0, count=0
>>>>> GC pre hook - mode=2, count=1
<<<<< GC post hook - mode=2, count=1, ms=0
<<<<< GC post hook - mode=1, count=0, ms=0
======================================== library tests ...
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'library-tests.scm' -output-file 'a.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -specialize

Note: at toplevel:
  expected a value of type boolean in conditional, but was given a value of type `true' which is always true:

(if tmp tmp (##sys#error "(library-tests.scm:12) assertion failed" '(not ...)))

Warning: in local unknown procedure,
  in local unknown procedure,
  in toplevel unknown procedure:
  (library-tests.scm:27) in procedure call to `finite?', expected argument #1 of type `number' but was given an argument of type `symbol'

Warning: in local unknown procedure,
  in local unknown procedure,
  in toplevel unknown procedure:
  (library-tests.scm:51) in procedure call to `exact?', expected argument #1 of type `number' but was given an argument of type `symbol'

Warning: in local unknown procedure,
  in local unknown procedure,
  in toplevel unknown procedure:
  (library-tests.scm:55) in procedure call to `inexact?', expected argument #1 of type `number' but was given an argument of type `symbol'

Warning: in local unknown procedure,
  in local unknown procedure,
  in toplevel unknown procedure:
  (library-tests.scm:126) in procedure call to `even?', expected argument #1 of type `number' but was given an argument of type `symbol'

Warning: in local unknown procedure,
  in local unknown procedure,
  in toplevel unknown procedure:
  (library-tests.scm:127) in procedure call to `odd?', expected argument #1 of type `number' but was given an argument of type `symbol'

Warning: in local unknown procedure,
  in local unknown procedure,
  in toplevel unknown procedure:
  (library-tests.scm:198) in procedure call to `min', expected argument #1 of type `number' but was given an argument of type `symbol'

Warning: in local unknown procedure,
  in local unknown procedure,
  in toplevel unknown procedure:
  (library-tests.scm:199) in procedure call to `max', expected argument #1 of type `number' but was given an argument of type `symbol'

Warning: in local unknown procedure,
  in local unknown procedure,
  in toplevel unknown procedure:
  (library-tests.scm:666) in procedure call to `assq', expected argument #2 of type `(list-of pair)' but was given an argument of type `(list symbol)'

Warning: in local unknown procedure,
  in local unknown procedure,
  in toplevel unknown procedure:
  (library-tests.scm:667) in procedure call to `assq', expected argument #2 of type `(list-of pair)' but was given an argument of type `symbol'

Warning: in local unknown procedure,
  in local unknown procedure,
  in toplevel unknown procedure:
  (library-tests.scm:672) in procedure call to `assv', expected argument #2 of type `(list-of pair)' but was given an argument of type `(list symbol)'

Warning: in local unknown procedure,
  in local unknown procedure,
  in toplevel unknown procedure:
  (library-tests.scm:673) in procedure call to `assv', expected argument #2 of type `(list-of pair)' but was given an argument of type `symbol'

Warning: in local unknown procedure,
  in local unknown procedure,
  in toplevel unknown procedure:
  (library-tests.scm:677) in procedure call to `assoc', expected argument #2 of type `(list-of pair)' but was given an argument of type `(list string)'

Warning: in local unknown procedure,
  in local unknown procedure,
  in toplevel unknown procedure:
  (library-tests.scm:678) in procedure call to `assoc', expected argument #2 of type `(list-of pair)' but was given an argument of type `string'

Warning: in local unknown procedure,
  in local unknown procedure,
  in toplevel unknown procedure:
  (library-tests.scm:685) in procedure call to `memq', expected argument #2 of type `list' but was given an argument of type `symbol'

Warning: in local unknown procedure,
  in local unknown procedure,
  in toplevel unknown procedure:
  (library-tests.scm:690) in procedure call to `memv', expected argument #2 of type `list' but was given an argument of type `symbol'

Warning: in local unknown procedure,
  in local unknown procedure,
  in toplevel unknown procedure:
  (library-tests.scm:695) in procedure call to `member', expected argument #2 of type `list' but was given an argument of type `string'
'gcc' 'a.c' -o 'a.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm a.c
'gcc' 'a.o' -o 'a.out' -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm a.o
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'records-and-setters-test.scm' -output-file 'a.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/..
'gcc' 'a.c' -o 'a.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm a.c
'gcc' 'a.o' -o 'a.out' -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm a.o
======================================== reader tests ...
======================================== dynamic-wind tests ...
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'dwindtst.scm' -output-file 'a.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/..
'gcc' 'a.c' -o 'a.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm a.c
'gcc' 'a.o' -o 'a.out' -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm a.o
*** Skipping "feeley-dynwind" for now ***
======================================== lolevel tests ...

old: "\x00yoя"
new: "яoy\x00"

old: #(yo 1 2 #f #t (1 2 3) #(1 2 3))
new: #(#(1 2 3) (1 2 3) #t #f 2 1 yo)

old: #u8(0 1 2 254 255)
new: #u8(255 254 2 1 0)

old: #s8(-128 -127 -2 -1 0 1 2 126 127)
new: #s8(127 126 2 1 0 -1 -2 -127 -128)

old: #u16(0 1 2 65534 65535)
new: #u16(65535 65534 2 1 0)

old: #s16(-32768 -32767 -2 -1 0 1 2 32766 32767)
new: #s16(32767 32766 2 1 0 -1 -2 -32767 -32768)

old: #u32(0 1 2 4294967294 4294967295)
new: #u32(4294967295 4294967294 2 1 0)

old: #s32(-2147483648 -2147483647 -2 -1 0 1 2 2147483646 2147483647)
new: #s32(2147483647 2147483646 2 1 0 -1 -2 -2147483647 -2147483648)

old: #f32(-inf.0 -2.0 -1.0 0.0 1.0 2.0 +inf.0)
new: #f32(+inf.0 2.0 1.0 0.0 -1.0 -2.0 -inf.0)

old: #f64(-1e+200 -2.0 -1.0 0.0 1.0 2.0 1e+200)
new: #f64(1e+200 2.0 1.0 0.0 -1.0 -2.0 -1e+200)
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'lolevel-tests.scm' -output-file 'a.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -specialize

Note: at toplevel:
  (lolevel-tests.scm:59) in procedure call to `pointer-like?', the predicate is called with an argument of type `(procedure allocate (fixnum) (or false pointer))' and will always return true

Note: at toplevel:
  expected a value of type boolean in conditional, but was given a value of type `true' which is always true:

(if tmp
  tmp
  (##sys#error
    "(lolevel-tests.scm:59) assertion failed"
    '(pointer-like? allocate)))

Note: in toplevel procedure `doloop151':
  (lolevel-tests.scm:172) in procedure call to `locative?', the predicate is called with an argument of type `locative' and will always return true

Note: in toplevel procedure `doloop151':
  expected a value of type boolean in conditional, but was given a value of type `true' which is always true:

(if tmp
  tmp
  (##sys#error
    "(lolevel-tests.scm:172) assertion failed"
    '(locative? loc-src)))

Note: in toplevel procedure `doloop151':
  (lolevel-tests.scm:172) in procedure call to `locative?', the predicate is called with an argument of type `locative' and will always return true

Note: in toplevel procedure `doloop151':
  expected a value of type boolean in conditional, but was given a value of type `true' which is always true:

(if tmp
  tmp
  (##sys#error
    "(lolevel-tests.scm:172) assertion failed"
    '(locative? loc-dst)))

Note: in toplevel procedure `doloop213':
  (lolevel-tests.scm:173) in procedure call to `locative?', the predicate is called with an argument of type `locative' and will always return true

Note: in toplevel procedure `doloop213':
  expected a value of type boolean in conditional, but was given a value of type `true' which is always true:

(if tmp
  tmp
  (##sys#error
    "(lolevel-tests.scm:173) assertion failed"
    '(locative? loc-src)))

Note: in toplevel procedure `doloop213':
  (lolevel-tests.scm:173) in procedure call to `locative?', the predicate is called with an argument of type `locative' and will always return true

Note: in toplevel procedure `doloop213':
  expected a value of type boolean in conditional, but was given a value of type `true' which is always true:

(if tmp
  tmp
  (##sys#error
    "(lolevel-tests.scm:173) assertion failed"
    '(locative? loc-dst)))

Note: in toplevel procedure `doloop282':
  (lolevel-tests.scm:174) in procedure call to `locative?', the predicate is called with an argument of type `locative' and will always return true

Note: in toplevel procedure `doloop282':
  expected a value of type boolean in conditional, but was given a value of type `true' which is always true:

(if tmp
  tmp
  (##sys#error
    "(lolevel-tests.scm:174) assertion failed"
    '(locative? loc-src)))

Note: in toplevel procedure `doloop282':
  (lolevel-tests.scm:174) in procedure call to `locative?', the predicate is called with an argument of type `locative' and will always return true

Note: in toplevel procedure `doloop282':
  expected a value of type boolean in conditional, but was given a value of type `true' which is always true:

(if tmp
  tmp
  (##sys#error
    "(lolevel-tests.scm:174) assertion failed"
    '(locative? loc-dst)))

Note: in toplevel procedure `doloop345':
  (lolevel-tests.scm:175) in procedure call to `locative?', the predicate is called with an argument of type `locative' and will always return true

Note: in toplevel procedure `doloop345':
  expected a value of type boolean in conditional, but was given a value of type `true' which is always true:

(if tmp
  tmp
  (##sys#error
    "(lolevel-tests.scm:175) assertion failed"
    '(locative? loc-src)))

Note: in toplevel procedure `doloop345':
  (lolevel-tests.scm:175) in procedure call to `locative?', the predicate is called with an argument of type `locative' and will always return true

Note: in toplevel procedure `doloop345':
  expected a value of type boolean in conditional, but was given a value of type `true' which is always true:

(if tmp
  tmp
  (##sys#error
    "(lolevel-tests.scm:175) assertion failed"
    '(locative? loc-dst)))

Note: in toplevel procedure `doloop420':
  (lolevel-tests.scm:176) in procedure call to `locative?', the predicate is called with an argument of type `locative' and will always return true

Note: in toplevel procedure `doloop420':
  expected a value of type boolean in conditional, but was given a value of type `true' which is always true:

(if tmp
  tmp
  (##sys#error
    "(lolevel-tests.scm:176) assertion failed"
    '(locative? loc-src)))

Note: in toplevel procedure `doloop420':
  (lolevel-tests.scm:176) in procedure call to `locative?', the predicate is called with an argument of type `locative' and will always return true

Note: in toplevel procedure `doloop420':
  expected a value of type boolean in conditional, but was given a value of type `true' which is always true:

(if tmp
  tmp
  (##sys#error
    "(lolevel-tests.scm:176) assertion failed"
    '(locative? loc-dst)))

Note: in toplevel procedure `doloop483':
  (lolevel-tests.scm:177) in procedure call to `locative?', the predicate is called with an argument of type `locative' and will always return true

Note: in toplevel procedure `doloop483':
  expected a value of type boolean in conditional, but was given a value of type `true' which is always true:

(if tmp
  tmp
  (##sys#error
    "(lolevel-tests.scm:177) assertion failed"
    '(locative? loc-src)))

Note: in toplevel procedure `doloop483':
  (lolevel-tests.scm:177) in procedure call to `locative?', the predicate is called with an argument of type `locative' and will always return true

Note: in toplevel procedure `doloop483':
  expected a value of type boolean in conditional, but was given a value of type `true' which is always true:

(if tmp
  tmp
  (##sys#error
    "(lolevel-tests.scm:177) assertion failed"
    '(locative? loc-dst)))

Note: in toplevel procedure `doloop558':
  (lolevel-tests.scm:178) in procedure call to `locative?', the predicate is called with an argument of type `locative' and will always return true

Note: in toplevel procedure `doloop558':
  expected a value of type boolean in conditional, but was given a value of type `true' which is always true:

(if tmp
  tmp
  (##sys#error
    "(lolevel-tests.scm:178) assertion failed"
    '(locative? loc-src)))

Note: in toplevel procedure `doloop558':
  (lolevel-tests.scm:178) in procedure call to `locative?', the predicate is called with an argument of type `locative' and will always return true

Note: in toplevel procedure `doloop558':
  expected a value of type boolean in conditional, but was given a value of type `true' which is always true:

(if tmp
  tmp
  (##sys#error
    "(lolevel-tests.scm:178) assertion failed"
    '(locative? loc-dst)))

Note: in toplevel procedure `doloop621':
  (lolevel-tests.scm:179) in procedure call to `locative?', the predicate is called with an argument of type `locative' and will always return true

Note: in toplevel procedure `doloop621':
  expected a value of type boolean in conditional, but was given a value of type `true' which is always true:

(if tmp
  tmp
  (##sys#error
    "(lolevel-tests.scm:179) assertion failed"
    '(locative? loc-src)))

Note: in toplevel procedure `doloop621':
  (lolevel-tests.scm:179) in procedure call to `locative?', the predicate is called with an argument of type `locative' and will always return true

Note: in toplevel procedure `doloop621':
  expected a value of type boolean in conditional, but was given a value of type `true' which is always true:

(if tmp
  tmp
  (##sys#error
    "(lolevel-tests.scm:179) assertion failed"
    '(locative? loc-dst)))

Note: in toplevel procedure `doloop696':
  (lolevel-tests.scm:183) in procedure call to `locative?', the predicate is called with an argument of type `locative' and will always return true

Note: in toplevel procedure `doloop696':
  expected a value of type boolean in conditional, but was given a value of type `true' which is always true:

(if tmp
  tmp
  (##sys#error
    "(lolevel-tests.scm:183) assertion failed"
    '(locative? loc-src)))

Note: in toplevel procedure `doloop696':
  (lolevel-tests.scm:183) in procedure call to `locative?', the predicate is called with an argument of type `locative' and will always return true

Note: in toplevel procedure `doloop696':
  expected a value of type boolean in conditional, but was given a value of type `true' which is always true:

(if tmp
  tmp
  (##sys#error
    "(lolevel-tests.scm:183) assertion failed"
    '(locative? loc-dst)))

Note: in toplevel procedure `doloop765':
  (lolevel-tests.scm:184) in procedure call to `locative?', the predicate is called with an argument of type `locative' and will always return true

Note: in toplevel procedure `doloop765':
  expected a value of type boolean in conditional, but was given a value of type `true' which is always true:

(if tmp
  tmp
  (##sys#error
    "(lolevel-tests.scm:184) assertion failed"
    '(locative? loc-src)))

Note: in toplevel procedure `doloop765':
  (lolevel-tests.scm:184) in procedure call to `locative?', the predicate is called with an argument of type `locative' and will always return true

Note: in toplevel procedure `doloop765':
  expected a value of type boolean in conditional, but was given a value of type `true' which is always true:

(if tmp
  tmp
  (##sys#error
    "(lolevel-tests.scm:184) assertion failed"
    '(locative? loc-dst)))
'gcc' 'a.c' -o 'a.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm a.c
'gcc' 'a.o' -o 'a.out' -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm a.o

old: "\x00yoя"
new: "яoy\x00"

old: #(yo 1 2 #f #t (1 2 3) #(1 2 3))
new: #(#(1 2 3) (1 2 3) #t #f 2 1 yo)

old: #u8(0 1 2 254 255)
new: #u8(255 254 2 1 0)

old: #s8(-128 -127 -2 -1 0 1 2 126 127)
new: #s8(127 126 2 1 0 -1 -2 -127 -128)

old: #u16(0 1 2 65534 65535)
new: #u16(65535 65534 2 1 0)

old: #s16(-32768 -32767 -2 -1 0 1 2 32766 32767)
new: #s16(32767 32766 2 1 0 -1 -2 -32767 -32768)

old: #u32(0 1 2 4294967294 4294967295)
new: #u32(4294967295 4294967294 2 1 0)

old: #s32(-2147483648 -2147483647 -2 -1 0 1 2 2147483646 2147483647)
new: #s32(2147483647 2147483646 2 1 0 -1 -2 -2147483647 -2147483648)

old: #f32(-inf.0 -2.0 -1.0 0.0 1.0 2.0 +inf.0)
new: #f32(+inf.0 2.0 1.0 0.0 -1.0 -2.0 -inf.0)

old: #f64(-1e+200 -2.0 -1.0 0.0 1.0 2.0 1e+200)
new: #f64(1e+200 2.0 1.0 0.0 -1.0 -2.0 -1e+200)
======================================== arithmetic tests ...
======================================== pretty-printer tests ...
======================================== evaluation environment tests ...
(PASS) (eval 123)
(PASS) (eval 123 (interaction-environment))
(PASS) (eval (quote car) (interaction-environment))
(PASS) (eval (quote foo) (interaction-environment))
(PASS) (eval (quote (begin (set! foo 99) foo)) (interaction-environment))
(PASS) (eval 123)
(PASS) (eval 123 (scheme-report-environment 5))
(PASS) (eval (quote car) (scheme-report-environment 5))
(PASS) (eval (quote foo) (scheme-report-environment 5))
(PASS) (eval (quote values) (scheme-report-environment 4))
(PASS) (eval (quote values) (scheme-report-environment 5))
(PASS) (eval (quote (set! foo 99)) (scheme-report-environment 5))
(PASS) (eval (quote (define-syntax foo (syntax-rules () ((_) 1)))) (scheme-report-environment 5))
(PASS) (eval (quote car) (null-environment 5))
(PASS) (eval (quote (cond-expand (chicken 1) (else 2))) (null-environment 4))
(PASS) (eval (quote (cond-expand (chicken 1) (else 2))) (null-environment 5))
(PASS) (eval (quote (cond-expand (chicken 1) (else 2))) (scheme-report-environment 4))
(PASS) (eval (quote (cond-expand (chicken 1) (else 2))) (scheme-report-environment 5))
(PASS) 1
(PASS) 1
(PASS) 1
(PASS) (eval (quote ((lambda (x) x) 123)) (null-environment 5))
(PASS) (eval (quote (bar)) foo-env)
(PASS) (eval (quote baz) foo-env)
(PASS) (eval (quote (xcons 1 2)) srfi-1-env)
(PASS) (eval (quote baz) srf-1-env)
  26 tests completed in 0.028 seconds
  26 (100.00%) tests passed
  0 (0.00%) tests failed
======================================== syntax tests ...
3
100
(M1: (m1 n))
3628800
34
(0 1 2 3 (4) (5 6))
45
now
outer
7
(1 2 3 a)
(1 2 3 a)
(1 2 3 a)
#(b)
"baz"
"no baz"
"no baz"
2
#t
ok
1
3
(3 4)
"x"
"x"
"bar"
"bar"
"foo#bar"
"#%void"
"foo#bar"
"#%void"
(... 1 2 3)
3
(() 1 2)
(((1) 2) 3 4)
(((1 2) (4) 3 5) 6 7)
(() 1 2)
((#() 1) 2 3)
((#(1 2) 3) 4 5)
((#(1 2) 3) 4 5 6 7)
(() 1 2 3 4)
((#(1) 2) 3 4 5 6)
((#(1 2) #(4) 3 5) 6 7 8 9)
(1)
(99)
7
(1 2 3)
10 9 8 7 6 5 4 3 2 1 
10 9 8 7 6 5 4 3 2 1 
1 2 3 4 5 6 7 8 9 10 
3
ok
caught
(99)
10 9 8 7 6 5 4 3 2 1 
10 9 8 7 6 5 4 3 2 1 
Warning: reference to possibly unbound identifier `one#always-one' in:
Warning:    always-two

#((99))
#((one))
(1 #(1 #(1)))
yep
1
a-procedure
#
1
1
void
(1 2)
(1 2 3 4 (5 6))
1
1
2
3
4
#f
#f
foo
#f
()
()
(1)
(1)
(1)
(1 2)
(1 2)
(1 2)
(1 2 3 4)
(1 2 3 4)
(1 2 3 4 5 6)
(ok)
2
()
()
(1)
(1)
(1)
(1 2)
(1 2)
(1 2)
(1 2 3 4)
(1 2 3 4)
(1 2 3 4 5 6)
1
unquote
a
(foo . 1)
`,a
(quasiquote x y)
,@a
(1 2)
`,(1 2)
`,@(1 2)
`(unquote 1 2)
x
`,@`,x
`,`,@x
`,`,(1 2)
(quasiquote . #(1 ,x 3))
`#(1 ,x 3)
(quasiquote a #(1 ,x 3) b)
`(unquote . #(1 (1 2) 3))
`,#(1 (1 2) 3)
`(unquote a #(1 (1 2) 3) b)
`(unquote-splicing . #(1 (1 2) 3))
`,@#(1 (1 2) 3)
`(unquote-splicing a #(1 (1 2) 3) b)
quasiquote
unquote
unquote-splicing
(x quasiquote)
(x unquote-splicing)
(a 1)
(1)
(1)
1
4
1
#
1
1
1
1
======================================== syntax tests (compiled) ...
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'syntax-tests.scm' -output-file 'a.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/..

Note: assignment to imported value binding: setter

Note: at toplevel:
  (syntax-tests.scm:38) in procedure call to `number?', the predicate is called with an argument of type `fixnum' and will always return true

Note: at toplevel:
  in conditional, test expression will always return false:

(if temp temp (let ((temp ...)) (if temp temp (let ... ...))))

Warning: in local unknown procedure,
  in local unknown procedure,
  in toplevel unknown procedure:
  (syntax-tests.scm:201) in procedure call to `string-length', expected argument #1 of type `string' but was given an argument of type `fixnum'

Note: at toplevel:
  in conditional, test expression will always return false:

(if #f 'false =>)

Note: at toplevel:
  in conditional, test expression will always return false:

(if #f 'false (let ((t801 =>)) 3))

Note: at toplevel:
  in conditional, test expression will always return false:

(if temp temp (let ((temp ...)) (if temp temp (let ... ...))))

Warning: in local procedure `f1812',
  in local unknown procedure,
  in local unknown procedure,
  in local unknown procedure,
  in toplevel unknown procedure:
  (syntax-tests.scm:413) in procedure call to `exit', expected argument #1 of type `fixnum' but was given an argument of type `false'

Warning: at toplevel:
  assignment of value of type `fixnum' to toplevel variable `setter' does not match declared type `(procedure setter (procedure) procedure)'

Warning: in local procedure `f2489',
  in local unknown procedure,
  in local unknown procedure,
  in local unknown procedure,
  in toplevel unknown procedure:
  (syntax-tests.scm:613) in procedure call to `exit', expected argument #1 of type `fixnum' but was given an argument of type `false'

Note: at toplevel:
  in conditional, test expression will always return false:

(if #f 'false 'yep)

Note: at toplevel:
  in conditional, test expression will always return false:

(if #f 'false (let ((tmp 1)) (if tmp (let ... ...) 'yep)))

Note: at toplevel:
  expected a value of type boolean in conditional, but was given a value of type `fixnum' which is always true:

(if tmp (let ((g2726 ...)) (g2726 tmp)) 'yep)

Note: at toplevel:
  in conditional, test expression will always return false:

(if #f 'false (if 1 (let (...) 'a-procedure) 'yep))

Note: at toplevel:
  expected a value of type boolean in conditional, but was given a value of type `fixnum' which is always true:

(if 1 (let ((t2749 =>)) 'a-procedure) 'yep)

Note: at toplevel:
  in conditional, test expression will always return false:

(if #f 'false (if else 'nope (void)))

Note: at toplevel:
  in conditional, test expression will always return false:

(if else 'nope (void))

Note: at toplevel:
  in conditional, test expression will always return false:

(if #f 'false (let ((tmp 1)) (if tmp (let ... ...) 'yep)))

Note: at toplevel:
  expected a value of type boolean in conditional, but was given a value of type `fixnum' which is always true:

(if tmp (let ((g2791 ...)) (g2791 tmp)) 'yep)

Note: at toplevel:
  in conditional, test expression will always return false:

(if #f 'false (let ((tmp 1)) (if tmp (let ... ...) 'yep)))

Note: at toplevel:
  expected a value of type boolean in conditional, but was given a value of type `fixnum' which is always true:

(if tmp (let ((g2817 ...)) (g2817 tmp)) 'yep)

Note: at toplevel:
  expected a value of type boolean in conditional, but was given a value of type `fixnum' which is always true:

(if a a #f)

Note: at toplevel:
  expected a value of type boolean in conditional, but was given a value of type `fixnum' which is always true:

(if a (let ((b ...)) (if b b #f)) #f)

Note: at toplevel:
  expected a value of type boolean in conditional, but was given a value of type `number' which is always true:

(if b b #f)

Note: at toplevel:
  in conditional, test expression will always return false:

(if tmp tmp #t)

Note: at toplevel:
  expected a value of type boolean in conditional, but was given a value of type `fixnum' which is always true:

(if c (if (equal? 4 c) c #f) #f)

Note: at toplevel:
  expected a value of type boolean in conditional, but was given a value of type `fixnum' which is always true:

(if c (if (equal? 5 c) (error "not reached") #f) #f)

Note: at toplevel:
  expected a value of type boolean in conditional, but was given a value of type `symbol' which is always true:

(if a a #f)

Note: at toplevel:
  in conditional, test expression will always return false:

(if a (if (error "not reached 1") (error "not reached 2") #f) #f)

Warning: redefinition of extended binding: setter
(M1: (m1 n))
'gcc' 'a.c' -o 'a.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm a.c
'gcc' 'a.o' -o 'a.out' -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm a.o
3
100
3628800
34
(0 1 2 3 (4) (5 6))
45
now
outer
7
(1 2 3 a)
(1 2 3 a)
(1 2 3 a)
#(b)
"baz"
"no baz"
"no baz"
2
#t
ok
1
3
(3 4)
"x"
"x"
"bar"
"bar"
"foo#bar"
"#%void"
"foo#bar"
"#%void"
(... 1 2 3)
3
(() 1 2)
(((1) 2) 3 4)
(((1 2) (4) 3 5) 6 7)
(() 1 2)
((#() 1) 2 3)
((#(1 2) 3) 4 5)
((#(1 2) 3) 4 5 6 7)
(() 1 2 3 4)
((#(1) 2) 3 4 5 6)
((#(1 2) #(4) 3 5) 6 7 8 9)
(1)
(99)
7
(1 2 3)
10 9 8 7 6 5 4 3 2 1 
10 9 8 7 6 5 4 3 2 1 
1 2 3 4 5 6 7 8 9 10 
3
ok
caught
(99)
10 9 8 7 6 5 4 3 2 1 
10 9 8 7 6 5 4 3 2 1 
Warning: reference to possibly unbound identifier `one#always-one' in:
Warning:    always-two

#((99))
#((one))
(1 #(1 #(1)))
yep
1
a-procedure
#
1
1
void
(1 2)
(1 2 3 4 (5 6))
1
1
2
3
4
#f
#f
foo
#f
()
()
(1)
(1)
(1)
(1 2)
(1 2)
(1 2)
(1 2 3 4)
(1 2 3 4)
(1 2 3 4 5 6)
(ok)
2
()
()
(1)
(1)
(1)
(1 2)
(1 2)
(1 2)
(1 2 3 4)
(1 2 3 4)
(1 2 3 4 5 6)
1
unquote
a
(foo . 1)
`,a
(quasiquote x y)
,@a
(1 2)
`,(1 2)
`,@(1 2)
`(unquote 1 2)
x
`,@`,x
`,`,@x
`,`,(1 2)
(quasiquote . #(1 ,x 3))
`#(1 ,x 3)
(quasiquote a #(1 ,x 3) b)
`(unquote . #(1 (1 2) 3))
`,#(1 (1 2) 3)
`(unquote a #(1 (1 2) 3) b)
`(unquote-splicing . #(1 (1 2) 3))
`,@#(1 (1 2) 3)
`(unquote-splicing a #(1 (1 2) 3) b)
quasiquote
unquote
unquote-splicing
(x quasiquote)
(x unquote-splicing)
(a 1)
(1)
(1)
1
4
1
#
1
1
1
1
======================================== syntax tests (v2, compiled) ...
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'syntax-tests-2.scm' -output-file 'a.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/..
'gcc' 'a.c' -o 'a.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm a.c
'gcc' 'a.o' -o 'a.out' -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm a.o
======================================== meta-syntax tests ...
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'meta-syntax-test.scm' -output-file 'meta-syntax-test.c' -dynamic -feature chicken-compile-shared -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -emit-import-library foo
generating import library `foo.import.scm' for module `foo' ...
'gcc' 'meta-syntax-test.c' -o 'meta-syntax-test.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -fPIC -DPIC -DC_SHARED -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm meta-syntax-test.c
'gcc' 'meta-syntax-test.o' -o 'meta-syntax-test.so' -shared -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm meta-syntax-test.o
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'foo.import.scm' -output-file 'foo.import.c' -dynamic -feature chicken-compile-shared -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/..
'gcc' 'foo.import.c' -o 'foo.import.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -fPIC -DPIC -DC_SHARED -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm foo.import.c
'gcc' 'foo.import.o' -o 'foo.import.so' -shared -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm foo.import.o
======================================== reexport tests ...

Warning: reference to possibly unbound identifier `values'
7
"abc-def-ghi"
1
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'reexport-tests.scm' -output-file 'a.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/..
'gcc' 'a.c' -o 'a.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm a.c
'gcc' 'a.o' -o 'a.out' -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm a.o
7
"abc-def-ghi"
1
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'reexport-m1.scm' -output-file 'reexport-m1.c' -dynamic -feature chicken-compile-shared -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -emit-all-import-libraries
generating import library `reexport-m1.import.scm' for module `reexport-m1' ...
'gcc' 'reexport-m1.c' -o 'reexport-m1.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -fPIC -DPIC -DC_SHARED -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm reexport-m1.c
'gcc' 'reexport-m1.o' -o 'reexport-m1.so' -shared -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm reexport-m1.o
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'reexport-m1.import.scm' -output-file 'reexport-m1.import.c' -dynamic -feature chicken-compile-shared -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/..
'gcc' 'reexport-m1.import.c' -o 'reexport-m1.import.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -fPIC -DPIC -DC_SHARED -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm reexport-m1.import.c
'gcc' 'reexport-m1.import.o' -o 'reexport-m1.import.so' -shared -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm reexport-m1.import.o
(1 2 . 3)
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'reexport-m2.scm' -output-file 'a.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/..
'gcc' 'a.c' -o 'a.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm a.c
'gcc' 'a.o' -o 'a.out' -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm a.o
(1 2 . 3)
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'reexport-m3.scm' -output-file 'reexport-m3.c' -dynamic -feature chicken-compile-shared -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -emit-all-import-libraries
generating import library `reexport-m3.import.scm' for module `reexport-m3' ...
'gcc' 'reexport-m3.c' -o 'reexport-m3.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -fPIC -DPIC -DC_SHARED -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm reexport-m3.c
'gcc' 'reexport-m3.o' -o 'reexport-m3.so' -shared -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm reexport-m3.o
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'reexport-m4.scm' -output-file 'reexport-m4.c' -dynamic -feature chicken-compile-shared -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -emit-all-import-libraries
generating import library `reexport-m4.import.scm' for module `reexport-m4' ...
'gcc' 'reexport-m4.c' -o 'reexport-m4.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -fPIC -DPIC -DC_SHARED -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm reexport-m4.c
'gcc' 'reexport-m4.o' -o 'reexport-m4.so' -shared -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm reexport-m4.o
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'reexport-m5.scm' -output-file 'reexport-m5.c' -dynamic -feature chicken-compile-shared -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -emit-all-import-libraries
generating import library `reexport-m5.import.scm' for module `reexport-m5' ...
'gcc' 'reexport-m5.c' -o 'reexport-m5.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -fPIC -DPIC -DC_SHARED -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm reexport-m5.c
'gcc' 'reexport-m5.o' -o 'reexport-m5.so' -shared -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm reexport-m5.o
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'reexport-m6.scm' -output-file 'reexport-m6.c' -dynamic -feature chicken-compile-shared -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -emit-all-import-libraries
generating import library `reexport-m6.import.scm' for module `reexport-m6' ...
'gcc' 'reexport-m6.c' -o 'reexport-m6.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -fPIC -DPIC -DC_SHARED -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm reexport-m6.c
'gcc' 'reexport-m6.o' -o 'reexport-m6.so' -shared -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm reexport-m6.o
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'reexport-tests-2.scm' -output-file 'a.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/..
'gcc' 'a.c' -o 'a.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm a.c
'gcc' 'a.o' -o 'a.out' -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm a.o
1
11======================================== functor tests ...
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'simple-functors-test.scm' -output-file 'a.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/..
'gcc' 'a.c' -o 'a.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm a.c
'gcc' 'a.o' -o 'a.out' -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm a.o
Queue representation #1:
0.007s CPU time, 15/0 mutations (total/tracked), 0/16 GCs (major/minor), maximum live heap: 610.38 KiB
Queue representation #2:
0.317s CPU time, 0.019s GC time (major), 15/0 mutations (total/tracked), 12/1483 GCs (major/minor), maximum live heap: 656.62 KiB
Queue representation #3:
0.004s CPU time, 15/0 mutations (total/tracked), 0/15 GCs (major/minor), maximum live heap: 610.49 KiB
("")
(PASS) argument mismatch
(PASS) undefined module
(PASS) undefined interface
(PASS) undefined interface in functor
(PASS) undefined interface in functor result
(PASS) alternative functor instantiation syntax
(PASS) optional functor argument #1
(PASS) optional functor argument #2
(PASS) primitive optional functor argument #1
(PASS) primitive optional functor argument #2
  10 tests completed in 0.434 seconds
  10 (100.00%) tests passed
  0 (0.00%) tests failed
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'functor-tests.scm' -output-file 'a.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/..
'gcc' 'a.c' -o 'a.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm a.c
'gcc' 'a.o' -o 'a.out' -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm a.o
Queue representation #1:
0.027s CPU time, 5/49 GCs (major/minor), maximum live heap: 307.45 KiB
Queue representation #2:
0.204s CPU time, 0.059s GC time (major), 67/376 GCs (major/minor), maximum live heap: 339.88 KiB
Queue representation #3:
0.006s CPU time, 0/3 GCs (major/minor), maximum live heap: 301.25 KiB
("")
(PASS) alternative functor instantiation syntax
(PASS) optional functor argument #1
(PASS) optional functor argument #2
(PASS) primitive optional functor argument #1
(PASS) primitive optional functor argument #2
  5 tests completed in 0.253 seconds
  5 (100.00%) tests passed
  0 (0.00%) tests failed
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'square-functor.scm' -output-file 'a.c' -dynamic -feature chicken-compile-shared -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -emit-all-import-libraries
generating import library `square-functor.import.scm' for module `square-functor' ...
'gcc' 'a.c' -o 'a.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -fPIC -DPIC -DC_SHARED -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm a.c
'gcc' 'a.o' -o 'a.out' -shared -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm a.o
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'square-functor.import.scm' -output-file 'a.c' -dynamic -feature chicken-compile-shared -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/..
'gcc' 'a.c' -o 'a.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -fPIC -DPIC -DC_SHARED -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm a.c
'gcc' 'a.o' -o 'a.out' -shared -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm a.o
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'use-square-functor.scm' -output-file 'a.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/..

Note: re-importing already imported identifier: *
'gcc' 'a.c' -o 'a.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm a.c
'gcc' 'a.o' -o 'a.out' -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm a.o
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'use-square-functor.scm' -output-file 'a.c' -dynamic -feature chicken-compile-shared -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -emit-all-import-libraries

Note: re-importing already imported identifier: *
generating import library `num.import.scm' for module `num' ...
generating import library `lst.import.scm' for module `lst' ...
generating import library `sf1.import.scm' for module `sf1' ...
generating import library `sf2.import.scm' for module `sf2' ...
'gcc' 'a.c' -o 'a.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -fPIC -DPIC -DC_SHARED -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm a.c
'gcc' 'a.o' -o 'a.out' -shared -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm a.o
======================================== compiler syntax tests ...
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'compiler-syntax-tests.scm' -output-file 'a.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/..
'gcc' 'a.c' -o 'a.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm a.c
'gcc' 'a.o' -o 'a.out' -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm a.o
9
7
(cs-goo 2)
zzz
======================================== import tests ...

Warning: reference to possibly unbound identifier `s8vector?'
expect warning ...
======================================== import library tests ...
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'import-library-test1.scm' -output-file 'a.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -emit-import-library foo
generating import library `foo.import.scm' for module `foo' ...
'gcc' 'a.c' -o 'a.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm a.c
'gcc' 'a.o' -o 'a.out' -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm a.o
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'foo.import.scm' -output-file 'foo.import.c' -dynamic -feature chicken-compile-shared -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/..
'gcc' 'foo.import.c' -o 'foo.import.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -fPIC -DPIC -DC_SHARED -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm foo.import.c
'gcc' 'foo.import.o' -o 'foo.import.so' -shared -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm foo.import.o
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'import-library-test2.scm' -output-file 'a.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/..
'gcc' 'a.c' -o 'a.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm a.c
'gcc' 'a.o' -o 'a.out' -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm a.o
======================================== optionals test ...
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'test-optional.scm' -output-file 'a.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/..
'gcc' 'a.c' -o 'a.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm a.c
'gcc' 'a.o' -o 'a.out' -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm a.o
======================================== syntax tests (matchable) ...
(PASS) any
(PASS) symbol
(PASS) number
(PASS) string
(PASS) literal symbol
(PASS) null
(PASS) pair
(PASS) vector
(PASS) any doubled
(PASS) and empty
(PASS) and single
(PASS) and double
(PASS) or empty
(PASS) or single
(PASS) or double
(PASS) not
(PASS) pred
(PASS) named pred
(PASS) duplicate symbols pass
(PASS) duplicate symbols fail
(PASS) duplicate symbols samth
(PASS) ellipses
(PASS) real ellipses
(PASS) vector ellipses
(PASS) pred ellipses
(PASS) failure continuation
(PASS) let
(PASS) let*
(PASS) getter car
(PASS) getter cdr
(PASS) getter vector
(PASS) setter car
(PASS) setter cdr
(PASS) setter vector
(PASS) single tail
(PASS) single tail 2
(PASS) multiple tail
(PASS) Riastradh quasiquote
  38 tests completed in 0.168 seconds
  38 (100.00%) tests passed
  0 (0.00%) tests failed
======================================== syntax tests (loopy-loop) ...
(PASS) stepping
(PASS) basic in-list
(PASS) in-list with result
(PASS) in-list with collecting
(PASS) uneven length in-list's
(PASS) in-lists
(PASS) flatten (recursion test)
(PASS) in-string
(PASS) in-string with start
(PASS) in-string with start and end
(PASS) in-string with start, end and step
(PASS) in-string-reverse
(PASS) in-vector
(PASS) in-permutations
(PASS) in-permutations with length
(PASS) in-combinations
(PASS) in-hash-table
  17 tests completed in 0.330 seconds
  17 (100.00%) tests passed
  0 (0.00%) tests failed
======================================== r4rstest ...
(expect mult-float-print-test to fail)
======================================== syntax tests (r5rs_pitfalls) ...
(expect two failures)
Passed: 1.1
Passed: 1.2
Passed: 1.3
Passed: 2.1
Passed: 3.1
Passed: 3.2
Passed: 3.3
Passed: 3.4
Passed: 4.1
Passed: 4.2
Passed: 4.3
Passed: 5.1
Passed: 5.2
Passed: 5.3
Passed: 6.1
Passed: 7.1
Passed: 7.2
Passed: 7.3
Passed: 7.4
Passed: 8.1
Passed: 8.2
Passed: 8.3
Map is not call/cc safe, but probably tail recursive and efficient.
======================================== r7rs tests ...

(section 4 2 1)

(#)  ==> 1
(#)  ==> foo
(#)  ==> "a"
(#)  ==> "a"
(#)
(#)

(section 4 2 5)

(# #)  ==> #t
(# #)  ==> #t
(# #)  ==> #t
(# #)  ==> 1
(# #)  ==> #t
(# #)  ==> 1
(# #)  ==> #t
(# #)  ==> #t
(# 1)  ==> 1
(# #)  ==> #
(# #)  ==> 3
(# 3 3)  ==> (3 3)
(# #)  ==> 0
(# #)  ==> 0
(# #)  ==> 1
(# #)  ==> 2
(# #)  ==> #t
(# #)  ==> 6
(# #)  ==> #t
(# #)  ==> 6
(# #)  ==> #t
(# #)  ==> 1
(# #)  ==> 6
(# #)  ==> #t
(#f (1 2 3))  ==> (1 2 3)
(#f (4 5 6))  ==> (4 5 6)
(#f ())  ==> ()

(section 5 3)

(#)  ==> (1 2)
(#)  ==> (1 (2))
(#)  ==> ((1 2))
(#)  ==> ok

(section 6 6)

(#named-char x)> 7)  ==> "#\\alarm"
(#named-char x)> 8)  ==> "#\\backspace"
(#named-char x)> 127)  ==> "#\\delete"
(#named-char x)> 27)  ==> "#\\escape"
(#named-char x)> 10)  ==> "#\\newline"
(#named-char x)> 0)  ==> "#\\null"
(#named-char x)> 13)  ==> "#\\return"
(#named-char x)> 32)  ==> "#\\space"
(#named-char x)> 9)  ==> "#\\tab"

(section 6 7)

(# "a")  ==> #\alarm
(# "b")  ==> #\backspace
(# "t")  ==> #\tab
(# "n")  ==> #\newline
(# "r")  ==> #\return
(# "\"")  ==> #\"
(# "\\")  ==> #\\
(# "|")  ==> #\|
(# "\n       END")  ==> #\E
(# "\r       END")  ==> #\E
(# "\r\n       END")  ==> #\E
(# "    \nEND")  ==> #\E
(# "    \nEND")  ==> #\E
(# "     \n   END")  ==> #\E
(# "     \n    \n END")  ==> #\newline
(# "     \r    \n END")  ==> #\newline
(# "\t\n\t   END")  ==> #\E
(# "    \n    ")  ==> ""

(section 6 8)

(#f #(0 (2 2 2 2) "Anna"))  ==> #(0 (2 2 2 2) "Anna")
(# #(0 (a b) c))  ==> #t
(# #(0 (a b) c))  ==> #t
(#f #(0 (a b) c d #(1 2 (e) f) g))  ==> #(0 (a b) c d #(1 2 (e) f) g)

Passed all tests
======================================== module tests ...
(PASS) internal/variable
(PASS) external/unimported variable (fail)
(PASS) external/unimported syntax (fail)
(PASS) external/imported variable
(PASS) external/imported syntax
(PASS) modified import
(PASS) hidden import
(PASS) prefixed import and reexport
ok.
(PASS) indirect imports
f1
(PASS) chained indirect imports
(PASS) literal compare and export
(PASS) redefinition of indirect import
(PASS) redefinition of indirect import (II)
(PASS) value reexport
(PASS) syntax reexport
(PASS) primitive indirect value-binding reexport
(PASS) extended lambda list uses expansion environment
#
(PASS) function defined in module that is the result of an expansion
(PASS) syntax defined in module that is the result of an expansion
(PASS) global module alias scope (1)
(PASS) local module alias scope
(PASS) global module alias scope (2)
(PASS) `*' export-list + explicit export
1
1
2
(PASS) handle star-exporting module with reexport
(PASS) star-export with explicit re-export of syntax
  25 tests completed in 0.096 seconds
  25 (100.00%) tests passed
  0 (0.00%) tests failed
()
f1
oinkoink
======================================== module tests (compiled) ...
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'module-tests-compiled.scm' -output-file 'a.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/..
'gcc' 'a.c' -o 'a.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm a.c
'gcc' 'a.o' -o 'a.out' -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm a.o
(PASS) inline in syntax
(PASS) unmarked primitive exports
  2 tests completed in 0.000 seconds
  2 (100.00%) tests passed
  0 (0.00%) tests failed
======================================== module tests (chained) ...
f1
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'test-chained-modules.scm' -output-file 'test-chained-modules.c' -dynamic -feature chicken-compile-shared -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -emit-import-library m3
generating import library `m3.import.scm' for module `m3' ...
'gcc' 'test-chained-modules.c' -o 'test-chained-modules.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -fPIC -DPIC -DC_SHARED -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm test-chained-modules.c
'gcc' 'test-chained-modules.o' -o 'test-chained-modules.so' -shared -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm test-chained-modules.o
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'm3.import.scm' -output-file 'm3.import.c' -dynamic -feature chicken-compile-shared -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/..
'gcc' 'm3.import.c' -o 'm3.import.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -fPIC -DPIC -DC_SHARED -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm m3.import.c
'gcc' 'm3.import.o' -o 'm3.import.so' -shared -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm m3.import.o

CHICKEN
(c) 2008-2017, The CHICKEN Team
(c) 2000-2007, Felix L. Winkelmann
Version 4.12.0rc1 ((detached from 4.12.0rc1)) (rev 9275cfa)
android-android-clang-unknown [ 64bit manyargs dload ptables ]
compiled 2017-01-22 on waldrop (Linux)

; loading test-chained-modules.so ...
; loading /data/data/com.termux/files/home/chickens/4.12.0RC1//lib/chicken/8/chicken.import.so ...
f1
f1
f1
======================================== module tests (ec) ...

(let ((x 0)) (do-ec (set! x (+ x 1))) x)
  => 1 ; correct

(let ((x 0)) (do-ec (:range i 10) (set! x (+ x 1))) x)
  => 10 ; correct

(let ((x 0)) (do-ec (:range n 10) (:range k n) (set! x (+ x 1))) x)
  => 45 ; correct

(list-ec 1)
  => (1) ; correct

(list-ec (:range i 4) i)
  => (0 1 2 3) ; correct

(list-ec (:range n 3) (:range k (+ n 1)) (list n k))
  => ((0 0) (1 0) (1 1) (2 0) (2 1) (2 2)) ; correct

(list-ec (:range n 5) (if (even? n)) (:range k (+ n 1)) (list n k))
  => ((0 0) (2 0) (2 1) (2 2) (4 0) (4 1) (4 2) (4 3) (4 4)) ; correct

(list-ec (:range n 5) (not (even? n)) (:range k (+ n 1)) (list n k))
  => ((1 0) (1 1) (3 0) (3 1) (3 2) (3 3)) ; correct

(list-ec (:range n 5) (and (even? n) (> n 2)) (:range k (+ n 1)) (list n k))
  => ((4 0) (4 1) (4 2) (4 3) (4 4)) ; correct

(list-ec (:range n 5) (or (even? n) (> n 3)) (:range k (+ n 1)) (list n k))
  => ((0 0) (2 0) (2 1) (2 2) (4 0) (4 1) (4 2) (4 3) (4 4)) ; correct

(let ((x 0)) (list-ec (:range n 10) (begin (set! x (+ x 1))) n) x)
  => 10 ; correct

(list-ec (nested (:range n 3) (:range k n)) k)
  => (0 0 1) ; correct

(append-ec (quote (a b)))
  => (a b) ; correct

(append-ec (:range i 0) (quote (a b)))
  => () ; correct

(append-ec (:range i 1) (quote (a b)))
  => (a b) ; correct

(append-ec (:range i 2) (quote (a b)))
  => (a b a b) ; correct

(string-ec #\a)
  => "a" ; correct

(string-ec (:range i 0) #\a)
  => "" ; correct

(string-ec (:range i 1) #\a)
  => "a" ; correct

(string-ec (:range i 2) #\a)
  => "aa" ; correct

(string-append-ec "ab")
  => "ab" ; correct

(string-append-ec (:range i 0) "ab")
  => "" ; correct

(string-append-ec (:range i 1) "ab")
  => "ab" ; correct

(string-append-ec (:range i 2) "ab")
  => "abab" ; correct

(vector-ec 1)
  => #(1) ; correct

(vector-ec (:range i 0) i)
  => #() ; correct

(vector-ec (:range i 1) i)
  => #(0) ; correct

(vector-ec (:range i 2) i)
  => #(0 1) ; correct

(vector-of-length-ec 1 1)
  => #(1) ; correct

(vector-of-length-ec 0 (:range i 0) i)
  => #() ; correct

(vector-of-length-ec 1 (:range i 1) i)
  => #(0) ; correct

(vector-of-length-ec 2 (:range i 2) i)
  => #(0 1) ; correct

(sum-ec 1)
  => 1 ; correct

(sum-ec (:range i 0) i)
  => 0 ; correct

(sum-ec (:range i 1) i)
  => 0 ; correct

(sum-ec (:range i 2) i)
  => 1 ; correct

(sum-ec (:range i 3) i)
  => 3 ; correct

(product-ec 1)
  => 1 ; correct

(product-ec (:range i 1 0) i)
  => 1 ; correct

(product-ec (:range i 1 1) i)
  => 1 ; correct

(product-ec (:range i 1 2) i)
  => 1 ; correct

(product-ec (:range i 1 3) i)
  => 2 ; correct

(product-ec (:range i 1 4) i)
  => 6 ; correct

(min-ec 1)
  => 1 ; correct

(min-ec (:range i 1) i)
  => 0 ; correct

(min-ec (:range i 2) i)
  => 0 ; correct

(max-ec 1)
  => 1 ; correct

(max-ec (:range i 1) i)
  => 0 ; correct

(max-ec (:range i 2) i)
  => 1 ; correct

(first-ec #f 1)
  => 1 ; correct

(first-ec #f (:range i 0) i)
  => #f ; correct

(first-ec #f (:range i 1) i)
  => 0 ; correct

(first-ec #f (:range i 2) i)
  => 0 ; correct

(let ((last-i -1)) (first-ec #f (:range i 10) (begin (set! last-i i)) i) last-i)
  => 0 ; correct

(last-ec #f 1)
  => 1 ; correct

(last-ec #f (:range i 0) i)
  => #f ; correct

(last-ec #f (:range i 1) i)
  => 0 ; correct

(last-ec #f (:range i 2) i)
  => 1 ; correct

(any?-ec #f)
  => #f ; correct

(any?-ec #t)
  => #t ; correct

(any?-ec (:range i 2 2) (even? i))
  => #f ; correct

(any?-ec (:range i 2 3) (even? i))
  => #t ; correct

(every?-ec #f)
  => #f ; correct

(every?-ec #t)
  => #t ; correct

(every?-ec (:range i 2 2) (even? i))
  => #t ; correct

(every?-ec (:range i 2 3) (even? i))
  => #t ; correct

(every?-ec (:range i 2 4) (even? i))
  => #f ; correct

(let ((sum-sqr (lambda (x result) (+ result (* x x))))) (fold-ec 0 (:range i 10) i sum-sqr))
  => 285 ; correct

(let ((minus-1 (lambda (x) (- x 1))) (sum-sqr (lambda (x result) (+ result (* x x))))) (fold3-ec (error "wrong") (:range i 10) i minus-1 sum-sqr))
  => 284 ; correct

(fold3-ec (quote infinity) (:range i 0) i min min)
  => infinity ; correct

(list-ec (:list x (quote ())) x)
  => () ; correct

(list-ec (:list x (quote (1))) x)
  => (1) ; correct

(list-ec (:list x (quote (1 2 3))) x)
  => (1 2 3) ; correct

(list-ec (:list x (quote (1)) (quote (2))) x)
  => (1 2) ; correct

(list-ec (:list x (quote (1)) (quote (2)) (quote (3))) x)
  => (1 2 3) ; correct

(list-ec (:string c "") c)
  => () ; correct

(list-ec (:string c "1") c)
  => (#\1) ; correct

(list-ec (:string c "123") c)
  => (#\1 #\2 #\3) ; correct

(list-ec (:string c "1" "2") c)
  => (#\1 #\2) ; correct

(list-ec (:string c "1" "2" "3") c)
  => (#\1 #\2 #\3) ; correct

(list-ec (:vector x (vector)) x)
  => () ; correct

(list-ec (:vector x (vector 1)) x)
  => (1) ; correct

(list-ec (:vector x (vector 1 2 3)) x)
  => (1 2 3) ; correct

(list-ec (:vector x (vector 1) (vector 2)) x)
  => (1 2) ; correct

(list-ec (:vector x (vector 1) (vector 2) (vector 3)) x)
  => (1 2 3) ; correct

(list-ec (:range x -2) x)
  => () ; correct

(list-ec (:range x -1) x)
  => () ; correct

(list-ec (:range x 0) x)
  => () ; correct

(list-ec (:range x 1) x)
  => (0) ; correct

(list-ec (:range x 2) x)
  => (0 1) ; correct

(list-ec (:range x 0 3) x)
  => (0 1 2) ; correct

(list-ec (:range x 1 3) x)
  => (1 2) ; correct

(list-ec (:range x -2 -1) x)
  => (-2) ; correct

(list-ec (:range x -2 -2) x)
  => () ; correct

(list-ec (:range x 1 5 2) x)
  => (1 3) ; correct

(list-ec (:range x 1 6 2) x)
  => (1 3 5) ; correct

(list-ec (:range x 5 1 -2) x)
  => (5 3) ; correct

(list-ec (:range x 6 1 -2) x)
  => (6 4 2) ; correct

(list-ec (:real-range x 0.0 3.0) x)
  => (0.0 1.0 2.0) ; correct

(list-ec (:real-range x 0 3.0) x)
  => (0.0 1.0 2.0) ; correct

(list-ec (:real-range x 0 3 1.0) x)
  => (0.0 1.0 2.0) ; correct

(string-ec (:char-range c #\a #\z) c)
  => "abcdefghijklmnopqrstuvwxyz" ; correct

(begin (let ((f (my-open-output-file "tmp1"))) (do-ec (:range n 10) (begin (write n f) (newline f))) (close-output-port f)) (my-call-with-input-file "tmp1" (lambda (port) (list-ec (:port x port read) x))))
  => (0 1 2 3 4 5 6 7 8 9) ; correct

(begin (let ((f (my-open-output-file "tmp1"))) (do-ec (:range n 10) (begin (write n f) (newline f))) (close-output-port f)) (my-call-with-input-file "tmp1" (lambda (port) (list-ec (:port x port) x))))
  => (0 1 2 3 4 5 6 7 8 9) ; correct

(list-ec (:do ((i 0)) (< i 4) ((+ i 1))) i)
  => (0 1 2 3) ; correct

(list-ec (:do (let ((x (quote x)))) ((i 0)) (< i 4) (let ((j (- 10 i)))) #t ((+ i 1))) j)
  => (10 9 8 7) ; correct

(list-ec (:let x 1) x)
  => (1) ; correct

(list-ec (:let x 1) (:let y (+ x 1)) y)
  => (2) ; correct

(list-ec (:let x 1) (:let x (+ x 1)) x)
  => (2) ; correct

(list-ec (:parallel (:range i 1 10) (:list x (quote (a b c)))) (list i x))
  => ((1 a) (2 b) (3 c)) ; correct

(list-ec (:while (:range i 1 10) (< i 5)) i)
  => (1 2 3 4) ; correct

(list-ec (:until (:range i 1 10) (>= i 5)) i)
  => (1 2 3 4 5) ; correct

(list-ec (:while (:list i (quote (1 2 3 4 5 6 7 8 9))) (< i 5)) i)
  => (1 2 3 4) ; correct

(list-ec (:until (:list i (quote (1 2 3 4 5 6 7 8 9))) (>= i 5)) i)
  => (1 2 3 4 5) ; correct

(list-ec (:while (:vector x (index i) (quote #(1 2 3 4 5))) (< x 10)) x)
  => (1 2 3 4 5) ; correct

(list-ec (:while (:parallel (:range i 1 10) (:list j (quote (1 2 3 4 5 6 7 8 9)))) (< i 5)) (list i j))
  => ((1 1) (2 2) (3 3) (4 4)) ; correct

(list-ec (:until (:parallel (:range i 1 10) (:list j (quote (1 2 3 4 5 6 7 8 9)))) (>= i 5)) (list i j))
  => ((1 1) (2 2) (3 3) (4 4) (5 5)) ; correct

(let ((n 0)) (do-ec (:while (:range i 1 10) (begin (set! n (+ n 1)) (< i 5))) (if #f #f)) n)
  => 5 ; correct

(let ((n 0)) (do-ec (:until (:range i 1 10) (begin (set! n (+ n 1)) (>= i 5))) (if #f #f)) n)
  => 5 ; correct

(let ((n 0)) (do-ec (:while (:parallel (:range i 1 10) (:do () (begin (set! n (+ n 1)) #t) ())) (< i 5)) (if #f #f)) n)
  => 5 ; correct

(let ((n 0)) (do-ec (:until (:parallel (:range i 1 10) (:do () (begin (set! n (+ n 1)) #t) ())) (>= i 5)) (if #f #f)) n)
  => 5 ; correct

(list-ec (: c (quote (a b))) c)
  => (a b) ; correct

(list-ec (: c (quote (a b)) (quote (c d))) c)
  => (a b c d) ; correct

(list-ec (: c "ab") c)
  => (#\a #\b) ; correct

(list-ec (: c "ab" "cd") c)
  => (#\a #\b #\c #\d) ; correct

(list-ec (: c (vector (quote a) (quote b))) c)
  => (a b) ; correct

(list-ec (: c (vector (quote a) (quote b)) (vector (quote c))) c)
  => (a b c) ; correct

(list-ec (: i 0) i)
  => () ; correct

(list-ec (: i 1) i)
  => (0) ; correct

(list-ec (: i 10) i)
  => (0 1 2 3 4 5 6 7 8 9) ; correct

(list-ec (: i 1 2) i)
  => (1) ; correct

(list-ec (: i 1 2 3) i)
  => (1) ; correct

(list-ec (: i 1 9 3) i)
  => (1 4 7) ; correct

(list-ec (: i 0.0 1.0 0.2) i)
  => (0.0 0.2 0.4 0.6 0.8) ; correct

(list-ec (: c #\a #\c) c)
  => (#\a #\b #\c) ; correct

(begin (let ((f (my-open-output-file "tmp1"))) (do-ec (:range n 10) (begin (write n f) (newline f))) (close-output-port f)) (my-call-with-input-file "tmp1" (lambda (port) (list-ec (: x port read) x))))
  => (0 1 2 3 4 5 6 7 8 9) ; correct

(begin (let ((f (my-open-output-file "tmp1"))) (do-ec (:range n 10) (begin (write n f) (newline f))) (close-output-port f)) (my-call-with-input-file "tmp1" (lambda (port) (list-ec (: x port) x))))
  => (0 1 2 3 4 5 6 7 8 9) ; correct

(list-ec (:list c (index i) (quote (a b))) (list c i))
  => ((a 0) (b 1)) ; correct

(list-ec (:string c (index i) "a") (list c i))
  => ((#\a 0)) ; correct

(list-ec (:vector c (index i) (vector (quote a))) (list c i))
  => ((a 0)) ; correct

(list-ec (:range i (index j) 0 -3 -1) (list i j))
  => ((0 0) (-1 1) (-2 2)) ; correct

(list-ec (:real-range i (index j) 0 1 0.2) (list i j))
  => ((0.0 0) (0.2 1) (0.4 2) (0.6 3) (0.8 4)) ; correct

(list-ec (:char-range c (index i) #\a #\c) (list c i))
  => ((#\a 0) (#\b 1) (#\c 2)) ; correct

(list-ec (: x (index i) (quote (a b c d))) (list x i))
  => ((a 0) (b 1) (c 2) (d 3)) ; correct

(begin (let ((f (my-open-output-file "tmp1"))) (do-ec (:range n 10) (begin (write n f) (newline f))) (close-output-port f)) (my-call-with-input-file "tmp1" (lambda (port) (list-ec (: x (index i) port) (list x i)))))
  => ((0 0) (1 1) (2 2) (3 3) (4 4) (5 5) (6 6) (7 7) (8 8) (9 9)) ; correct

(list-ec (: i 5) (* i i))
  => (0 1 4 9 16) ; correct

(list-ec (: n 1 4) (: i n) (list n i))
  => ((1 0) (2 0) (2 1) (3 0) (3 1) (3 2)) ; correct

(list-ec (: x (index i) "abc") (list x i))
  => ((#\a 0) (#\b 1) (#\c 2)) ; correct

(list-ec (:string c (index i) "a" "b") (cons c i))
  => ((#\a . 0) (#\b . 1)) ; correct

(list-ec (:range x 5) (:range x x) x)
  => (0 0 1 0 1 2 0 1 2 3) ; correct

(list-ec (:list x (quote (2 "23" (4)))) (: y x) y)
  => (0 1 #\2 #\3 4) ; correct

(list-ec (:parallel (:integers x) (:do ((i 10)) (< x i) ((- i 1)))) (list x i))
  => ((0 10) (1 9) (2 8) (3 7) (4 6)) ; correct

(factorial 0)
  => 1 ; correct

(factorial 1)
  => 1 ; correct

(factorial 3)
  => 6 ; correct

(factorial 5)
  => 120 ; correct

(eratosthenes 50)
  => (2 3 5 7 11 13 17 19 23 29 31 37 41 43 47) ; correct

(length (eratosthenes 100000))
  => 9592 ; correct

(pythagoras 15)
  => ((3 4 5) (5 12 13) (6 8 10) (9 12 15)) ; correct

(length (pythagoras 200))
  => 127 ; correct

(qsort (quote (1 5 4 2 4 5 3 2 1 3)))
  => (1 1 2 2 3 3 4 4 5 5) ; correct

(pi-BBP 5)
  => 3.14159265322809 ; correct

(begin (let ((f (my-open-output-file "tmp1"))) (do-ec (:range n 10) (begin (write n f) (newline f))) (close-output-port f)) (read-lines "tmp1"))
  => ("0\n" "1\n" "2\n" "3\n" "4\n" "5\n" "6\n" "7\n" "8\n" "9\n") ; correct


correct examples : 163
wrong examples   : 0

/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'ec.scm' -output-file 'ec.c' -dynamic -feature chicken-compile-shared -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -emit-import-library ec

Note: in local unknown procedure,
  in toplevel procedure `ec#make-initial-:-dispatch':
  (ec.scm:758) in procedure call to `real?', the predicate is called with an argument of type `number' and will always return true

Note: in local unknown procedure,
  in toplevel procedure `ec#make-initial-:-dispatch':
  (ec.scm:758) in procedure call to `real?', the predicate is called with an argument of type `fixnum' and will always return true

Note: in local unknown procedure,
  in toplevel procedure `ec#make-initial-:-dispatch':
  (ec.scm:767) in procedure call to `string?', the predicate is called with an argument of type `string' and will always return true

Note: in local unknown procedure,
  in toplevel procedure `ec#make-initial-:-dispatch':
  (ec.scm:774) in procedure call to `real?', the predicate is called with an argument of type `fixnum' and will always return true

Note: in local unknown procedure,
  in toplevel procedure `ec#make-initial-:-dispatch':
  (ec.scm:785) in procedure call to `string?', the predicate is called with an argument of type `string' and will always return true
generating import library `ec.import.scm' for module `ec' ...
'gcc' 'ec.c' -o 'ec.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -fPIC -DPIC -DC_SHARED -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm ec.c
'gcc' 'ec.o' -o 'ec.so' -shared -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm ec.o
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'ec.import.scm' -output-file 'ec.import.c' -dynamic -feature chicken-compile-shared -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/..
'gcc' 'ec.import.c' -o 'ec.import.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -fPIC -DPIC -DC_SHARED -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm ec.import.c
'gcc' 'ec.import.o' -o 'ec.import.so' -shared -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm ec.import.o

(let ((x 0)) (do-ec (set! x (+ x 1))) x)
  => 1 ; correct

(let ((x 0)) (do-ec (:range i 10) (set! x (+ x 1))) x)
  => 10 ; correct

(let ((x 0)) (do-ec (:range n 10) (:range k n) (set! x (+ x 1))) x)
  => 45 ; correct

(list-ec 1)
  => (1) ; correct

(list-ec (:range i 4) i)
  => (0 1 2 3) ; correct

(list-ec (:range n 3) (:range k (+ n 1)) (list n k))
  => ((0 0) (1 0) (1 1) (2 0) (2 1) (2 2)) ; correct

(list-ec (:range n 5) (if (even? n)) (:range k (+ n 1)) (list n k))
  => ((0 0) (2 0) (2 1) (2 2) (4 0) (4 1) (4 2) (4 3) (4 4)) ; correct

(list-ec (:range n 5) (not (even? n)) (:range k (+ n 1)) (list n k))
  => ((1 0) (1 1) (3 0) (3 1) (3 2) (3 3)) ; correct

(list-ec (:range n 5) (and (even? n) (> n 2)) (:range k (+ n 1)) (list n k))
  => ((4 0) (4 1) (4 2) (4 3) (4 4)) ; correct

(list-ec (:range n 5) (or (even? n) (> n 3)) (:range k (+ n 1)) (list n k))
  => ((0 0) (2 0) (2 1) (2 2) (4 0) (4 1) (4 2) (4 3) (4 4)) ; correct

(let ((x 0)) (list-ec (:range n 10) (begin (set! x (+ x 1))) n) x)
  => 10 ; correct

(list-ec (nested (:range n 3) (:range k n)) k)
  => (0 0 1) ; correct

(append-ec (quote (a b)))
  => (a b) ; correct

(append-ec (:range i 0) (quote (a b)))
  => () ; correct

(append-ec (:range i 1) (quote (a b)))
  => (a b) ; correct

(append-ec (:range i 2) (quote (a b)))
  => (a b a b) ; correct

(string-ec #\a)
  => "a" ; correct

(string-ec (:range i 0) #\a)
  => "" ; correct

(string-ec (:range i 1) #\a)
  => "a" ; correct

(string-ec (:range i 2) #\a)
  => "aa" ; correct

(string-append-ec "ab")
  => "ab" ; correct

(string-append-ec (:range i 0) "ab")
  => "" ; correct

(string-append-ec (:range i 1) "ab")
  => "ab" ; correct

(string-append-ec (:range i 2) "ab")
  => "abab" ; correct

(vector-ec 1)
  => #(1) ; correct

(vector-ec (:range i 0) i)
  => #() ; correct

(vector-ec (:range i 1) i)
  => #(0) ; correct

(vector-ec (:range i 2) i)
  => #(0 1) ; correct

(vector-of-length-ec 1 1)
  => #(1) ; correct

(vector-of-length-ec 0 (:range i 0) i)
  => #() ; correct

(vector-of-length-ec 1 (:range i 1) i)
  => #(0) ; correct

(vector-of-length-ec 2 (:range i 2) i)
  => #(0 1) ; correct

(sum-ec 1)
  => 1 ; correct

(sum-ec (:range i 0) i)
  => 0 ; correct

(sum-ec (:range i 1) i)
  => 0 ; correct

(sum-ec (:range i 2) i)
  => 1 ; correct

(sum-ec (:range i 3) i)
  => 3 ; correct

(product-ec 1)
  => 1 ; correct

(product-ec (:range i 1 0) i)
  => 1 ; correct

(product-ec (:range i 1 1) i)
  => 1 ; correct

(product-ec (:range i 1 2) i)
  => 1 ; correct

(product-ec (:range i 1 3) i)
  => 2 ; correct

(product-ec (:range i 1 4) i)
  => 6 ; correct

(min-ec 1)
  => 1 ; correct

(min-ec (:range i 1) i)
  => 0 ; correct

(min-ec (:range i 2) i)
  => 0 ; correct

(max-ec 1)
  => 1 ; correct

(max-ec (:range i 1) i)
  => 0 ; correct

(max-ec (:range i 2) i)
  => 1 ; correct

(first-ec #f 1)
  => 1 ; correct

(first-ec #f (:range i 0) i)
  => #f ; correct

(first-ec #f (:range i 1) i)
  => 0 ; correct

(first-ec #f (:range i 2) i)
  => 0 ; correct

(let ((last-i -1)) (first-ec #f (:range i 10) (begin (set! last-i i)) i) last-i)
  => 0 ; correct

(last-ec #f 1)
  => 1 ; correct

(last-ec #f (:range i 0) i)
  => #f ; correct

(last-ec #f (:range i 1) i)
  => 0 ; correct

(last-ec #f (:range i 2) i)
  => 1 ; correct

(any?-ec #f)
  => #f ; correct

(any?-ec #t)
  => #t ; correct

(any?-ec (:range i 2 2) (even? i))
  => #f ; correct

(any?-ec (:range i 2 3) (even? i))
  => #t ; correct

(every?-ec #f)
  => #f ; correct

(every?-ec #t)
  => #t ; correct

(every?-ec (:range i 2 2) (even? i))
  => #t ; correct

(every?-ec (:range i 2 3) (even? i))
  => #t ; correct

(every?-ec (:range i 2 4) (even? i))
  => #f ; correct

(let ((sum-sqr (lambda (x result) (+ result (* x x))))) (fold-ec 0 (:range i 10) i sum-sqr))
  => 285 ; correct

(let ((minus-1 (lambda (x) (- x 1))) (sum-sqr (lambda (x result) (+ result (* x x))))) (fold3-ec (error "wrong") (:range i 10) i minus-1 sum-sqr))
  => 284 ; correct

(fold3-ec (quote infinity) (:range i 0) i min min)
  => infinity ; correct

(list-ec (:list x (quote ())) x)
  => () ; correct

(list-ec (:list x (quote (1))) x)
  => (1) ; correct

(list-ec (:list x (quote (1 2 3))) x)
  => (1 2 3) ; correct

(list-ec (:list x (quote (1)) (quote (2))) x)
  => (1 2) ; correct

(list-ec (:list x (quote (1)) (quote (2)) (quote (3))) x)
  => (1 2 3) ; correct

(list-ec (:string c "") c)
  => () ; correct

(list-ec (:string c "1") c)
  => (#\1) ; correct

(list-ec (:string c "123") c)
  => (#\1 #\2 #\3) ; correct

(list-ec (:string c "1" "2") c)
  => (#\1 #\2) ; correct

(list-ec (:string c "1" "2" "3") c)
  => (#\1 #\2 #\3) ; correct

(list-ec (:vector x (vector)) x)
  => () ; correct

(list-ec (:vector x (vector 1)) x)
  => (1) ; correct

(list-ec (:vector x (vector 1 2 3)) x)
  => (1 2 3) ; correct

(list-ec (:vector x (vector 1) (vector 2)) x)
  => (1 2) ; correct

(list-ec (:vector x (vector 1) (vector 2) (vector 3)) x)
  => (1 2 3) ; correct

(list-ec (:range x -2) x)
  => () ; correct

(list-ec (:range x -1) x)
  => () ; correct

(list-ec (:range x 0) x)
  => () ; correct

(list-ec (:range x 1) x)
  => (0) ; correct

(list-ec (:range x 2) x)
  => (0 1) ; correct

(list-ec (:range x 0 3) x)
  => (0 1 2) ; correct

(list-ec (:range x 1 3) x)
  => (1 2) ; correct

(list-ec (:range x -2 -1) x)
  => (-2) ; correct

(list-ec (:range x -2 -2) x)
  => () ; correct

(list-ec (:range x 1 5 2) x)
  => (1 3) ; correct

(list-ec (:range x 1 6 2) x)
  => (1 3 5) ; correct

(list-ec (:range x 5 1 -2) x)
  => (5 3) ; correct

(list-ec (:range x 6 1 -2) x)
  => (6 4 2) ; correct

(list-ec (:real-range x 0.0 3.0) x)
  => (0.0 1.0 2.0) ; correct

(list-ec (:real-range x 0 3.0) x)
  => (0.0 1.0 2.0) ; correct

(list-ec (:real-range x 0 3 1.0) x)
  => (0.0 1.0 2.0) ; correct

(string-ec (:char-range c #\a #\z) c)
  => "abcdefghijklmnopqrstuvwxyz" ; correct

(begin (let ((f (my-open-output-file "tmp1"))) (do-ec (:range n 10) (begin (write n f) (newline f))) (close-output-port f)) (my-call-with-input-file "tmp1" (lambda (port) (list-ec (:port x port read) x))))
  => (0 1 2 3 4 5 6 7 8 9) ; correct

(begin (let ((f (my-open-output-file "tmp1"))) (do-ec (:range n 10) (begin (write n f) (newline f))) (close-output-port f)) (my-call-with-input-file "tmp1" (lambda (port) (list-ec (:port x port) x))))
  => (0 1 2 3 4 5 6 7 8 9) ; correct

(list-ec (:do ((i 0)) (< i 4) ((+ i 1))) i)
  => (0 1 2 3) ; correct

(list-ec (:do (let ((x (quote x)))) ((i 0)) (< i 4) (let ((j (- 10 i)))) #t ((+ i 1))) j)
  => (10 9 8 7) ; correct

(list-ec (:let x 1) x)
  => (1) ; correct

(list-ec (:let x 1) (:let y (+ x 1)) y)
  => (2) ; correct

(list-ec (:let x 1) (:let x (+ x 1)) x)
  => (2) ; correct

(list-ec (:parallel (:range i 1 10) (:list x (quote (a b c)))) (list i x))
  => ((1 a) (2 b) (3 c)) ; correct

(list-ec (:while (:range i 1 10) (< i 5)) i)
  => (1 2 3 4) ; correct

(list-ec (:until (:range i 1 10) (>= i 5)) i)
  => (1 2 3 4 5) ; correct

(list-ec (:while (:list i (quote (1 2 3 4 5 6 7 8 9))) (< i 5)) i)
  => (1 2 3 4) ; correct

(list-ec (:until (:list i (quote (1 2 3 4 5 6 7 8 9))) (>= i 5)) i)
  => (1 2 3 4 5) ; correct

(list-ec (:while (:vector x (index i) (quote #(1 2 3 4 5))) (< x 10)) x)
  => (1 2 3 4 5) ; correct

(list-ec (:while (:parallel (:range i 1 10) (:list j (quote (1 2 3 4 5 6 7 8 9)))) (< i 5)) (list i j))
  => ((1 1) (2 2) (3 3) (4 4)) ; correct

(list-ec (:until (:parallel (:range i 1 10) (:list j (quote (1 2 3 4 5 6 7 8 9)))) (>= i 5)) (list i j))
  => ((1 1) (2 2) (3 3) (4 4) (5 5)) ; correct

(let ((n 0)) (do-ec (:while (:range i 1 10) (begin (set! n (+ n 1)) (< i 5))) (if #f #f)) n)
  => 5 ; correct

(let ((n 0)) (do-ec (:until (:range i 1 10) (begin (set! n (+ n 1)) (>= i 5))) (if #f #f)) n)
  => 5 ; correct

(let ((n 0)) (do-ec (:while (:parallel (:range i 1 10) (:do () (begin (set! n (+ n 1)) #t) ())) (< i 5)) (if #f #f)) n)
  => 5 ; correct

(let ((n 0)) (do-ec (:until (:parallel (:range i 1 10) (:do () (begin (set! n (+ n 1)) #t) ())) (>= i 5)) (if #f #f)) n)
  => 5 ; correct

(list-ec (: c (quote (a b))) c)
  => (a b) ; correct

(list-ec (: c (quote (a b)) (quote (c d))) c)
  => (a b c d) ; correct

(list-ec (: c "ab") c)
  => (#\a #\b) ; correct

(list-ec (: c "ab" "cd") c)
  => (#\a #\b #\c #\d) ; correct

(list-ec (: c (vector (quote a) (quote b))) c)
  => (a b) ; correct

(list-ec (: c (vector (quote a) (quote b)) (vector (quote c))) c)
  => (a b c) ; correct

(list-ec (: i 0) i)
  => () ; correct

(list-ec (: i 1) i)
  => (0) ; correct

(list-ec (: i 10) i)
  => (0 1 2 3 4 5 6 7 8 9) ; correct

(list-ec (: i 1 2) i)
  => (1) ; correct

(list-ec (: i 1 2 3) i)
  => (1) ; correct

(list-ec (: i 1 9 3) i)
  => (1 4 7) ; correct

(list-ec (: i 0.0 1.0 0.2) i)
  => (0.0 0.2 0.4 0.6 0.8) ; correct

(list-ec (: c #\a #\c) c)
  => (#\a #\b #\c) ; correct

(begin (let ((f (my-open-output-file "tmp1"))) (do-ec (:range n 10) (begin (write n f) (newline f))) (close-output-port f)) (my-call-with-input-file "tmp1" (lambda (port) (list-ec (: x port read) x))))
  => (0 1 2 3 4 5 6 7 8 9) ; correct

(begin (let ((f (my-open-output-file "tmp1"))) (do-ec (:range n 10) (begin (write n f) (newline f))) (close-output-port f)) (my-call-with-input-file "tmp1" (lambda (port) (list-ec (: x port) x))))
  => (0 1 2 3 4 5 6 7 8 9) ; correct

(list-ec (:list c (index i) (quote (a b))) (list c i))
  => ((a 0) (b 1)) ; correct

(list-ec (:string c (index i) "a") (list c i))
  => ((#\a 0)) ; correct

(list-ec (:vector c (index i) (vector (quote a))) (list c i))
  => ((a 0)) ; correct

(list-ec (:range i (index j) 0 -3 -1) (list i j))
  => ((0 0) (-1 1) (-2 2)) ; correct

(list-ec (:real-range i (index j) 0 1 0.2) (list i j))
  => ((0.0 0) (0.2 1) (0.4 2) (0.6 3) (0.8 4)) ; correct

(list-ec (:char-range c (index i) #\a #\c) (list c i))
  => ((#\a 0) (#\b 1) (#\c 2)) ; correct

(list-ec (: x (index i) (quote (a b c d))) (list x i))
  => ((a 0) (b 1) (c 2) (d 3)) ; correct

(begin (let ((f (my-open-output-file "tmp1"))) (do-ec (:range n 10) (begin (write n f) (newline f))) (close-output-port f)) (my-call-with-input-file "tmp1" (lambda (port) (list-ec (: x (index i) port) (list x i)))))
  => ((0 0) (1 1) (2 2) (3 3) (4 4) (5 5) (6 6) (7 7) (8 8) (9 9)) ; correct

(list-ec (: i 5) (* i i))
  => (0 1 4 9 16) ; correct

(list-ec (: n 1 4) (: i n) (list n i))
  => ((1 0) (2 0) (2 1) (3 0) (3 1) (3 2)) ; correct

(list-ec (: x (index i) "abc") (list x i))
  => ((#\a 0) (#\b 1) (#\c 2)) ; correct

(list-ec (:string c (index i) "a" "b") (cons c i))
  => ((#\a . 0) (#\b . 1)) ; correct

(list-ec (:range x 5) (:range x x) x)
  => (0 0 1 0 1 2 0 1 2 3) ; correct

(list-ec (:list x (quote (2 "23" (4)))) (: y x) y)
  => (0 1 #\2 #\3 4) ; correct

(list-ec (:parallel (:integers x) (:do ((i 10)) (< x i) ((- i 1)))) (list x i))
  => ((0 10) (1 9) (2 8) (3 7) (4 6)) ; correct

(factorial 0)
  => 1 ; correct

(factorial 1)
  => 1 ; correct

(factorial 3)
  => 6 ; correct

(factorial 5)
  => 120 ; correct

(eratosthenes 50)
  => (2 3 5 7 11 13 17 19 23 29 31 37 41 43 47) ; correct

(length (eratosthenes 100000))
  => 9592 ; correct

(pythagoras 15)
  => ((3 4 5) (5 12 13) (6 8 10) (9 12 15)) ; correct

(length (pythagoras 200))
  => 127 ; correct

(qsort (quote (1 5 4 2 4 5 3 2 1 3)))
  => (1 1 2 2 3 3 4 4 5 5) ; correct

(pi-BBP 5)
  => 3.14159265322809 ; correct

(begin (let ((f (my-open-output-file "tmp1"))) (do-ec (:range n 10) (begin (write n f) (newline f))) (close-output-port f)) (read-lines "tmp1"))
  => ("0\n" "1\n" "2\n" "3\n" "4\n" "5\n" "6\n" "7\n" "8\n" "9\n") ; correct


correct examples : 163
wrong examples   : 0

======================================== hash-table tests ...
SRFI 69 procedures
HT - No Parameters
HT - Test Parameter
HT - Number Test Parameter
HT - All Optional Parameters
HT - All Parameters
HT - Insert with setter
HT - Insert with update!
HT - A-List
HT - set! overwrites
HT - Delete
HT - Remove
HT - Make from A-List
HT - Merge!
HT - Merge
HT - Map
HT - Fold
HT - Built-in string hash function
HT - After overwriting 'string-hash' should still work
HT - custom hash function
HT - out of bounds value is caught
Hash collision weaknesses
HT - Stress Insert 100000 Fixnum Key Items
0.327s CPU time, 0.063s GC time (major), 258687/257028 mutations (total/tracked), 5/1020 GCs (major/minor), maximum live heap: 7.27 MiB
HT - Stress Retrieve 100000 Fixnum Key Items
0.123s CPU time, 16/0 mutations (total/tracked), 0/687 GCs (major/minor), maximum live heap: 7.27 MiB
HT - copy
((1 a) (2 b) (3 c)) -- ((3 c) (2 b) (1 a))
HT - recursive depth/length
414580994  111869694
56715518  188147105
======================================== port tests ...
(PASS) Initially, output string is empty
(PASS) output can be extracted from output string
(PASS) closing a string output port has no effect on the returned data
(PASS) writing to a closed string output port is an error
slow...
0.26s CPU time, 15924/2656 mutations (total/tracked), 1/1190 GCs (major/minor), maximum live heap: 603.25 KiB
fast...
0.004s CPU time, 56/14 mutations (total/tracked), maximum live heap: 602.91 KiB


Procedures check on TCP ports being closed

tcp-addresses...OK
tcp-port-numbers...OK
tcp-abandon-port...OK


Procedures check on output ports being closed

write...OK
fprintf...OK
print-call-chain...OK
print-error-message...OK
print...OK
print*...OK
display...OK
terminal-port?...OK
newline...OK
write-char...OK
write-line...OK
write-u8vector...OK
flush-output...OK
file-test-lock...OK
file-lock...OK
file-lock/blocking...OK
write-byte...OK
write-string...OK


Procedures check on input ports being closed

read...OK
read-char...OK
char-ready?...OK
peek-char...OK
terminal-port?...OK
read-line...OK
read-u8vector...OK
read-u8vector!...OK
file-test-lock...OK
file-lock...OK
file-lock/blocking...OK
read-byte...OK
read-token...OK
read-string...OK
read-string!...OK

Embedded NUL bytes in filenames are rejected


read-line string port position tests:

(PASS) advance row when encountering delim
(PASS) reaching limit sets col to limit, and does not advance row
(PASS) delimiter counted in limit
(PASS) EOF reached

read-string!:

(PASS) peek-char won't influence the result of read-string!
(PASS) read-string! won't read past buffer if given #f
(PASS) read-string! reads the requested bytes with #f
(PASS) read-string! won't read past buffer if given #f and offset
(PASS) read-string! reads the requested bytes with #f and offset
(PASS) read-string! reads until the end correctly
(PASS) read-string! leaves the buffer's tail intact
(PASS) after peek-char at EOF, read-string! doesn't mutate the buffer
(PASS) read-string! won't read past buffer if given size
(PASS) read-string! reads the requested bytes with buffer size
(PASS) read-string! won't read past buffer if given size and offset
(PASS) read-string! reads the requested bytes with buffer size and offset
(PASS) read-string! reads until the end correctly with buffer size
(PASS) read-string! leaves the buffer's tail intact
(PASS) read-string! at EOF reads nothing
(PASS) read-string! at EOF doesn't mutate the buffer

line endings:


string port:

(PASS) \n
(PASS) \r
(PASS) \r\n
(PASS) eof

file port:

(PASS) \n
(PASS) \r
(PASS) \r\n
(PASS) eof

custom port:

(PASS) \n
(PASS) \r
(PASS) \r\n
(PASS) eof
  36 tests completed in 0.572 seconds
  36 (100.00%) tests passed
  0 (0.00%) tests failed
======================================== fixnum tests ...
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'fixnum-tests.scm' -output-file 'a.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/..
'gcc' 'a.c' -o 'a.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm a.c
'gcc' 'a.o' -o 'a.out' -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm a.o
======================================== string->number tests ...
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'numbers-string-conversion-tests.scm' -output-file 'a.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/..
'gcc' 'a.c' -o 'a.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm a.c
'gcc' 'a.o' -o 'a.out' -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm a.o

-> Simple integers
-----------------------------------------------------
OK                  ("1" 1)
OK                  ("+1" 1 "1")
OK                  ("-1" -1)
OK                  ("#i1" 1.0 "1.0" "1.")
OK                  ("#I1" 1.0 "1.0" "1.")
OK                  ("#i-1" -1.0 "-1.0" "-1.")
OK                  ("123\x00456" #f)
OK                  ("-#i1" #f)
OK                  ("+-1" #f)
OK                  ("" #f)
OK                  ("-" #f)
OK                  ("+" #f)
OK                  ("+-" #f)

-> Basic decimal notation
-----------------------------------------------------
OK                  ("1.0" 1.0 "1.")
OK                  ("1." 1.0 "1.0" "1.")
OK                  ("1.#" 1.0 1.5 "1.0" "1." "1.5")
OK                  (".1" 0.1 "0.1" "100.0e-3")
OK                  ("-.1" -0.1 "-0.1" "-100.0e-3")
OK                  ("-.0" -0.0 "-0." "-0.0" "0.0" "0." ".0")
OK                  ("-0." -0.0 "-.0" "-0.0" "0.0" "0." ".0")
OK                  ("." #f)
OK                  (".1." #f)
OK                  ("..1" #f)
OK                  ("1.." #f)
OK                  ("#i1.0" 1.0 "1.0" "1.")
OK                  ("#e1.0" 1 "1")
OK                  ("#e-.0" 0 "0")
OK                  ("#e-0." 0 "0")
OK                  ("-#e.0" #f)

-> Decimal notation with padding
-----------------------------------------------------
OK                  ("1#" 10.0 15.0 "10.0" "15.0" "10." "15.")
OK                  ("#e1#" 10 15 "10" "15")
OK                  ("#E1#" 10 15 "10" "15")
OK                  ("#1" #f)
OK                  ("#" #f)
OK                  ("1#2" #f)
OK                  ("1.#2" #f)
OK                  (".#" #f)
OK                  ("#.#" #f)
OK                  ("#.1" #f)
OK                  ("1#.2" #f)
OK                  ("1#." 10.0 15.0 "10.0" "15.0" "10." "15.")

-> Decimal notation with suffix
-----------------------------------------------------
OK                  ("1e2" 100.0 "100.0" "100.")
OK                  ("1E2" 100.0 "100.0" "100.")
OK                  ("1s2" 100.0 "100.0" "100.")
OK                  ("1S2" 100.0 "100.0" "100.")
OK                  ("1f2" 100.0 "100.0" "100.")
OK                  ("1F2" 100.0 "100.0" "100.")
OK                  ("1d2" 100.0 "100.0" "100.")
OK                  ("1D2" 100.0 "100.0" "100.")
OK                  ("1l2" 100.0 "100.0" "100.")
OK                  ("1L2" 100.0 "100.0" "100.")
OK                  ("1e2e3" #f)
OK                  ("1e2s3" #f)
OK                  ("1e2.0" #f)

-> Decimal notation with suffix and padding
-----------------------------------------------------
OK                  ("1#e2" 1000.0 1500.0 "1000.0" "1500.0" "1000." "1500." "1.0e3" "15.0e2")
OK                  ("1e2#" #f)

-> NaN, Inf, negative zero
-----------------------------------------------------
OK                  ("+nan.0" +nan.0 "+NaN.0")
OK                  ("+NAN.0" +nan.0 "+nan.0" "+NaN.0")
OK                  ("+nan.1" #f)
OK                  ("+nan.01" #f)
OK                  ("+inf.0" +inf.0 "+Inf.0")
OK                  ("+InF.0" +inf.0 "+inf.0" "+Inf.0")
OK                  ("-inf.0" -inf.0 "-Inf.0")
OK                  ("-iNF.0" -inf.0 "-inf.0" "-Inf.0")
OK                  ("+inf.01" #f)
OK                  ("+inf.1" #f)
OK                  ("-inf.01" #f)
OK                  ("-inf.1" #f)
OK                  ("+inf.0/1" #f)
OK                  ("1/+inf.0" #f)
OK                  ("#e+nan.0" #f)
OK                  ("#e+inf.0" #f)
OK                  ("#e-inf.0" #f)
OK                  ("#i+nan.0" +nan.0 "+nan.0" "+NaN.0")
OK                  ("#i+inf.0" +inf.0 "+inf.0" "+Inf.0")
OK                  ("#i-inf.0" -inf.0 "-inf.0" "-Inf.0")
OK                  ("-0.0" -0.0 "-.0" "-0.")
OK                  ("+nan" #f)
OK                  ("+inf" #f)
OK                  ("-inf" #f)
OK                  ("nan.0" #f)
OK                  ("inf.0" #f)

-> Fractions
-----------------------------------------------------
OK                  ("1/2" 0.5 "0.5" ".5" "500.0e-3")
OK                  ("#e1/2" #f)
OK                  ("10/2" 5.0 "5.0" "5.")
OK                  ("#i10/2" 5.0 "5.0" "5.")
OK                  ("-1/2" -0.5 "-0.5" "-.5" "-500.0e-3")
OK                  ("1/-2" #f)
OK                  ("10/0" +inf.0 "+inf.0")
OK                  ("0/10" -0.0 "0.0" "0.")
OK                  ("#e0/10" 0 "0")
OK                  ("#e1#/2" 5 "5")
OK                  ("#e1/2#" #f)
OK                  ("1.0/2" #f)
OK                  ("1/2.0" #f)
OK                  ("1/2e2" #f)
OK                  ("1/2e2" #f)
OK                  ("1#/2" 5.0 7.5 "5.0" "5." "7.5")
OK                  ("1/2#" 0.05 "0.05" ".05" "50.0e-3" "5.e-002")
OK                  ("#i3/2" 1.5 "1.5")
OK                  ("1#/#" #f)
OK                  ("1/" #f)
OK                  ("1/+" #f)
OK                  ("+/1" #f)
OK                  ("/1" #f)
OK                  ("/" #f)
OK                  ("#i1/0" +inf.0 "+inf.0" "+Inf.0")
OK                  ("#i-1/0" -inf.0 "-inf.0" "-Inf.0")
OK                  ("#i0/0" +nan.0 "+nan.0" "+NaN.0")

-> Some invalid complex numbers syntax (not supported at all)
-----------------------------------------------------
OK                  ("2i" #f)
OK                  ("+-i" #f)
OK                  ("i" #f)
OK                  ("1+2i1" #f)
OK                  ("1+2" #f)
OK                  ("1#+#i" #f)

-> Base prefixes
-----------------------------------------------------
OK                  ("#x11" 17 "17")
OK                  ("#X11" 17 "17")
OK                  ("#d11" 11 "11")
OK                  ("#D11" 11 "11")
OK                  ("#o11" 9 "9")
OK                  ("#O11" 9 "9")
OK                  ("#b11" 3 "3")
OK                  ("#B11" 3 "3")
OK                  ("#da1" #f)
OK                  ("#o8" #f)
OK                  ("#b2" #f)
OK                  ("#o7" 7 "7")
OK                  ("#xa" 10 "10")
OK                  ("#xA" 10 "10")
OK                  ("#xf" 15 "15")
OK                  ("#xg" #f)
OK                  ("#x-10" -16 "-16")
OK                  ("#d-10" -10 "-10")
OK                  ("#o-10" -8 "-8")
OK                  ("#b-10" -2 "-2")
OK                  ("-#x10" #f)
OK                  ("-#d10" #f)
OK                  ("-#o10" #f)
OK                  ("-#b10" #f)
OK                  ("#x-" #f)
OK                  ("#x" #f)
OK                  ("#d" #f)
OK                  ("#d-" #f)
OK                  ("#d+" #f)
OK                  ("#o" #f)
OK                  ("#o-" #f)
OK                  ("#b" #f)
OK                  ("#b-" #f)
OK                  ("#e" #f)
OK                  ("#e-" #f)
OK                  ("#i" #f)
OK                  ("#i-" #f)

-> Combination of prefixes
-----------------------------------------------------
OK                  ("#x#x11" #f)
OK                  ("#x#b11" #f)
OK                  ("#b#o11" #f)
OK                  ("#e#x10" 16 "16")
OK                  ("#i#x10" 16.0 "16.0" "16.")
OK                  ("#e#e10" #f)
OK                  ("#e#e#x10" #f)
OK                  ("#E#e#X10" #f)
OK                  ("#i#e#x10" #f)
OK                  ("#e#x#e10" #f)
OK                  ("#x#x#e10" #f)
OK                  ("#x#e#x10" #f)

-> Base prefixes with padding
-----------------------------------------------------
OK                  ("#x1#0" #f)
OK                  ("#d1#0" #f)
OK                  ("#o1#0" #f)
OK                  ("#b1#0" #f)
OK                  ("#x1#" 16.0 24.0 "16.0" "24.0" "16." "24.")
OK                  ("#d1#" 10.0 15.0 "10.0" "15.0" "10." "15.")
OK                  ("#o1#" 8.0 12.0 "8.0" "12.0" "8." "12.")
OK                  ("#b1#" 2.0 3.0 "2.0" "3.0" "2." "3.")

-> (Attempted) decimal notation with base prefixes
-----------------------------------------------------
OK                  ("#x1.0" #f)
OK                  ("#d1.0" 1.0 "1.0" "1.")
OK                  ("#o1.0" #f)
OK                  ("#b1.0" #f)
OK                  ("#x1.#" #f)
OK                  ("#d1.#" 1.0 1.5 "1.0" "1.5" "1.")
OK                  ("#o1.#" #f)
OK                  ("#b1.#" #f)
OK                  ("#x1." #f)
OK                  ("#d1." 1.0 "1.0" "1.")
OK                  ("#o1." #f)
OK                  ("#b1." #f)
OK                  ("#x.1" #f)
OK                  ("#d.1" 0.1 "0.1" ".1" "100.0e-3")
OK                  ("#o.1" #f)
OK                  ("#b.1" #f)
OK                  ("#x1e2" 482 "482")
OK                  ("#d1e2" 100.0 "100.0" "100.")
OK                  ("#o1e2" #f)
OK                  ("#b1e2" #f)

-> Fractions with prefixes
-----------------------------------------------------
OK                  ("#x10/2" 8.0 "8.0" "8.")
OK                  ("#x11/2" 8.5 "8.5")
OK                  ("#d11/2" 5.5 "5.5")
OK                  ("#o11/2" 4.5 "4.5")
OK                  ("#b11/10" 1.5 "1.5")
OK                  ("#b11/2" #f)
OK                  ("#x10/#o10" #f)
OK                  ("10/#o10" #f)
OK                  ("#x1#/2" 8.0 12.0 "8.0" "8." "12.0" "12.")
OK                  ("#d1#/2" 5.0 7.5 "5.0" "5." "7.5")
OK                  ("#o1#/2" 4.0 6.0 "4.0" "4." "6.0" "6.")
OK                  ("#b1#/2" #f)
OK                  ("#b1#/10" 1.0 1.5 "1.0" "1." "1.5")

-----> Everything OK, no errors!
======================================== srfi-4 tests ...
#u8(100 101)
#u16(100 101)
#u32(100 101)
#s8(100 101)
#s16(100 101)
#s32(100 101)
#f32(100.0 101.0)
#f64(100.0 101.0)
======================================== srfi-13 tests ...
string-null?..........................................................[ok]
string-null?..........................................................[ok]
string-every..........................................................[ok]
string-every..........................................................[ok]
string-every..........................................................[ok]
string-every..........................................................[ok]
string-every..........................................................[ok]
string-every..........................................................[ok]
string-every..........................................................[ok]
string-every..........................................................[ok]
string-every..........................................................[ok]
string-every..........................................................[ok]
string-any............................................................[ok]
string-any............................................................[ok]
string-any............................................................[ok]
string-any............................................................[ok]
string-any............................................................[ok]
string-any............................................................[ok]
string-any............................................................[ok]
string-any............................................................[ok]
string-any............................................................[ok]
string-any............................................................[ok]
string-tabulate.......................................................[ok]
string-tabulate.......................................................[ok]
reverse-list->string..................................................[ok]
reverse-list->string..................................................[ok]
substring/shared......................................................[ok]
substring/shared......................................................[ok]
string-copy!..........................................................[ok]
string-copy!..........................................................[ok]
string-copy!..........................................................[ok]
string-copy!: overlapping src and dest, moving right..................[ok]
string-copy!: overlapping src and dest, moving left...................[ok]
string-take...........................................................[ok]
string-take...........................................................[ok]
string-take...........................................................[ok]
string-drop...........................................................[ok]
string-drop...........................................................[ok]
string-drop...........................................................[ok]
string-take-right.....................................................[ok]
string-take-right.....................................................[ok]
string-take-right.....................................................[ok]
string-drop-right.....................................................[ok]
string-drop-right.....................................................[ok]
string-drop-right.....................................................[ok]
string-pad............................................................[ok]
string-pad............................................................[ok]
string-pad............................................................[ok]
string-pad............................................................[ok]
string-pad............................................................[ok]
string-pad............................................................[ok]
string-pad-right......................................................[ok]
string-pad-right......................................................[ok]
string-pad-right......................................................[ok]
string-pad-right......................................................[ok]
string-pad-right......................................................[ok]
string-pad-right......................................................[ok]
string-trim...........................................................[ok]
string-trim...........................................................[ok]
string-trim...........................................................[ok]
string-trim-right.....................................................[ok]
string-trim-right.....................................................[ok]
string-trim-right.....................................................[ok]
string-trim-both......................................................[ok]
string-trim-both......................................................[ok]
string-trim-both......................................................[ok]
string-compare........................................................[ok]
string-compare-ci.....................................................[ok]
string-prefix-length..................................................[ok]
string-prefix-length-ci...............................................[ok]
string-suffix-length..................................................[ok]
string-suffix-length-ci...............................................[ok]
string-prefix?........................................................[ok]
string-prefix?........................................................[ok]
string-prefix-ci?.....................................................[ok]
string-prefix-ci?.....................................................[ok]
string-suffix?........................................................[ok]
string-suffix?........................................................[ok]
string-suffix-ci?.....................................................[ok]
string-suffix-ci?.....................................................[ok]
string-index #1.......................................................[ok]
string-index #2.......................................................[ok]
string-index #3.......................................................[ok]
string-index #4.......................................................[ok]
string-index-right #1.................................................[ok]
string-index-right #2.................................................[ok]
string-index-right #3.................................................[ok]
string-index-right #4.................................................[ok]
string-count #1.......................................................[ok]
string-count #2.......................................................[ok]
string-count #3.......................................................[ok]
string-count #4.......................................................[ok]
string-contains.......................................................[ok]
string-contains.......................................................[ok]
string-contains-ci....................................................[ok]
string-contains-ci....................................................[ok]
string-titlecase......................................................[ok]
string-titlecase......................................................[ok]
string-titlecase!.....................................................[ok]
string-upcase.........................................................[ok]
string-upcase.........................................................[ok]
string-upcase!........................................................[ok]
string-downcase.......................................................[ok]
string-downcase.......................................................[ok]
string-downcase!......................................................[ok]
string-reverse........................................................[ok]
string-reverse........................................................[ok]
string-reverse........................................................[ok]
string-reverse!.......................................................[ok]
string-reverse!.......................................................[ok]
string-reverse!.......................................................[ok]
string-append.........................................................[ok]
string-concatenate....................................................[ok]
string-concatenate....................................................[ok]
string-concatenate/shared.............................................[ok]
string-concatenate-reverse............................................[ok]
string-concatenate-reverse............................................[ok]
string-concatenate-reverse/shared.....................................[ok]
string-map............................................................[ok]
string-map............................................................[ok]
string-map............................................................[ok]
string-map!...........................................................[ok]
string-map!...........................................................[ok]
string-map!...........................................................[ok]
string-fold...........................................................[ok]
string-fold...........................................................[ok]
string-fold-right.....................................................[ok]
string-fold-right.....................................................[ok]
string-unfold.........................................................[ok]
string-unfold.........................................................[ok]
string-unfold.........................................................[ok]
string-unfold-right...................................................[ok]
string-unfold-right...................................................[ok]
string-unfold-right...................................................[ok]
string-for-each.......................................................[ok]
string-for-each.......................................................[ok]
string-for-each.......................................................[ok]
string-for-each-index.................................................[ok]
string-for-each-index.................................................[ok]
string-for-each-index.................................................[ok]
xsubstring............................................................[ok]
xsubstring............................................................[ok]
xsubstring............................................................[ok]
xsubstring............................................................[ok]
xsubstring............................................................[ok]
string-xcopy!.........................................................[ok]
string-xcopy!.........................................................[ok]
string-replace........................................................[ok]
string-replace........................................................[ok]
string-replace........................................................[ok]
string-replace........................................................[ok]
string-replace........................................................[ok]
string-tokenize.......................................................[ok]
string-tokenize.......................................................[ok]
string-tokenize.......................................................[ok]
string-tokenize.......................................................[ok]
string-filter.........................................................[ok]
string-filter.........................................................[ok]
string-filter.........................................................[ok]
string-filter.........................................................[ok]
string-delete.........................................................[ok]
string-delete.........................................................[ok]
string-delete.........................................................[ok]
string-delete.........................................................[ok]
string-hash...........................................................[ok]
string-hash...........................................................[ok]
string-hash...........................................................[ok]
string-hash-ci........................................................[ok]
string-hash-ci........................................................[ok]
string=...............................................................[ok]
string=...............................................................[ok]
string=...............................................................[ok]
string=...............................................................[ok]
string<>..............................................................[ok]
string<>..............................................................[ok]
string<>..............................................................[ok]
string<>..............................................................[ok]
string<=..............................................................[ok]
string<=..............................................................[ok]
string<=..............................................................[ok]
string<=..............................................................[ok]
string<...............................................................[ok]
string<...............................................................[ok]
string<...............................................................[ok]
string<...............................................................[ok]
string>=..............................................................[ok]
string>=..............................................................[ok]
string>=..............................................................[ok]
string>=..............................................................[ok]
string>...............................................................[ok]
string>...............................................................[ok]
string>...............................................................[ok]
string>...............................................................[ok]
string-ci=............................................................[ok]
string-ci=............................................................[ok]
string-ci=............................................................[ok]
string-ci=............................................................[ok]
string-ci<>...........................................................[ok]
string-ci<>...........................................................[ok]
string-ci<>...........................................................[ok]
string-ci<>...........................................................[ok]
string-ci<=...........................................................[ok]
string-ci<=...........................................................[ok]
string-ci<=...........................................................[ok]
string-ci<=...........................................................[ok]
string-ci<............................................................[ok]
string-ci<............................................................[ok]
string-ci<............................................................[ok]
string-ci<............................................................[ok]
string-ci>=...........................................................[ok]
string-ci>=...........................................................[ok]
string-ci>=...........................................................[ok]
string-ci>=...........................................................[ok]
string-ci>............................................................[ok]
string-ci>............................................................[ok]
string-ci>............................................................[ok]
string-ci>............................................................[ok]
string=?..............................................................[ok]
string-parse-start+end................................................[ok]
string-parse-start+end................................................[ok]
string-parse-start+end................................................[ok]
string-parse-start+end................................................[ok]
check-substring-spec..................................................[ok]
check-substring-spec..................................................[ok]
substring-spec-ok?....................................................[ok]
substring-spec-ok?....................................................[ok]
make-kmp-restart-vector...............................................[ok]
make-kmp-restart-vector...............................................[ok]
make-kmp-restart-vector...............................................[ok]
make-kmp-restart-vector...............................................[ok]
KMP step 0 (exp: 0, act: 0), case: ("abc" "xx" #f 0 0)................[ok]
KMP step 1 (exp: 0, act: 0), case: ("abc" "xx" #f 0 0)................[ok]
KMP match? #f, case: ("abc" "xx" #f 0 0)..............................[ok]
KMP empty remaining steps: (), case: ("abc" "xx" #f 0 0)..............[ok]
KMP step 0 (exp: 0, act: 0), case: ("abc" "abc" #t 0 1 2).............[ok]
KMP step 1 (exp: 1, act: 1), case: ("abc" "abc" #t 0 1 2).............[ok]
KMP step 2 (exp: 2, act: 2), case: ("abc" "abc" #t 0 1 2).............[ok]
KMP match? #t, case: ("abc" "abc" #t 0 1 2)...........................[ok]
KMP empty remaining steps: (), case: ("abc" "abc" #t 0 1 2)...........[ok]
KMP step 0 (exp: 0, act: 0), case: ("abcd" "abc" #f 0 1 2)............[ok]
KMP step 1 (exp: 1, act: 1), case: ("abcd" "abc" #f 0 1 2)............[ok]
KMP step 2 (exp: 2, act: 2), case: ("abcd" "abc" #f 0 1 2)............[ok]
KMP match? #f, case: ("abcd" "abc" #f 0 1 2)..........................[ok]
KMP empty remaining steps: (), case: ("abcd" "abc" #f 0 1 2)..........[ok]
KMP step 0 (exp: 0, act: 0), case: ("abc" "abcd" #t 0 1 2)............[ok]
KMP step 1 (exp: 1, act: 1), case: ("abc" "abcd" #t 0 1 2)............[ok]
KMP step 2 (exp: 2, act: 2), case: ("abc" "abcd" #t 0 1 2)............[ok]
KMP match? #t, case: ("abc" "abcd" #t 0 1 2)..........................[ok]
KMP empty remaining steps: (), case: ("abc" "abcd" #t 0 1 2)..........[ok]
KMP step 0 (exp: 0, act: 0), case: ("abc" "aabc" #t 0 1 1 2)..........[ok]
KMP step 1 (exp: 1, act: 1), case: ("abc" "aabc" #t 0 1 1 2)..........[ok]
KMP step 2 (exp: 1, act: 1), case: ("abc" "aabc" #t 0 1 1 2)..........[ok]
KMP step 3 (exp: 2, act: 2), case: ("abc" "aabc" #t 0 1 1 2)..........[ok]
KMP match? #t, case: ("abc" "aabc" #t 0 1 1 2)........................[ok]
KMP empty remaining steps: (), case: ("abc" "aabc" #t 0 1 1 ..........[ok]
KMP step 0 (exp: 0, act: 0), case: ("ab" "aa" #f 0 1).................[ok]
KMP step 1 (exp: 1, act: 1), case: ("ab" "aa" #f 0 1).................[ok]
KMP match? #f, case: ("ab" "aa" #f 0 1)...............................[ok]
KMP empty remaining steps: (), case: ("ab" "aa" #f 0 1)...............[ok]
KMP step 0 (exp: 0, act: 0), case: ("ab" "aab" #t 0 1 1)..............[ok]
KMP step 1 (exp: 1, act: 1), case: ("ab" "aab" #t 0 1 1)..............[ok]
KMP step 2 (exp: 1, act: 1), case: ("ab" "aab" #t 0 1 1)..............[ok]
KMP match? #t, case: ("ab" "aab" #t 0 1 1)............................[ok]
KMP empty remaining steps: (), case: ("ab" "aab" #t 0 1 1)............[ok]
KMP step 0 (exp: 0, act: 0), case: ("abdabx" "abdbbabda" #f ..........[ok]
KMP step 1 (exp: 1, act: 1), case: ("abdabx" "abdbbabda" #f ..........[ok]
KMP step 2 (exp: 2, act: 2), case: ("abdabx" "abdbbabda" #f ..........[ok]
KMP step 3 (exp: 3, act: 3), case: ("abdabx" "abdbbabda" #f ..........[ok]
KMP step 4 (exp: 0, act: 0), case: ("abdabx" "abdbbabda" #f ..........[ok]
KMP step 5 (exp: 0, act: 0), case: ("abdabx" "abdbbabda" #f ..........[ok]
KMP step 6 (exp: 1, act: 1), case: ("abdabx" "abdbbabda" #f ..........[ok]
KMP step 7 (exp: 2, act: 2), case: ("abdabx" "abdbbabda" #f ..........[ok]
KMP step 8 (exp: 3, act: 3), case: ("abdabx" "abdbbabda" #f ..........[ok]
KMP match? #f, case: ("abdabx" "abdbbabda" #f 0 1 2 3 0 0 1 ..........[ok]
KMP empty remaining steps: (), case: ("abdabx" "abdbbabda" #..........[ok]
KMP step 0 (exp: 0, act: 0), case: ("aabc" "axaabc" #t 0 1 0..........[ok]
KMP step 1 (exp: 1, act: 1), case: ("aabc" "axaabc" #t 0 1 0..........[ok]
KMP step 2 (exp: 0, act: 0), case: ("aabc" "axaabc" #t 0 1 0..........[ok]
KMP step 3 (exp: 1, act: 1), case: ("aabc" "axaabc" #t 0 1 0..........[ok]
KMP step 4 (exp: 2, act: 2), case: ("aabc" "axaabc" #t 0 1 0..........[ok]
KMP step 5 (exp: 3, act: 3), case: ("aabc" "axaabc" #t 0 1 0..........[ok]
KMP match? #t, case: ("aabc" "axaabc" #t 0 1 0 1 2 3).................[ok]
KMP empty remaining steps: (), case: ("aabc" "axaabc" #t 0 1..........[ok]
KMP step 0 (exp: 0, act: 0), case: ("aabac" "aabaabac" #t 0 ..........[ok]
KMP step 1 (exp: 1, act: 1), case: ("aabac" "aabaabac" #t 0 ..........[ok]
KMP step 2 (exp: 2, act: 2), case: ("aabac" "aabaabac" #t 0 ..........[ok]
KMP step 3 (exp: 3, act: 3), case: ("aabac" "aabaabac" #t 0 ..........[ok]
KMP step 4 (exp: 4, act: 4), case: ("aabac" "aabaabac" #t 0 ..........[ok]
KMP step 5 (exp: 2, act: 2), case: ("aabac" "aabaabac" #t 0 ..........[ok]
KMP step 6 (exp: 3, act: 3), case: ("aabac" "aabaabac" #t 0 ..........[ok]
KMP step 7 (exp: 4, act: 4), case: ("aabac" "aabaabac" #t 0 ..........[ok]
KMP match? #t, case: ("aabac" "aabaabac" #t 0 1 2 3 4 2 3 4)..........[ok]
KMP empty remaining steps: (), case: ("aabac" "aabaabac" #t ..........[ok]
string-contains.......................................................[ok]
string-contains.......................................................[ok]
string-contains-ci....................................................[ok]
string-contains.......................................................[ok]
string=? + string-filter..............................................[ok]
string=? + string-delete..............................................[ok]
string-index-right....................................................[ok]
string-skip-right.....................................................[ok]
string-trim-right.....................................................[ok]
string-trim-right.....................................................[ok]
string-trim-right.....................................................[ok]
string-trim-right.....................................................[ok]
string-trim-right.....................................................[ok]
======================================== srfi-14 tests ...
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'srfi-14-tests.scm' -output-file 'a.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/..

Note: at toplevel:
  (srfi-14-tests.scm:13) in procedure call to `char-set?', the predicate is called with an argument of type `fixnum' and will always return false

Note: at toplevel:
  (srfi-14-tests.scm:15) in procedure call to `char-set?', the predicate is called with an argument of type `(struct char-set)' and will always return true
'gcc' 'a.c' -o 'a.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm a.c
'gcc' 'a.o' -o 'a.out' -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm a.o
======================================== condition tests ...
======================================== srfi-18 tests ...
# sleeps ...
# sleeps ...
# sleeps ...
# sleeps ...
# sleeps ...
# sleeps ...
# sleeps ...
# sleeps ...
# sleeps ...
# sleeps ...
# sleeps ...
# sleeps ...
# sleeps ...
# sleeps ...
# sleeps ...
# sleeps ...
# sleeps ...
# sleeps ...
# sleeps ...
# sleeps ...
# sleeps ...
# sleeps ...
# sleeps ...
# sleeps ...
# sleeps ...
# sleeps ...
# finished.
# sleeps ...
# sleeps ...
# finished.
# waits ...
# sleeps ...
# sleeps ...
end.
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'srfi-18-signal-test.scm' -output-file 'a.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/..
'gcc' 'a.c' -o 'a.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm a.c
'gcc' 'a.o' -o 'a.out' -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm a.o
Testing correct handling of thread-join! with external signals:.... thread terminated gracefully, this is good
thread-join with timeout: ....timeout exception as expected
thread-join with return value:.... done.
======================================== data-structures tests ...
======================================== path tests ...
/
/
abc
abc
abc
abc
abc
/abc
/abc
/abc
/abc
/abc
q/abc
q/abc
q/abc
q/abc
q/abc
.
.
\..\
\
/
/
/
/
.
a
a
a
a/
a/b
a\b
a\b
a\b
a/b/
a/b/
a/b
/a/b
/a/b
c:a\b
c:/a/b
c:a\b
c:b
c:\b
a/b
a/b
a/b/
../../foo
c:\
c:\
c:\
c:\
~/foo
c:~/foo
c:~\foo
(#f / (.))
(#f / (\))
(#f / (foo))
(#f / (foo bar))
(#f #f (.))
(#f #f (. foo))
(#f #f (  foo bar))
(#f #f (foo bar))
(#f #f #f)
(/ #f #f)
(#f \ #f)
(/ a #f)
(#f \a #f)
(/ #f #f)
(#f \\\ #f)
(/ a #f)
(#f \\\a #f)
(/a b #f)
(#f \a\b #f)
(/a b c)
(#f \a\b c)
(. a #f)
(#f .\a #f)
(. a b)
(#f .\a b)
(./a b #f)
(#f .\a\b #f)
(#f a #f)
(#f a. #f)
(#f .a #f)
(a b #f)
(#f a\b #f)
(a b #f)
(#f a\\\b #f)
(a/b c #f)
(#f a\b\c #f)
(a/b/c #f #f)
(#f a\b\c\ #f)
(a/b/c #f #f)
(#f a\b\c\\\ #f)
(#f a b)
(a.b #f #f)
(#f a b\)
(#f a.b c)
(#f a. b)
(#f a.. b)
(a. .b #f)
(#f a.\ b)
x/y/z.q
x/y/z.q
x/y/z.q
x/y/z.q
x/y\/z.q
x//y/z.q
x\y/z.q
error
/x/y/z
/x/y/z
/x/y/z
/x/y/z
/x/y/z
/x/y/z
/x/y/z/
======================================== srfi-45 tests ...
(PASS) Memoization test 1
(PASS) Memoization test 2
(PASS) Memoization test 3
(PASS) Memoization test 4
(PASS) Reentrancy test 1 (1)
(PASS) Reentrancy test 1 (2)
(PASS) Reentrancy test 2
(PASS) Reentrancy test 3 (1)
(PASS) Reentrancy test 3 (2)
(PASS) Reentrancy test 3 (3)
======================================== posix tests ...
/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/../chicken 'posix-tests.scm' -output-file 'a.c' -types ../types.db -ignore-repository -verbose -include-path /data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/..
'gcc' 'a.c' -o 'a.o' -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -I/data/data/com.termux/files/home/chickens/4.12.0RC1//include/chicken
rm a.c
'gcc' 'a.o' -o 'a.out' -L/data/data/com.termux/files/home/sources/packages/chicken-4.12.0rc1/tests/.. -L/data/data/com.termux/files/home/chickens/4.12.0RC1//lib -lchicken -lm -ldl -llog
rm a.o
err
Error: (posix-tests.scm:71) assertion failed: (not (get-environment-variable "FOO"))

	Call history:

	posix-tests.scm:54: blob=?	  
	posix-tests.scm:55: unmap-file-from-memory	  
	posix-tests.scm:56: file-close	  
	posix-tests.scm:57: delete-file*	  
	posix-tests.scm:59: create-temporary-directory	  
	posix-tests.scm:60: make-pathname	  
	posix-tests.scm:61: create-directory	  
	posix-tests.scm:62: directory-exists?	  
	posix-tests.scm:63: delete-directory	  
	posix-tests.scm:64: directory-exists?	  
	posix-tests.scm:65: directory-exists?	  
	posix-tests.scm:68: setenv	  
	posix-tests.scm:69: get-environment-variable	  
	posix-tests.scm:70: unsetenv	  
	posix-tests.scm:71: get-environment-variable	  
	posix-tests.scm:71: ##sys#error	  	<--
make: *** [rules.make:663: check] Error 70

==========================LOGPRO SUMMARY==========================
Trigger: LogFileBodyStart              OK, count=1

RuleNumRuleTypeSectionStatusCompCount/ValDescCount
rule-43RequiredinLogFileBodyOK=1Required section: version1
rule-42RequiredinLogFileBodyOK=1Required section: syntax6
rule-41RequiredinLogFileBodyOK=1Required section: string->number1
rule-40RequiredinLogFileBodyOK=1Required section: srfi\-41
rule-39RequiredinLogFileBodyOK=1Required section: srfi\-451
rule-38RequiredinLogFileBodyOK=1Required section: srfi\-181
rule-37RequiredinLogFileBodyOK=1Required section: srfi\-141
rule-36RequiredinLogFileBodyOK=1Required section: srfi\-131
rule-35RequiredinLogFileBodyOK=1Required section: specialization2
rule-34RequiredinLogFileBodyOK=1Required section: scrutiny1
rule-33RequiredinLogFileBodyOK=1Required section: runtime1
rule-32RequiredinLogFileBodyOK=1Required section: reexport1
rule-31RequiredinLogFileBodyOK=1Required section: reader1
rule-30RequiredinLogFileBodyOK=1Required section: r7rs1
rule-29RequiredinLogFileBodyOK=1Required section: r4rs1
rule-28RequiredinLogFileBodyOK=1Required section: pretty-printer1
rule-27RequiredinLogFileBodyOK=1Required section: posix1
rule-26RequiredinLogFileBodyOK=1Required section: port1
rule-25RequiredinLogFileBodyOK=1Required section: path1
rule-24RequiredinLogFileBodyOK=1Required section: optionals1
rule-23RequiredinLogFileBodyOK=1Required section: module4
rule-22RequiredinLogFileBodyOK=1Required section: meta-syntax1
rule-21RequiredinLogFileBodyOK=1Required section: lolevel1
rule-20RequiredinLogFileBodyOK=1Required section: library1
rule-19RequiredinLogFileBodyOK=1Required section: import2
rule-18RequiredinLogFileBodyOK=1Required section: hash-table1
rule-17RequiredinLogFileBodyOK=1Required section: functor1
rule-16RequiredinLogFileBodyOK=1Required section: fixnum1
rule-15RequiredinLogFileBodyOK=1Required section: evaluation1
rule-14RequiredinLogFileBodyOK=1Required section: dynamic-wind1
rule-13RequiredinLogFileBodyOK=1Required section: data-structures1
rule-12RequiredinLogFileBodyOK=1Required section: condition1
rule-11RequiredinLogFileBodyOK=1Required section: compiler3
rule-10RequiredinLogFileBodyOK=1Required section: callback1
rule-9RequiredinLogFileBodyOK=1Required section: arithmetic1
rule-8WarninginLogFileBodyFAIL=0Warnings not allowed30
rule-7ErrorinLogFileBodyFAIL=0Errors not allowed3
rule-6IgnoreinLogFileBodyOK=0Word error on line by itself1
rule-5IgnoreinLogFileBodyOK=0Everything OK1
rule-4IgnoreinLogFileBodyOK=0print-error-message...OK1
rule-3IgnoreinLogFileBodyOK=0closed string1
rule-2IgnoreinLogFileBodyOK=0error calls4
rule-1IgnoreinLogFileBodyOK=0call to sys#error23
rule-0IgnoreinLogFileBodyOK=0C strings error mention1

EXIT CODE: 1 (FAIL )