fix ->i dependency check

This commit is contained in:
Robby Findler 2015-01-19 10:23:34 -06:00
parent 2d4b4527c0
commit b6000de2f7
2 changed files with 6 additions and 2 deletions

View File

@ -137,6 +137,10 @@
#:rest [x (x) number?]
any))
(contract-syntax-error-test
'->i-stx23
#'(->i ([f (f x) any/c]) (#:x [x any/c]) [res any/c]))
(test/spec-passed
'->i1
'((contract (->i () () [x number?]) (lambda () 1) 'pos 'neg)))

View File

@ -250,8 +250,8 @@ code does the parsing and validation of the syntax.
[else
(let ([new-visited (cons var visited)])
(for ([neighbor (in-list (free-identifier-mapping-get neighbors var))])
(loop neighbor new-visited)
(free-identifier-mapping-put! safe var #t)))])))))
(loop neighbor new-visited))
(free-identifier-mapping-put! safe var #t))])))))
;; trim-at : identifier? (listof identifier?) -> (listof identifier?)
;; returns the shortest prefix of vars that ends with var