summaryrefslogtreecommitdiff
path: root/test/files/pos/t2305.scala
diff options
context:
space:
mode:
authorAdriaan Moors <adriaan.moors@epfl.ch>2009-11-12 16:56:33 +0000
committerAdriaan Moors <adriaan.moors@epfl.ch>2009-11-12 16:56:33 +0000
commite7bc7737c72dff381cfc93d2387a66565de1968b (patch)
tree826301c369d46c08795daa0cdef9995d82b3e642 /test/files/pos/t2305.scala
parentfe1d0c7052279ddf9cacfd1a7160cbee5829a4cc (diff)
downloadscala-e7bc7737c72dff381cfc93d2387a66565de1968b.tar.gz
scala-e7bc7737c72dff381cfc93d2387a66565de1968b.tar.bz2
scala-e7bc7737c72dff381cfc93d2387a66565de1968b.zip
fixed #2454
Diffstat (limited to 'test/files/pos/t2305.scala')
-rw-r--r--test/files/pos/t2305.scala26
1 files changed, 26 insertions, 0 deletions
diff --git a/test/files/pos/t2305.scala b/test/files/pos/t2305.scala
new file mode 100644
index 0000000000..8b5abccbe0
--- /dev/null
+++ b/test/files/pos/t2305.scala
@@ -0,0 +1,26 @@
+import java.util.ArrayList
+
+trait Bind[Z[_]]
+
+class MySerializable[X] extends java.io.Serializable
+
+object Bind {
+ implicit val JavaArrayListBind: Bind[ArrayList] = new Bind[ArrayList] {}
+ implicit val MySerializableBind: Bind[MySerializable] = new Bind[MySerializable] {}
+}
+
+object works {
+ // this works fine:
+ def runbind(implicit bind: Bind[MySerializable]) {}
+ runbind
+}
+
+object breaks {
+ def runbind(implicit bind: Bind[ArrayList]) {}
+ runbind
+ /*java.lang.AssertionError: assertion failed: java.io.Serializable
+ at scala.Predef$.assert(Predef.scala:107)
+ at scala.tools.nsc.symtab.Types$TypeRef.transform(Types.scala:1417)
+ at scala.tools.nsc.symtab.Types$TypeRef.baseType(Types.scala:1559)
+ */
+}