diff options
author | Adriaan Moors <adriaan.moors@epfl.ch> | 2010-07-08 15:58:41 +0000 |
---|---|---|
committer | Adriaan Moors <adriaan.moors@epfl.ch> | 2010-07-08 15:58:41 +0000 |
commit | 356abe3a5b76eb382eca6655624743aa16a001ae (patch) | |
tree | 6d461942fb020063e209ef022b2d0e48872aabcb /src/compiler/scala/tools/nsc/typechecker/Typers.scala | |
parent | aff3ddde53ad8c4d46980be3c34e13a51b6c8e7f (diff) | |
download | scala-356abe3a5b76eb382eca6655624743aa16a001ae.tar.gz scala-356abe3a5b76eb382eca6655624743aa16a001ae.tar.bz2 scala-356abe3a5b76eb382eca6655624743aa16a001ae.zip |
closes #2331: the pre-transform in Erasure did ...
closes #2331: the pre-transform in Erasure did not correctly recurse in
the case of a TypeApply.
It simply returned the function, which might very well have been, say,
a Select node, which had to be erased in case the qualifier's type is a
refinement.
(sorry about the whitespace changes)
review by odersky
Diffstat (limited to 'src/compiler/scala/tools/nsc/typechecker/Typers.scala')
-rw-r--r-- | src/compiler/scala/tools/nsc/typechecker/Typers.scala | 12 |
1 files changed, 1 insertions, 11 deletions
diff --git a/src/compiler/scala/tools/nsc/typechecker/Typers.scala b/src/compiler/scala/tools/nsc/typechecker/Typers.scala index 9bcc307cbf..be4cfe6512 100644 --- a/src/compiler/scala/tools/nsc/typechecker/Typers.scala +++ b/src/compiler/scala/tools/nsc/typechecker/Typers.scala @@ -2789,16 +2789,6 @@ trait Typers { self: Analyzer => res } - class SymInstance(val sym: Symbol, val tp: Type) { - override def equals(other: Any): Boolean = other match { - case that: SymInstance => - this.sym == that.sym && this.tp =:= that.tp - case _ => - false - } - override def hashCode: Int = sym.hashCode * 41 + tp.hashCode - } - /** convert skolems to existentials */ def packedType(tree: Tree, owner: Symbol): Type = { def defines(tree: Tree, sym: Symbol) = @@ -2834,7 +2824,7 @@ trait Typers { self: Analyzer => } } // add all local symbols of `tp' to `localSyms' - // expanding higher-kinded types into individual copies for each instance. + // TODO: expand higher-kinded types into individual copies for each instance. def addLocals(tp: Type) { val remainingSyms = new ListBuffer[Symbol] def addIfLocal(sym: Symbol, tp: Type) { |