diff options
author | Martin Odersky <odersky@gmail.com> | 2014-01-27 10:17:47 +0100 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2014-01-27 10:17:47 +0100 |
commit | fe85a5aa18e071922d11f1dd1694fe478b9d4fad (patch) | |
tree | a34065813e4932bab6c8c428e07b309462263bab /src/dotty/tools/dotc/typer/Applications.scala | |
parent | da9579110af09d1f9702ea9047a150724ed1291b (diff) | |
download | dotty-fe85a5aa18e071922d11f1dd1694fe478b9d4fad.tar.gz dotty-fe85a5aa18e071922d11f1dd1694fe478b9d4fad.tar.bz2 dotty-fe85a5aa18e071922d11f1dd1694fe478b9d4fad.zip |
Accept method types directly in isApplicable.
This lets us streamline normalize, and avoid to create FunctionTypes if the expected type is a FunProto or ViewProto.
Diffstat (limited to 'src/dotty/tools/dotc/typer/Applications.scala')
-rw-r--r-- | src/dotty/tools/dotc/typer/Applications.scala | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/dotty/tools/dotc/typer/Applications.scala b/src/dotty/tools/dotc/typer/Applications.scala index 0969562da..f504ffacd 100644 --- a/src/dotty/tools/dotc/typer/Applications.scala +++ b/src/dotty/tools/dotc/typer/Applications.scala @@ -736,6 +736,8 @@ trait Applications extends Compatibility { self: Typer => private def onMethod(tp: Type, p: TermRef => Boolean)(implicit ctx: Context): Boolean = tp match { case methRef: TermRef if methRef.widenSingleton.isInstanceOf[SignedType] => p(methRef) + case mt: SignedType => + p(mt.narrow) case _ => tp.member(nme.apply).hasAltWith(d => p(TermRef(tp, nme.apply, d))) } |