1
t5553_2.scala:27: error: type mismatch;
4
def test4[T]: Int = Foo1[T](1)
6
t5553_2.scala:34: error: type mismatch;
9
def test7[T]: Base[T] = Foo2[T]
11
t5553_2.scala:35: error: type mismatch;
14
def test8[T]: Int = Foo2[T]
16
t5553_2.scala:40: error: type mismatch;
19
def test9[T]: Int = Foo3[T]
21
t5553_2.scala:41: error: type mismatch;
24
def test10[T]: Base[T] = Foo3[T]
26
t5553_2.scala:47: error: could not find implicit value for parameter z: String
27
def test13[T]: Int = Foo3[T]
29
t5553_2.scala:48: error: could not find implicit value for parameter z: String
30
def test14[T]: Base[T] = Foo3[T]
32
t5553_2.scala:49: error: could not find implicit value for parameter z: String
33
def test15[T]: String = Foo3[T]
35
t5553_2.scala:50: error: could not find implicit value for parameter z: String
36
def test16[T] = Foo3[T]
38
t5553_2.scala:54: error: ambiguous reference to overloaded definition,
39
both method apply in object Foo4 of type (x: Int)(implicit z: String)Base[T]
40
and method apply in object Foo4 of type (x: Int)Base[T]
41
match argument types (Int)
42
def test17[T] = Foo4[T](1)
44
t5553_2.scala:55: error: ambiguous reference to overloaded definition,
45
both method apply in object Foo4 of type (x: Int)(implicit z: String)Base[T]
46
and method apply in object Foo4 of type (x: Int)Base[T]
47
match argument types (Int) and expected result type Base[T]
48
def test18[T]: Base[T] = Foo4[T](1)