Fixed test for procedure?, which now recognizes flat contracts, and typo for contract-projection.

svn: r17738
This commit is contained in:
Carl Eastlund 2010-01-19 05:59:47 +00:00
parent 888045dcf9
commit 5d7774e7b2

View File

@ -214,12 +214,12 @@ it around flattened out.
(define (rewrite-fields parent contract/info ctc-x ...) (define (rewrite-fields parent contract/info ctc-x ...)
(let* ([f-x (let* ([ctc-field (contract-get (contract/info-contract contract/info) (let* ([f-x (let* ([ctc-field (contract-get (contract/info-contract contract/info)
selector-indicies)] selector-indicies)]
[ctc (if (procedure? ctc-field) [ctc (if (contract-struct? ctc-field)
(ctc-field f-xs ...) ctc-field
ctc-field)] (ctc-field f-xs ...))]
[ctc-field-val [ctc-field-val
(((contract-predicate ctc) (((contract-projection ctc)
(contract/info-blame contract/info)) (contract/info-blame contract/info))
ctc-x)]) ctc-x)])
(update-parent-links parent ctc-field-val) (update-parent-links parent ctc-field-val)