diff options
author | Martin Odersky <odersky@gmail.com> | 2008-06-24 12:45:25 +0000 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2008-06-24 12:45:25 +0000 |
commit | b0c36c7a7c646caf95c7cda4a91681d243a0508d (patch) | |
tree | dc8d173de52c9c0f4bafd8db473b0e6431007f84 /src/compiler/scala/tools/nsc/typechecker/Namers.scala | |
parent | d8b12acb937667e1356af049c594302fa120f656 (diff) | |
download | scala-b0c36c7a7c646caf95c7cda4a91681d243a0508d.tar.gz scala-b0c36c7a7c646caf95c7cda4a91681d243a0508d.tar.bz2 scala-b0c36c7a7c646caf95c7cda4a91681d243a0508d.zip |
lazy vals cannot override strict vals and vice ...
lazy vals cannot override strict vals and vice versa; fixed
initialization bugs that caused scala and fsc to fail.
Diffstat (limited to 'src/compiler/scala/tools/nsc/typechecker/Namers.scala')
-rw-r--r-- | src/compiler/scala/tools/nsc/typechecker/Namers.scala | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/compiler/scala/tools/nsc/typechecker/Namers.scala b/src/compiler/scala/tools/nsc/typechecker/Namers.scala index caaecc1b90..ac35ecc052 100644 --- a/src/compiler/scala/tools/nsc/typechecker/Namers.scala +++ b/src/compiler/scala/tools/nsc/typechecker/Namers.scala @@ -982,6 +982,8 @@ trait Namers { self: Analyzer => context.error(sym.pos, "`override' modifier not allowed for constructors") if (sym.hasFlag(ABSOVERRIDE) && !sym.owner.isTrait) context.error(sym.pos, "`abstract override' modifier only allowed for members of traits") + if (sym.hasFlag(LAZY) && sym.hasFlag(PRESUPER)) + context.error(sym.pos, "`lazy' definitions may not be initialized early") if (sym.info.typeSymbol == FunctionClass(0) && sym.isValueParameter && sym.owner.isClass && sym.owner.hasFlag(CASE)) context.error(sym.pos, "pass-by-name arguments not allowed for case class parameters"); |