diff options
author | Hubert Plociniczak <hubert.plociniczak@gmail.com> | 2012-02-17 16:41:33 +0100 |
---|---|---|
committer | Hubert Plociniczak <hubert.plociniczak@gmail.com> | 2012-02-17 16:41:33 +0100 |
commit | b10b5821f40ccfad5e97df754ec35be0d256e41e (patch) | |
tree | 88b39582e6a05a55e70cb748efebfc1d24020ba0 /test/files/neg | |
parent | 91148376049a152edec12348ff9b7e9e93e6ebe1 (diff) | |
download | scala-b10b5821f40ccfad5e97df754ec35be0d256e41e.tar.gz scala-b10b5821f40ccfad5e97df754ec35be0d256e41e.tar.bz2 scala-b10b5821f40ccfad5e97df754ec35be0d256e41e.zip |
Closes #5452.
Instead of trying to track the fallback attempts we rely on the
context state to inform us which fallback is the last one.
setError cannot always be called in NoBestMethodAlternativeError
because inferMethodAlternative relies on side-effects.
Review by @paulp.
Diffstat (limited to 'test/files/neg')
-rw-r--r-- | test/files/neg/t5452.check | 8 | ||||
-rw-r--r-- | test/files/neg/t5452.scala | 29 |
2 files changed, 37 insertions, 0 deletions
diff --git a/test/files/neg/t5452.check b/test/files/neg/t5452.check new file mode 100644 index 0000000000..2f35a45509 --- /dev/null +++ b/test/files/neg/t5452.check @@ -0,0 +1,8 @@ +t5452.scala:28: error: overloaded method value apply with alternatives: + ()Queryable[CoffeesTable] <and> + (t: Tree)(implicit evidence$2: Manifest[CoffeesTable])Nothing <and> + (implicit evidence$1: Manifest[CoffeesTable])Nothing + cannot be applied to (Queryable[CoffeesTable]) + Queryable[CoffeesTable]( q.treeFilter(null) ) + ^ +one error found diff --git a/test/files/neg/t5452.scala b/test/files/neg/t5452.scala new file mode 100644 index 0000000000..1032db7a4b --- /dev/null +++ b/test/files/neg/t5452.scala @@ -0,0 +1,29 @@ +// /scala/trac/5452/a.scala +// Mon Feb 13 22:52:36 PST 2012 + +// import scala.reflect.mirror._ + +trait Tree + +object Bip { + def ??? = sys.error("") +} +import Bip._ + +case class Queryable[T]() { + def treeFilter( t:Tree ) : Queryable[T] = ??? +} + +object Queryable { + def apply[T:Manifest] = ??? + def apply[T:Manifest]( t:Tree ) = ??? +} + +trait CoffeesTable{ + def sales : Int +} + +object Test extends App{ + val q = new Queryable[CoffeesTable] + Queryable[CoffeesTable]( q.treeFilter(null) ) +} |