diff options
author | Iulian Dragos <jaguarul@gmail.com> | 2010-06-03 15:29:49 +0000 |
---|---|---|
committer | Iulian Dragos <jaguarul@gmail.com> | 2010-06-03 15:29:49 +0000 |
commit | 43e5eff2c8c3fbf1bba1440db9c5780179b70c6e (patch) | |
tree | 23be57594d140b0f04594265b04f4d0bbc7e71dd | |
parent | 043889d581d9b4403764bdf407dae0405dcc6818 (diff) | |
download | scala-43e5eff2c8c3fbf1bba1440db9c5780179b70c6e.tar.gz scala-43e5eff2c8c3fbf1bba1440db9c5780179b70c6e.tar.bz2 scala-43e5eff2c8c3fbf1bba1440db9c5780179b70c6e.zip |
Closes #3472, final specialized methods give Ve...
Closes #3472, final specialized methods give VerifyErrors.
-rw-r--r-- | src/compiler/scala/tools/nsc/transform/SpecializeTypes.scala | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/compiler/scala/tools/nsc/transform/SpecializeTypes.scala b/src/compiler/scala/tools/nsc/transform/SpecializeTypes.scala index 32b8969828..d9b60b9ca1 100644 --- a/src/compiler/scala/tools/nsc/transform/SpecializeTypes.scala +++ b/src/compiler/scala/tools/nsc/transform/SpecializeTypes.scala @@ -655,6 +655,7 @@ abstract class SpecializeTypes extends InfoTransform with TypingTransformers { def specializeOn(tparams: List[Symbol]): List[Symbol] = for (spec <- specializations(tparams)) yield { if (sym.hasFlag(PRIVATE)) sym.resetFlag(PRIVATE).setFlag(PROTECTED) + sym.resetFlag(FINAL) val specMember = subst(outerEnv)(specializedOverload(owner, sym, spec)) typeEnv(specMember) = typeEnv(sym) ++ outerEnv ++ spec if (settings.debug.value) log("added specialized overload: %s in env: %s".format(specMember, typeEnv(specMember))) |