summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPaul Phillips <paulp@improving.org>2013-12-21 13:05:29 -1000
committerPaul Phillips <paulp@improving.org>2013-12-21 13:13:52 -1000
commit72cd50c11b17da19c8b95265503d5aa6e7bd81eb (patch)
tree01634533a2c8a009178fa0c63a6fa3d3ef1860c3 /src
parent9f0594c57716ed551918e15be6da843982e8ba12 (diff)
downloadscala-72cd50c11b17da19c8b95265503d5aa6e7bd81eb.tar.gz
scala-72cd50c11b17da19c8b95265503d5aa6e7bd81eb.tar.bz2
scala-72cd50c11b17da19c8b95265503d5aa6e7bd81eb.zip
SI-7406 crasher with specialized lazy val
This reverts a tiny bit of f7d5f45aa7 where the crasher was introduced. The enclosed test case compiles and runs under 2.9, but prints the wrong answer. It crashes in 2.10 and until this patch. Now it compiles and prints the right answer.
Diffstat (limited to 'src')
-rw-r--r--src/compiler/scala/tools/nsc/transform/SpecializeTypes.scala2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/compiler/scala/tools/nsc/transform/SpecializeTypes.scala b/src/compiler/scala/tools/nsc/transform/SpecializeTypes.scala
index 1723c69180..c505d9dc5f 100644
--- a/src/compiler/scala/tools/nsc/transform/SpecializeTypes.scala
+++ b/src/compiler/scala/tools/nsc/transform/SpecializeTypes.scala
@@ -923,7 +923,7 @@ abstract class SpecializeTypes extends InfoTransform with TypingTransformers {
/** Return the specialized overload of `m`, in the given environment. */
private def specializedOverload(owner: Symbol, sym: Symbol, env: TypeEnv, nameSymbol: Symbol = NoSymbol): Symbol = {
- val newFlags = (sym.flags | SPECIALIZED) & ~(DEFERRED | CASEACCESSOR)
+ val newFlags = (sym.flags | SPECIALIZED) & ~(DEFERRED | CASEACCESSOR | LAZY)
// this method properly duplicates the symbol's info
val specname = specializedName(nameSymbol orElse sym, env)
( sym.cloneSymbol(owner, newFlags, newName = specname)