From 9928e41df8d6c38f9354c0f9caad31cc3f493e3c Mon Sep 17 00:00:00 2001 From: paltherr Date: Tue, 16 Mar 2004 12:57:14 +0000 Subject: - Fixed id of terminal phase --- sources/scalac/PhaseDescriptor.java | 6 ++++-- 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; } -- cgit v1.2.3