summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorAdriaan Moors <adriaan.moors@typesafe.com>2012-11-16 14:16:34 -0800
committerAdriaan Moors <adriaan.moors@typesafe.com>2012-11-16 14:16:34 -0800
commit83deccf4aa54257e04412a1ba96430dccd1483bb (patch)
treed0421ff7ce2c8531088a298da6e1987442b02244 /test
parent4de1a25c1c8db180269527976cb63bceee43d568 (diff)
parent1587a77eca46b265dc677b9be2536f1f60503f65 (diff)
downloadscala-83deccf4aa54257e04412a1ba96430dccd1483bb.tar.gz
scala-83deccf4aa54257e04412a1ba96430dccd1483bb.tar.bz2
scala-83deccf4aa54257e04412a1ba96430dccd1483bb.zip
Merge pull request #1615 from retronym/ticket/6648
SI-6648 copyAttrs must preserve TypeTree#wasEmpty
Diffstat (limited to 'test')
-rw-r--r--test/files/pos/t6648.scala24
1 files changed, 24 insertions, 0 deletions
diff --git a/test/files/pos/t6648.scala b/test/files/pos/t6648.scala
new file mode 100644
index 0000000000..9593ebfee9
--- /dev/null
+++ b/test/files/pos/t6648.scala
@@ -0,0 +1,24 @@
+abstract class Node extends NodeSeq
+trait NodeSeq extends Seq[Node]
+object NodeSeq {
+ implicit def seqToNodeSeq(ns: Seq[Node]): NodeSeq = ???
+ def foo[B, That](f: Seq[B])(implicit bf: scala.collection.generic.CanBuildFrom[Seq[Int], B, That]): That = ???
+}
+
+class Transformer {
+ def apply(nodes: Any): Any = ???
+}
+
+object transformer1 extends Transformer {
+ // Adding explicit type arguments, or making the impilcit view
+ // seqToNodeSeq explicit avoids the crash
+ NodeSeq.foo {
+ // These both avoid the crash:
+ // val t = new Transformer {}; t.apply(null)
+ // new Transformer().apply(null)
+ new Transformer {}.apply(null)
+
+ null: NodeSeq
+ }: NodeSeq
+}
+