~ chicken-core (chicken-5) /tests/scrutiny-tests-strict.scm


 1;;;; scrutinizer-tests in "strict-types" mode
 2
 3
 4;;; #896: internal error due to missing resolution of type-variables
 5;;;       in "initial-argument-types" (scrutinizer.scm)
 6;;;       (reported by Moritz)
 7
 8(define-record bar foo)
 9
10(define-type bar
11  (struct bar))
12
13;; This breaks with csc -strict-types
14(: foo (forall (x string) (x -> bar)))
15
16;; Using this declaration instead of the above makes it work
17;; (: foo (string -> bar))
18
19;; Alternatively, removing this declaration makes it work, too
20(: make-bar (string -> bar))
21
22(define (foo x) (make-bar x))
23
Trap