diff --git a/compiler/src/dotty/tools/dotc/typer/EtaExpansion.scala b/compiler/src/dotty/tools/dotc/typer/EtaExpansion.scala index c4936b5a3a9e..2fe62cbf0ffa 100644 --- a/compiler/src/dotty/tools/dotc/typer/EtaExpansion.scala +++ b/compiler/src/dotty/tools/dotc/typer/EtaExpansion.scala @@ -241,9 +241,8 @@ object EtaExpansion extends LiftImpure { var ids: List[Tree] = mt.paramNames map (name => Ident(name).withSpan(tree.span.startPos)) if (mt.paramInfos.nonEmpty && mt.paramInfos.last.isRepeatedParam) ids = ids.init :+ repeated(ids.last) - val app = Apply(lifted, ids) - if (mt.isContextualMethod) app.setApplyKind(ApplyKind.Using) - val body = if (isLastApplication) app else PostfixOp(app, Ident(nme.WILDCARD)) + val body = Apply(lifted, ids) + if (mt.isContextualMethod) body.setApplyKind(ApplyKind.Using) val fn = if (mt.isContextualMethod) new untpd.FunctionWithMods(params, body, Modifiers(Given)) else if (mt.isImplicitMethod) new untpd.FunctionWithMods(params, body, Modifiers(Implicit)) diff --git a/tests/pos/i11311.scala b/tests/pos/i11311.scala new file mode 100644 index 000000000000..6ab995ad6411 --- /dev/null +++ b/tests/pos/i11311.scala @@ -0,0 +1,5 @@ +import language.`3.1` +object Test: + + def cat1(s1: String)(s2: String) = s1 + s2 + val fcat1 = cat1