Skip to content

Commit e60470c

Browse files
VLanvinfacebook-github-bot
authored andcommitted
Add AnyArityFunType to subtyping and vars elimination
Summary: Somehow missed this when adding support for `AnyArityFunType`. Reviewed By: ilya-klyuchnikov, ruippeixotog Differential Revision: D60777722 fbshipit-source-id: f22af0791038124e283d1f6a91c3fed33d7eabd4
1 parent f6290ef commit e60470c

File tree

2 files changed

+4
-0
lines changed

2 files changed

+4
-0
lines changed

eqwalizer/src/main/scala/com/whatsapp/eqwalizer/tc/Subtype.scala

+2
Original file line numberDiff line numberDiff line change
@@ -159,6 +159,8 @@ class Subtype(pipelineContext: PipelineContext) {
159159
subTypePol(resTy1, resTy2, seen)
160160
case (AnyArityFunType(resTy1), FunType(_, _, resTy2)) =>
161161
subTypePol(resTy1, resTy2, seen)
162+
case (AnyArityFunType(resTy1), AnyArityFunType(resTy2)) =>
163+
subTypePol(resTy1, resTy2, seen)
162164
case (TupleType(tys1), TupleType(tys2)) if tys1.size == tys2.size =>
163165
tys1.lazyZip(tys2).forall(subTypePol(_, _, seen))
164166
case (NilType, ListType(_)) =>

eqwalizer/src/main/scala/com/whatsapp/eqwalizer/tc/generics/ElimTypeVars.scala

+2
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,8 @@ object ElimTypeVars {
2828
case FunType(forall, args, resType) =>
2929
val args1 = args.map(elimTypeVars(_, switchMode(mode), vars))
3030
FunType(forall, args1, elim(resType))
31+
case AnyArityFunType(resType) =>
32+
AnyArityFunType(elim(resType))
3133
case TupleType(params) =>
3234
TupleType(params.map(elim))
3335
case ListType(elemT) =>

0 commit comments

Comments
 (0)