diff options
-rw-r--r-- | src/reflect/scala/reflect/runtime/SynchronizedSymbols.scala | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/reflect/scala/reflect/runtime/SynchronizedSymbols.scala b/src/reflect/scala/reflect/runtime/SynchronizedSymbols.scala index fe1de77cd2..f5e16c6640 100644 --- a/src/reflect/scala/reflect/runtime/SynchronizedSymbols.scala +++ b/src/reflect/scala/reflect/runtime/SynchronizedSymbols.scala @@ -118,8 +118,10 @@ private[reflect] trait SynchronizedSymbols extends internal.Symbols { self: Symb override def markAllCompleted(): this.type = { _initializationMask = 0L; _initialized = true; this } def gilSynchronizedIfNotThreadsafe[T](body: => T): T = { - if (isCompilerUniverse || isThreadsafe(purpose = AllOps)) body - else gilSynchronized { body } + // TODO: debug and fix the race that doesn't allow us uncomment this optimization + // if (isCompilerUniverse || isThreadsafe(purpose = AllOps)) body + // else gilSynchronized { body } + gilSynchronized { body } } override def validTo = gilSynchronizedIfNotThreadsafe { super.validTo } |