diff options
author | paltherr <paltherr@epfl.ch> | 2004-03-16 12:57:14 +0000 |
---|---|---|
committer | paltherr <paltherr@epfl.ch> | 2004-03-16 12:57:14 +0000 |
commit | 9928e41df8d6c38f9354c0f9caad31cc3f493e3c (patch) | |
tree | 94f837d0fb5b7592a3cee05bc9953d7aaf3dc3cb /sources | |
parent | 8a2115f3605408237e757f64e1ca5d547e536c04 (diff) | |
download | scala-9928e41df8d6c38f9354c0f9caad31cc3f493e3c.tar.gz scala-9928e41df8d6c38f9354c0f9caad31cc3f493e3c.tar.bz2 scala-9928e41df8d6c38f9354c0f9caad31cc3f493e3c.zip |
- Fixed id of terminal phase
Diffstat (limited to 'sources')
-rw-r--r-- | sources/scalac/PhaseDescriptor.java | 6 | ||||
-rw-r--r-- | sources/scalac/symtab/Symbol.java | 4 |
2 files changed, 5 insertions, 5 deletions
diff --git a/sources/scalac/PhaseDescriptor.java b/sources/scalac/PhaseDescriptor.java index 21f2e6a72e..c93fd327ba 100644 --- a/sources/scalac/PhaseDescriptor.java +++ b/sources/scalac/PhaseDescriptor.java @@ -54,12 +54,14 @@ public final class PhaseDescriptor { // propagate other flags and freeze remaining phases PhaseDescriptor last = null; for (int i = 0; i < phases.length; i++) { - phases[i].id = i; + phases[i].id = 2 * i; if (phases[i].hasSkipFlag()) continue; if (last != null) last.flags |= phases[i].flags >>> 16; phases[i].flags &= 0x0000FFFF; - last = phases[i]; + if (i != phases.length - 1) last = phases[i]; } + // place TERMINAL phase just after last active phase + phases[phases.length - 1].id = last.id + 1; } //######################################################################## diff --git a/sources/scalac/symtab/Symbol.java b/sources/scalac/symtab/Symbol.java index ac96e871ce..9f44c821c6 100644 --- a/sources/scalac/symtab/Symbol.java +++ b/sources/scalac/symtab/Symbol.java @@ -1796,9 +1796,7 @@ public final class ClassSymbol extends TypeSymbol { public Type thisType() { Global global = Global.instance; - if (global.currentPhase.id > global.PHASE.ERASURE.id()) - if (!global.PHASE.ERASURE.hasSkipFlag()) - return type(); + if (global.currentPhase.id > global.PHASE.ERASURE.id()) return type(); return thistp; } |