aboutsummaryrefslogtreecommitdiff
path: root/src/dotty/tools/dotc/core/Types.scala
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2015-11-08 17:45:33 +0100
committerMartin Odersky <odersky@gmail.com>2015-11-09 15:45:40 +0100
commit820bd7ec55bc8ef621204dc82f56a80e2d2459f0 (patch)
tree84b5f8e1e68b61a4d66f70edb12b9750ecb81c13 /src/dotty/tools/dotc/core/Types.scala
parent27e65efdf56f7fc9968d3a9ee63022aa9dc34a24 (diff)
downloaddotty-820bd7ec55bc8ef621204dc82f56a80e2d2459f0.tar.gz
dotty-820bd7ec55bc8ef621204dc82f56a80e2d2459f0.tar.bz2
dotty-820bd7ec55bc8ef621204dc82f56a80e2d2459f0.zip
Avoid taking references before toplevel symbols are entered.
Taking a reference means that the symbol will be brought forward into the current run, then if the same symbol is entered from source, a datarace ensues. This affected the ProductN symbols because these are automatically added to a case class suring desugaring.
Diffstat (limited to 'src/dotty/tools/dotc/core/Types.scala')
-rw-r--r--src/dotty/tools/dotc/core/Types.scala2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/dotty/tools/dotc/core/Types.scala b/src/dotty/tools/dotc/core/Types.scala
index 4cae047a9..2c310aea4 100644
--- a/src/dotty/tools/dotc/core/Types.scala
+++ b/src/dotty/tools/dotc/core/Types.scala
@@ -1387,7 +1387,7 @@ object Types {
(lastSymbol.infoOrCompleter == ErrorType ||
sym.owner.derivesFrom(lastSymbol.owner) && sym.owner != lastSymbol.owner
),
- s"data race? overwriting symbol of ${this.show} / $this / ${this.getClass} / ${lastSymbol.id} / ${sym.id} / ${sym.owner} / ${lastSymbol.owner} / ${ctx.phase}")
+ s"data race? overwriting symbol of ${this.show} / $this / ${this.getClass} / ${lastSymbol.id} / ${sym.id} / ${sym.owner} / ${lastSymbol.owner} / ${ctx.phase} at run ${ctx.runId}")
protected def sig: Signature = Signature.NotAMethod