summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorEugene Burmako <xeno.by@gmail.com>2013-10-19 10:13:02 +0200
committerEugene Burmako <xeno.by@gmail.com>2013-10-19 11:33:35 +0200
commitb18a2f8798b22fc9610aa8c9980432eabf865016 (patch)
tree4ed002afb2b856b22c2a6ffb69e6781e24d333af /src
parente3666d5bf57a7e25569fc59ac665a48a9d75685e (diff)
downloadscala-b18a2f8798b22fc9610aa8c9980432eabf865016.tar.gz
scala-b18a2f8798b22fc9610aa8c9980432eabf865016.tar.bz2
scala-b18a2f8798b22fc9610aa8c9980432eabf865016.zip
hotfix for runtime reflection
Recent runtime reflection sync pull request, which among other things, introduced more restricted package completion rules, led to a nightmarish regression on java7, which prevented the entire scalac from starting up. This commit temporarily disables the introduced assert in order to hotfix runtime reflection. In the hours to come I'll be looking into the root of the problem, preparing a pull request that reinstates the assert, which indicates a bug in our code that's been there since 2.10.0-M3, and fixes the said bug. Details: https://groups.google.com/forum/#!topic/scala-internals/hcnUFk75MgQ
Diffstat (limited to 'src')
-rw-r--r--src/reflect/scala/reflect/runtime/SymbolLoaders.scala4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/reflect/scala/reflect/runtime/SymbolLoaders.scala b/src/reflect/scala/reflect/runtime/SymbolLoaders.scala
index 30a3855d70..c6059ac402 100644
--- a/src/reflect/scala/reflect/runtime/SymbolLoaders.scala
+++ b/src/reflect/scala/reflect/runtime/SymbolLoaders.scala
@@ -97,7 +97,9 @@ private[reflect] trait SymbolLoaders { self: SymbolTable =>
if (isCompilerUniverse) super.enter(sym)
else {
val existing = super.lookupEntry(sym.name)
- assert(existing == null || existing.sym.isMethod, s"pkgClass = $pkgClass, sym = $sym, existing = $existing")
+ // commented out to provide a hotfix for strange class files that javac sometimes emits
+ // see more details at: https://groups.google.com/forum/#!topic/scala-internals/hcnUFk75MgQ
+ // assert(existing == null || existing.sym.isMethod, s"pkgClass = $pkgClass, sym = $sym, existing = $existing")
super.enter(sym)
}
}