Fix tc-apply to correctly generate expected ValueDots filters.
Closes PR 13649.
This commit is contained in:
parent
2b8efd6676
commit
76de4d3cca
|
@ -1630,6 +1630,10 @@
|
||||||
[tc-e
|
[tc-e
|
||||||
((inst filter Any Symbol) symbol? null)
|
((inst filter Any Symbol) symbol? null)
|
||||||
(-lst -Symbol)]
|
(-lst -Symbol)]
|
||||||
|
[tc-e/t (ann (plambda: (A B ...) ((a : A) b : B ... B)
|
||||||
|
(apply (inst values A B ... B) a b))
|
||||||
|
(All (A B ...) (A B ... -> (values A B ... B))))
|
||||||
|
(-polydots (a b) ((list a) (b b) . ->... . (make-ValuesDots (list (-result a)) b 'b)))]
|
||||||
)
|
)
|
||||||
(test-suite
|
(test-suite
|
||||||
"check-type tests"
|
"check-type tests"
|
||||||
|
|
|
@ -24,7 +24,8 @@
|
||||||
(define (do-ret t)
|
(define (do-ret t)
|
||||||
(match t
|
(match t
|
||||||
[(Values: (list (Result: ts _ _) ...)) (ret ts)]
|
[(Values: (list (Result: ts _ _) ...)) (ret ts)]
|
||||||
[(ValuesDots: (list (Result: ts _ _) ...) dty dbound) (ret ts (for/list ([t ts]) (-FS null null)) (for/list ([t ts]) (make-Empty)) dty dbound)]
|
[(ValuesDots: (list (Result: ts _ _) ...) dty dbound)
|
||||||
|
(ret ts (for/list ([t ts]) (make-NoFilter)) (for/list ([t ts]) (make-Empty)) dty dbound)]
|
||||||
[_ (int-err "do-ret fails: ~a" t)]))
|
[_ (int-err "do-ret fails: ~a" t)]))
|
||||||
|
|
||||||
(define (tc/apply f args)
|
(define (tc/apply f args)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user