summaryrefslogtreecommitdiff
path: root/sources/scalac/PhaseDescriptor.java
diff options
context:
space:
mode:
authorpaltherr <paltherr@epfl.ch>2004-03-16 12:57:14 +0000
committerpaltherr <paltherr@epfl.ch>2004-03-16 12:57:14 +0000
commit9928e41df8d6c38f9354c0f9caad31cc3f493e3c (patch)
tree94f837d0fb5b7592a3cee05bc9953d7aaf3dc3cb /sources/scalac/PhaseDescriptor.java
parent8a2115f3605408237e757f64e1ca5d547e536c04 (diff)
downloadscala-9928e41df8d6c38f9354c0f9caad31cc3f493e3c.tar.gz
scala-9928e41df8d6c38f9354c0f9caad31cc3f493e3c.tar.bz2
scala-9928e41df8d6c38f9354c0f9caad31cc3f493e3c.zip
- Fixed id of terminal phase
Diffstat (limited to 'sources/scalac/PhaseDescriptor.java')
-rw-r--r--sources/scalac/PhaseDescriptor.java6
1 files changed, 4 insertions, 2 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;
}
//########################################################################