@@ -1238,6 +1238,9 @@ class Typer(@constructorOnly nestingLevel: Int = 0) extends Namer
1238
1238
case RefinedType (parent, nme.apply, mt @ MethodTpe (_, formals, restpe))
1239
1239
if defn.isNonRefinedFunction(parent) && formals.length == defaultArity =>
1240
1240
(formals, untpd.DependentTypeTree (syms => restpe.substParams(mt, syms.map(_.termRef))))
1241
+ case RefinedType (parent, nme.apply, mt @ MethodTpe (_, formals, restpe))
1242
+ if defn.isErasedFunctionType(parent) && formals.length == defaultArity =>
1243
+ (formals, untpd.DependentTypeTree (syms => restpe.substParams(mt, syms.map(_.termRef))))
1241
1244
case SAMType (mt @ MethodTpe (_, formals, restpe)) =>
1242
1245
(formals,
1243
1246
if (mt.isResultDependent)
@@ -1509,8 +1512,7 @@ class Typer(@constructorOnly nestingLevel: Int = 0) extends Namer
1509
1512
.withSpan(param.span.endPos)
1510
1513
)
1511
1514
val isErased = isProtoErased || paramType.hasAnnotation(defn.ErasedParamAnnot )
1512
- val param1 = if isErased then param.withAddedFlags(Flags .Erased ) else param
1513
- cpy.ValDef (param1)(tpt = paramTpt)
1515
+ cpy.ValDef (param)(tpt = paramTpt)
1514
1516
desugared = desugar.makeClosure(inferredParams, fnBody, resultTpt, isContextual, tree.span)
1515
1517
1516
1518
typed(desugared, pt)
0 commit comments