diff options
author | Martin Odersky <odersky@gmail.com> | 2015-06-19 18:33:43 +0200 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2015-06-19 18:33:43 +0200 |
commit | c03b9655be4ea08d02c28771b3e203a4a91d29f2 (patch) | |
tree | 04fafe9d3f6a8a61399a2969693a43e3820d76b8 | |
parent | 76a056f5e1ea01b3cfdc8832e2a164562da770ab (diff) | |
download | dotty-c03b9655be4ea08d02c28771b3e203a4a91d29f2.tar.gz dotty-c03b9655be4ea08d02c28771b3e203a4a91d29f2.tar.bz2 dotty-c03b9655be4ea08d02c28771b3e203a4a91d29f2.zip |
Fix problem in eta expansion.
Failure to do a widen caused by-name parameters to go undetected.
-rw-r--r-- | src/dotty/tools/dotc/typer/EtaExpansion.scala | 2 | ||||
-rw-r--r-- | tests/run/t5610a.check (renamed from tests/pending/run/t5610a.check) | 0 | ||||
-rw-r--r-- | tests/run/t5610a.scala (renamed from tests/pending/run/t5610a.scala) | 0 |
3 files changed, 1 insertions, 1 deletions
diff --git a/src/dotty/tools/dotc/typer/EtaExpansion.scala b/src/dotty/tools/dotc/typer/EtaExpansion.scala index 1c0e6a11f..6797f3349 100644 --- a/src/dotty/tools/dotc/typer/EtaExpansion.scala +++ b/src/dotty/tools/dotc/typer/EtaExpansion.scala @@ -58,7 +58,7 @@ object EtaExpansion { * and replace by the idents of so created ValDefs. */ def liftArgs(defs: mutable.ListBuffer[Tree], methType: Type, args: List[Tree])(implicit ctx: Context) = - methType match { + methType.widen match { case MethodType(paramNames, paramTypes) => (args, paramNames, paramTypes).zipped map { (arg, name, tp) => if (tp.isInstanceOf[ExprType]) arg diff --git a/tests/pending/run/t5610a.check b/tests/run/t5610a.check index 2aa46b3b9..2aa46b3b9 100644 --- a/tests/pending/run/t5610a.check +++ b/tests/run/t5610a.check diff --git a/tests/pending/run/t5610a.scala b/tests/run/t5610a.scala index 3787c0984..3787c0984 100644 --- a/tests/pending/run/t5610a.scala +++ b/tests/run/t5610a.scala |