diff --git a/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/types/filter-ops.rkt b/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/types/filter-ops.rkt index 3c327f21..1e272473 100644 --- a/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/types/filter-ops.rkt +++ b/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/types/filter-ops.rkt @@ -52,6 +52,8 @@ [(_ (Bot:)) #t] [((OrFilter: fs) f2) (memf (lambda (f) (filter-equal? f f2)) fs)] + [(f1 (AndFilter: fs)) + (memf (lambda (f) (filter-equal? f f1)) fs)] [((TypeFilter: t1 p1 i1) (TypeFilter: t2 p1 i2)) (and (name-ref=? i1 i2) diff --git a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/filter-tests.rkt b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/filter-tests.rkt index f1ce0776..57fdabb7 100644 --- a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/filter-tests.rkt +++ b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/filter-tests.rkt @@ -103,6 +103,9 @@ (check implied-atomic? (-or (-filter -Symbol 1) (-filter -Symbol #'x)) (-filter -Symbol #'x)) + (check implied-atomic? + (-filter -Symbol #'x) + (-and (-filter -Symbol 1) (-filter -Symbol #'x))) ) (test-suite "Implication"