diff options
author | Iulian Dragos <jaguarul@gmail.com> | 2009-09-04 15:44:48 +0000 |
---|---|---|
committer | Iulian Dragos <jaguarul@gmail.com> | 2009-09-04 15:44:48 +0000 |
commit | 17e464314d7257e16f58b02f11d8c6b14c761956 (patch) | |
tree | 7dff49e847e4d83bca67bf651579c17d2ef941f9 | |
parent | fa3ea36c0550fede8ec9d9d312b621e57c487083 (diff) | |
download | scala-17e464314d7257e16f58b02f11d8c6b14c761956.tar.gz scala-17e464314d7257e16f58b02f11d8c6b14c761956.tar.bz2 scala-17e464314d7257e16f58b02f11d8c6b14c761956.zip |
Fixed #2317.
-rw-r--r-- | src/compiler/scala/tools/nsc/transform/AddInterfaces.scala | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/compiler/scala/tools/nsc/transform/AddInterfaces.scala b/src/compiler/scala/tools/nsc/transform/AddInterfaces.scala index 64b9740839..f7ad9be4b9 100644 --- a/src/compiler/scala/tools/nsc/transform/AddInterfaces.scala +++ b/src/compiler/scala/tools/nsc/transform/AddInterfaces.scala @@ -77,6 +77,11 @@ abstract class AddInterfaces extends InfoTransform { atPhase(implClassPhase) { val implName = nme.implClassName(iface.name) var impl = if (iface.owner.isClass) iface.owner.info.decl(implName) else NoSymbol + if (impl != NoSymbol && settings.XO.value) { + log("unlinking impl class " + impl) + iface.owner.info.decls.unlink(impl) + impl = NoSymbol + } if (impl == NoSymbol) { impl = iface.cloneSymbolImpl(iface.owner) impl.name = implName |