diff options
author | Paul Phillips <paulp@improving.org> | 2013-01-02 07:09:21 -0800 |
---|---|---|
committer | Paul Phillips <paulp@improving.org> | 2013-01-09 12:11:15 -0800 |
commit | a419799f872d5aae99728d711b1ced89e06804a8 (patch) | |
tree | 572d18cb43f281939ccb2729f19e7096f5017508 /src/library/scala/collection/generic | |
parent | 567df8ef284ab7491d6e144eb169db77d8ac06be (diff) | |
download | scala-a419799f872d5aae99728d711b1ced89e06804a8.tar.gz scala-a419799f872d5aae99728d711b1ced89e06804a8.tar.bz2 scala-a419799f872d5aae99728d711b1ced89e06804a8.zip |
SI-6566, unsoundness with alias variance.
This wasn't as bad as it could have been. All these changes
plug soundness holes in trunk. Mostly we're looking at type
aliases which were merely protected when they had to be
protected[this] not to allow unsound variance crossover.
Diffstat (limited to 'src/library/scala/collection/generic')
3 files changed, 3 insertions, 3 deletions
diff --git a/src/library/scala/collection/generic/GenericClassTagCompanion.scala b/src/library/scala/collection/generic/GenericClassTagCompanion.scala index a587bbf544..76c12d118e 100644 --- a/src/library/scala/collection/generic/GenericClassTagCompanion.scala +++ b/src/library/scala/collection/generic/GenericClassTagCompanion.scala @@ -19,7 +19,7 @@ import scala.reflect.ClassTag * @author Aleksandar Prokopec */ abstract class GenericClassTagCompanion[+CC[X] <: Traversable[X]] { - type Coll = CC[_] + protected[this] type Coll = CC[_] def newBuilder[A](implicit ord: ClassTag[A]): Builder[A, CC[A]] diff --git a/src/library/scala/collection/generic/GenericCompanion.scala b/src/library/scala/collection/generic/GenericCompanion.scala index 5b03f8e5c6..b966ce51db 100644 --- a/src/library/scala/collection/generic/GenericCompanion.scala +++ b/src/library/scala/collection/generic/GenericCompanion.scala @@ -24,7 +24,7 @@ import scala.language.higherKinds */ abstract class GenericCompanion[+CC[X] <: GenTraversable[X]] { /** The underlying collection type with unknown element type */ - type Coll = CC[_] + protected[this] type Coll = CC[_] /** The default builder for `$Coll` objects. * @tparam A the type of the ${coll}'s elements diff --git a/src/library/scala/collection/generic/GenericOrderedCompanion.scala b/src/library/scala/collection/generic/GenericOrderedCompanion.scala index a9a50a1c35..094912c75a 100644 --- a/src/library/scala/collection/generic/GenericOrderedCompanion.scala +++ b/src/library/scala/collection/generic/GenericOrderedCompanion.scala @@ -19,7 +19,7 @@ import scala.language.higherKinds * @since 2.8 */ abstract class GenericOrderedCompanion[+CC[X] <: Traversable[X]] { - type Coll = CC[_] + protected[this] type Coll = CC[_] def newBuilder[A](implicit ord: Ordering[A]): Builder[A, CC[A]] |