File tree 1 file changed +4
-4
lines changed
compiler/src/dotty/tools/dotc/transform
1 file changed +4
-4
lines changed Original file line number Diff line number Diff line change @@ -134,12 +134,12 @@ object TypeTestsCasts {
134
134
135
135
/** Whether the check X.isInstanceOf[P] is definitely false? */
136
136
def isCheckDefinitelyFalse (X : Type , P : Type )(using Context ): Boolean = trace(s " isCheckDefinitelyFalse( ${X .show}, ${P .show}) " ) {
137
- X .dealias match
137
+ X .widenDealias match
138
138
case AndType (x1, x2) =>
139
139
isCheckDefinitelyFalse(x1, P ) || isCheckDefinitelyFalse(x2, P )
140
140
141
141
case x =>
142
- P .dealias match
142
+ P .widenDealias match
143
143
case AndType (p1, p2) =>
144
144
isCheckDefinitelyFalse(x, p1) || isCheckDefinitelyFalse(x, p2)
145
145
@@ -154,8 +154,8 @@ object TypeTestsCasts {
154
154
xs.forall(x => isCheckDefinitelyFalse(x, p))
155
155
else
156
156
if x.typeSymbol.isClass && p.typeSymbol.isClass then
157
- val xClass = effectiveClass(x.widen )
158
- val pClass = effectiveClass(p.widen )
157
+ val xClass = effectiveClass(x)
158
+ val pClass = effectiveClass(p)
159
159
160
160
! xClass.derivesFrom(pClass)
161
161
&& (xClass.is(Final ) || pClass.is(Final ) || ! xClass.is(Trait ) && ! pClass.is(Trait ))
You can’t perform that action at this time.
0 commit comments