diff options
author | Dmitry Petrashko <dmitry.petrashko@gmail.com> | 2015-03-26 15:40:53 +0100 |
---|---|---|
committer | Dmitry Petrashko <dmitry.petrashko@gmail.com> | 2015-03-26 15:40:53 +0100 |
commit | 25af81475b3e4f387caa67194409e9b595a3b2ea (patch) | |
tree | b7fdb1d82e28fcadf21f7baece9598eee0a75596 /src/dotty/tools/dotc/core/Denotations.scala | |
parent | d01ecb733dc8990d1f5d432e1fb9eb488bb7e3b4 (diff) | |
download | dotty-25af81475b3e4f387caa67194409e9b595a3b2ea.tar.gz dotty-25af81475b3e4f387caa67194409e9b595a3b2ea.tar.bz2 dotty-25af81475b3e4f387caa67194409e9b595a3b2ea.zip |
Fix installAfter for a Denotation List of single denotation
Diffstat (limited to 'src/dotty/tools/dotc/core/Denotations.scala')
-rw-r--r-- | src/dotty/tools/dotc/core/Denotations.scala | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/dotty/tools/dotc/core/Denotations.scala b/src/dotty/tools/dotc/core/Denotations.scala index 91cf73404..a4169628c 100644 --- a/src/dotty/tools/dotc/core/Denotations.scala +++ b/src/dotty/tools/dotc/core/Denotations.scala @@ -611,7 +611,10 @@ object Denotations { val current = symbol.current // println(s"installing $this after $phase/${phase.id}, valid = ${current.validFor}") // printPeriods(current) - this.nextInRun = current.nextInRun + if (current.nextInRun ne current) + this.nextInRun = current.nextInRun + else + this.nextInRun = this this.validFor = Period(ctx.runId, targetId, current.validFor.lastPhaseId) if (current.validFor.firstPhaseId == targetId) { // replace current with this denotation @@ -622,6 +625,7 @@ object Denotations { } else { // insert this denotation after current current.validFor = Period(ctx.runId, current.validFor.firstPhaseId, targetId - 1) + this.nextInRun = current.nextInRun current.nextInRun = this } // printPeriods(this) |