<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -1,6 +1,6 @@
 t2031.scala:8: error: polymorphic expression cannot be instantiated to expected type;
  found   : [A]scala.collection.mutable.Builder[A,scala.collection.immutable.TreeSet[A]]
- required: scala.collection.generic.BuilderFactory[Int,?,scala.collection.immutable.TreeSet[Int]]
+ required: scala.collection.generic.CanBuildFrom[scala.collection.immutable.TreeSet[Int],Int,?]
  res0.map(x =&gt; x)(TreeSet.newBuilder)
                           ^
 one error found</diff>
      <filename>test/files/neg/t2031.check</filename>
    </modified>
    <modified>
      <diff>@@ -2,7 +2,7 @@ import scala.collection.generic._
 import scala.collection._
 
 object Test {
-  def collect[A, Res](r: {def foreach[U](k: A =&gt; U): Unit})(implicit bf: BuilderFactory[A, Res, Nothing]) = {
+  def collect[A, Res](r: Traversable[A])(implicit bf: CanBuildFrom[Nothing, A, Res]) = {
     val b = bf()
     for (a &lt;- r) b += a
     b.result</diff>
      <filename>test/files/pos/collectGenericCC.scala</filename>
    </modified>
    <modified>
      <diff>@@ -144,7 +144,7 @@ sealed abstract class List[@specialized +A] extends LinearSeq[A]
   /** Create a new list which contains all elements of this list
    *  followed by all elements of Traversable `that'
    */
-  override def ++[B &gt;: A, That](that: Traversable[B])(implicit bf: BuilderFactory[B, That, List[A]]): That = {
+  override def ++[B &gt;: A, That](that: Traversable[B])(implicit bf: CanBuildFrom[List[A], B, That]): That = {
     val b = bf(this)
     if (b.isInstanceOf[ListBuffer[_]]) (this ::: that.toList).asInstanceOf[That]
     else super.++(that)
@@ -153,7 +153,7 @@ sealed abstract class List[@specialized +A] extends LinearSeq[A]
   /** Create a new list which contains all elements of this list
    *  followed by all elements of Iterator `that'
    */
-  override def ++[B &gt;: A, That](that: Iterator[B])(implicit bf: BuilderFactory[B, That, List[A]]): That =
+  override def ++[B &gt;: A, That](that: Iterator[B])(implicit bf: CanBuildFrom[List[A], B, That]): That =
     this ++ that.toList
 
   /** Overrides the method in Iterable for efficiency.
@@ -496,7 +496,10 @@ object List extends SeqFactory[List] {
   
   import collection.{Iterable, Seq, Vector}
 
-  implicit def builderFactory[A]: BuilderFactory[A, List[A], Coll] = new VirtualBuilderFactory[A]
+  implicit def builderFactory[A]: CanBuildFrom[Coll, A, List[A]] = 
+    new GenericCanBuildFrom[A] {
+      def apply() = newBuilder[A]
+    }
   def newBuilder[A]: Builder[A, List[A]] = new ListBuffer[A]
 
   override def empty[A]: List[A] = Nil</diff>
      <filename>test/files/pos/spec-List.scala</filename>
    </modified>
    <modified>
      <diff>@@ -3,7 +3,7 @@ import scala.collection.mutable.ListBuffer
 import scala.collection.generic._
 
 trait Base[+A] extends Traversable[A] {
-  def add[B &gt;: A, That](that: Traversable[B])(implicit bf: BuilderFactory[B, That, Base[A]]): That = {
+  def add[B &gt;: A, That](that: Traversable[B])(implicit bf: CanBuildFrom[Base[A], B, That]): That = {
     val b = bf(this)
     b ++= this
     b ++= that
@@ -13,7 +13,7 @@ trait Base[+A] extends Traversable[A] {
 }
 
 abstract class Derived[@specialized +A] extends Base[A] {
-  override def add[B &gt;: A, That](that: Traversable[B])(implicit bf: BuilderFactory[B, That, Base[A]]): That = {
+  override def add[B &gt;: A, That](that: Traversable[B])(implicit bf: CanBuildFrom[Base[A], B, That]): That = {
     val b = bf(this)
     super.add[B, That](that)
   }</diff>
      <filename>test/files/pos/spec-super.scala</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>cf98b8a0ff6eb52b038b859fdacc1ff1d3bdc438</id>
    </parent>
  </parents>
  <author>
    <name>moors</name>
    <email>moors@5e8d7ff9-d8ef-0310-90f0-a4852d11357a</email>
  </author>
  <url>http://github.com/jorgeortiz85/scala/commit/cda8c48651f9a1b530442d54144005c75f4560a6</url>
  <id>cda8c48651f9a1b530442d54144005c75f4560a6</id>
  <committed-date>2009-10-21T06:55:41-07:00</committed-date>
  <authored-date>2009-10-21T06:55:41-07:00</authored-date>
  <message>fixed failing testcases due to previous commit (renaming of BuilderFactory)

git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@19191 5e8d7ff9-d8ef-0310-90f0-a4852d11357a</message>
  <tree>baca85d060c46a7451093ec9374d019dfb1139fd</tree>
  <committer>
    <name>moors</name>
    <email>moors@5e8d7ff9-d8ef-0310-90f0-a4852d11357a</email>
  </committer>
</commit>
