summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorIulian Dragos <jaguarul@gmail.com>2010-05-10 16:21:40 +0000
committerIulian Dragos <jaguarul@gmail.com>2010-05-10 16:21:40 +0000
commitd484df935d3d12b5a853cdf2589e0ebd586076af (patch)
tree0c250bc81d1f5b93cbb2b7e948809656924b6757 /src
parentbfb49242b5ca6ffdd086364b33fa3f785254784d (diff)
downloadscala-d484df935d3d12b5a853cdf2589e0ebd586076af.tar.gz
scala-d484df935d3d12b5a853cdf2589e0ebd586076af.tar.bz2
scala-d484df935d3d12b5a853cdf2589e0ebd586076af.zip
Closed #3413. No review.
Diffstat (limited to 'src')
-rw-r--r--src/compiler/scala/tools/nsc/transform/SpecializeTypes.scala3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/compiler/scala/tools/nsc/transform/SpecializeTypes.scala b/src/compiler/scala/tools/nsc/transform/SpecializeTypes.scala
index 6945b5e497..c2e5e474a9 100644
--- a/src/compiler/scala/tools/nsc/transform/SpecializeTypes.scala
+++ b/src/compiler/scala/tools/nsc/transform/SpecializeTypes.scala
@@ -374,7 +374,7 @@ abstract class SpecializeTypes extends InfoTransform with TypingTransformers {
val specializedInfoType: Type = {
val (_, unspecParams) = splitParams(clazz.info.typeParams)
oldClassTParams = unspecParams
- newClassTParams = cloneSymbols(unspecParams, cls)
+ newClassTParams = cloneSymbols(unspecParams, cls) map subst(env)
def applyContext(tpe: Type) =
subst(env, tpe).subst(unspecParams, newClassTParams map (_.tpe))
@@ -408,6 +408,7 @@ abstract class SpecializeTypes extends InfoTransform with TypingTransformers {
if (newClassTParams.isEmpty) infoType else PolyType(newClassTParams, infoType)
}
+ log("specializedClass " + cls + ": " + specializedInfoType)
atPhase(phase.next)(cls.setInfo(specializedInfoType))
val fullEnv = outerEnv ++ env