now traverses from the bound occurrences to the binding ones for contract annotations

This commit is contained in:
Robby Findler 2010-07-12 12:00:42 -05:00
parent e7bd94f2d2
commit b9ff546e83

View File

@ -91,12 +91,12 @@
(identifier? #'id)
(if (known-predicate? #'id)
(base-color #'id polarity coloring-plans)
(begin
(for ((binder (in-list (module-identifier-mapping-get low-binders #'id))))
(printf "~s => ~s\n"
#'id
(module-identifier-mapping-get binding-inits binder)))
(give-up start-stx coloring-plans)))]
(let ([binders (module-identifier-mapping-get low-binders #'id (λ () #f))])
(if binders
(for ((binder (in-list (module-identifier-mapping-get low-binders #'id))))
(for ((rhs (in-list (module-identifier-mapping-get binding-inits binder))))
(ploop rhs polarity)))
(give-up start-stx coloring-plans))))]
[(#%plain-lambda formals expr ...)
(give-up start-stx coloring-plans)]
[(case-lambda [formals expr] ...)