@@ -54,7 +54,7 @@ extends tpd.TreeTraverser:
54
54
val boxedRes = recur(res)
55
55
if boxedRes eq res then tp
56
56
else tp1.derivedAppliedType(tycon, args.init :+ boxedRes)
57
- case tp1 @ RefinedType (_, _, rinfo) if defn.isFunctionType (tp1) =>
57
+ case tp1 @ RefinedType (_, _, rinfo : MethodType ) if defn.isFunctionOrPolyType (tp1) =>
58
58
val boxedRinfo = recur(rinfo)
59
59
if boxedRinfo eq rinfo then tp
60
60
else boxedRinfo.toFunctionType(isJava = false , alwaysDependent = true )
@@ -231,7 +231,7 @@ extends tpd.TreeTraverser:
231
231
tp.derivedAppliedType(tycon1, args1 :+ res1)
232
232
else
233
233
tp.derivedAppliedType(tycon1, args.mapConserve(arg => this (arg)))
234
- case tp @ RefinedType (core, rname, rinfo) if defn.isFunctionType (tp) =>
234
+ case tp @ RefinedType (core, rname, rinfo : MethodType ) if defn.isFunctionOrPolyType (tp) =>
235
235
val rinfo1 = apply(rinfo)
236
236
if rinfo1 ne rinfo then rinfo1.toFunctionType(isJava = false , alwaysDependent = true )
237
237
else tp
@@ -327,7 +327,7 @@ extends tpd.TreeTraverser:
327
327
args.last, CaptureSet .empty, currentCs ++ outerCs)
328
328
tp.derivedAppliedType(tycon1, args1 :+ resType1)
329
329
tp1.capturing(outerCs)
330
- case tp @ RefinedType (parent, nme.apply, rinfo : MethodType ) if defn.isFunctionType (tp) =>
330
+ case tp @ RefinedType (parent, nme.apply, rinfo : MethodType ) if defn.isFunctionOrPolyType (tp) =>
331
331
propagateDepFunctionResult(mapOver(tp), currentCs ++ outerCs)
332
332
.capturing(outerCs)
333
333
case _ =>
0 commit comments