Removed cert value.

This commit is contained in:
Eric Dobson 2012-08-18 14:25:38 -07:00 committed by Sam Tobin-Hochstadt
parent 8226b6764c
commit 626f807f00

View File

@ -160,15 +160,12 @@
;; the type name that is used in all the types ;; the type name that is used in all the types
(define name (type-wrapper (make-Name nm))) (define name (type-wrapper (make-Name nm)))
;; is this structure covariant in *all* arguments? ;; is this structure covariant in *all* arguments?
(define covariant? (if (and setters? (list? poly?)) (define covariant?
#f (for*/and ([var (in-list poly?)]
(if poly? [t (in-list external-fld-types)])
(for*/and ([var (in-list poly?)] (let ([variance (hash-ref (free-vars* t) var Constant)])
[t (in-list external-fld-types)]) (or (eq? variance Constant)
(let ([variance (hash-ref (free-vars* t) var Constant)]) (and (not setters?) (eq? variance Covariant))))))
(or (eq? variance Constant)
(eq? variance Covariant))))
#t)))
(define parent-count (- (length external-fld-types) (length external-fld-types/no-parent))) (define parent-count (- (length external-fld-types) (length external-fld-types/no-parent)))
;; the list of names w/ types ;; the list of names w/ types
(register-type struct-type-id (make-StructType sty)) (register-type struct-type-id (make-StructType sty))