diff options
author | Eugene Burmako <xeno.by@gmail.com> | 2013-01-29 20:36:55 +0100 |
---|---|---|
committer | Eugene Burmako <xeno.by@gmail.com> | 2013-02-11 19:18:29 +0100 |
commit | 73d079fb383f82e825c2a40b397b64288e218fe9 (patch) | |
tree | 0913e0e71f943b3d7a077f3e5c058b3594acee41 | |
parent | f4dd56ca5d5adb2a9183991a7ecebc2b6a1f1fc5 (diff) | |
download | scala-73d079fb383f82e825c2a40b397b64288e218fe9.tar.gz scala-73d079fb383f82e825c2a40b397b64288e218fe9.tar.bz2 scala-73d079fb383f82e825c2a40b397b64288e218fe9.zip |
removes the assertion in missingHook
In the current synchronization scheme multiple threads can enter the
missingHook trying to materialize a package, which hasn't been created.
That's fine, because makeScalaPackage, which creates and enters package
symbols is synchronized and checks whether the creation is necessary
before commencing. Therefore even if makeScalaPackage is called multiple
times in rapid succession, the calls will be serialized and all calls
except the first one won't do anything.
-rw-r--r-- | src/reflect/scala/reflect/runtime/JavaMirrors.scala | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/src/reflect/scala/reflect/runtime/JavaMirrors.scala b/src/reflect/scala/reflect/runtime/JavaMirrors.scala index ac968b8e3f..58ade961a7 100644 --- a/src/reflect/scala/reflect/runtime/JavaMirrors.scala +++ b/src/reflect/scala/reflect/runtime/JavaMirrors.scala @@ -1264,8 +1264,6 @@ private[reflect] trait JavaMirrors extends internal.SymbolTable with api.JavaUni override def missingHook(owner: Symbol, name: Name): Symbol = { if (owner.hasPackageFlag) { val mirror = mirrorThatLoaded(owner) - // todo. this makes toolbox tests pass, but it's a mere workaround for SI-5865 -// assert((owner.info decl name) == NoSymbol, s"already exists: $owner . $name") if (owner.isRootSymbol && mirror.tryJavaClass(name.toString).isDefined) return mirror.EmptyPackageClass.info decl name if (name.isTermName && !owner.isEmptyPackageClass) |