diff options
author | Gilles Dubochet <gilles.dubochet@epfl.ch> | 2010-07-30 11:51:25 +0000 |
---|---|---|
committer | Gilles Dubochet <gilles.dubochet@epfl.ch> | 2010-07-30 11:51:25 +0000 |
commit | f9fe76375d36cc5355e0e4157ee67d93f8410a0d (patch) | |
tree | a79814647974c5b68ab6a84a8a3238e621eca754 | |
parent | 89925960047a8cd62e65647dab6832e28af6bf3b (diff) | |
download | scala-f9fe76375d36cc5355e0e4157ee67d93f8410a0d.tar.gz scala-f9fe76375d36cc5355e0e4157ee67d93f8410a0d.tar.bz2 scala-f9fe76375d36cc5355e0e4157ee67d93f8410a0d.zip |
Fixes an issue in RefChecks when the compiler d...
Fixes an issue in RefChecks when the compiler does not have an erasure
phase (such as in Scaladoc), which became visible after r22644. Review
by odersky.
-rw-r--r-- | src/compiler/scala/tools/nsc/typechecker/RefChecks.scala | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/compiler/scala/tools/nsc/typechecker/RefChecks.scala b/src/compiler/scala/tools/nsc/typechecker/RefChecks.scala index ca642d3931..03da1a4f09 100644 --- a/src/compiler/scala/tools/nsc/typechecker/RefChecks.scala +++ b/src/compiler/scala/tools/nsc/typechecker/RefChecks.scala @@ -428,8 +428,10 @@ abstract class RefChecks extends InfoTransform { }) def ignoreDeferred(member: Symbol) = - isAbstractTypeWithoutFBound(member) || - (member.isJavaDefined && javaErasedOverridingSym(member) != NoSymbol) + (currentRun.erasurePhase != NoPhase) && ( // the test requires atPhase(erasurePhase.next) so shouldn't be done if the compiler has no erasure phase available + isAbstractTypeWithoutFBound(member) || + (member.isJavaDefined && javaErasedOverridingSym(member) != NoSymbol) + ) // 2. Check that only abstract classes have deferred members def checkNoAbstractMembers() = { |