diff options
author | paltherr <paltherr@epfl.ch> | 2003-09-06 14:34:45 +0000 |
---|---|---|
committer | paltherr <paltherr@epfl.ch> | 2003-09-06 14:34:45 +0000 |
commit | 5d956bda6ba36bf9cfc9574d758f4043691fa2f6 (patch) | |
tree | 9a70f0c179bfad02cd27f184fea560d732f0dea6 | |
parent | 4212f1b8c0d2b952ce6dac9d5e9c80f3bfbd3fd6 (diff) | |
download | scala-5d956bda6ba36bf9cfc9574d758f4043691fa2f6.tar.gz scala-5d956bda6ba36bf9cfc9574d758f4043691fa2f6.tar.bz2 scala-5d956bda6ba36bf9cfc9574d758f4043691fa2f6.zip |
- Added a phase change before printing to get r...
- Added a phase change before printing to get right symbol types
-rw-r--r-- | sources/scalac/Global.java | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/sources/scalac/Global.java b/sources/scalac/Global.java index 5c2249211b..a7b8f1e143 100644 --- a/sources/scalac/Global.java +++ b/sources/scalac/Global.java @@ -292,8 +292,13 @@ public class Global { start(); currentPhase.apply(units); stop(currentPhase.descriptor.taskDescription()); - if (currentPhase.descriptor.hasPrintFlag()) + if (currentPhase.descriptor.hasPrintFlag()) { + // go to next phase to print symbols with their new type + boolean next = currentPhase.next != null; + if (next) currentPhase = currentPhase.next; currentPhase.print(this); + if (next) currentPhase = currentPhase.prev; + } if (currentPhase.descriptor.hasGraphFlag()) currentPhase.graph(this); if (currentPhase.descriptor.hasCheckFlag()) @@ -322,8 +327,13 @@ public class Global { start(); currentPhase.apply(new Unit[] {unit}); // !!! pb with Analyzer stop(currentPhase.descriptor.taskDescription()); - if (currentPhase.descriptor.hasPrintFlag()) + if (currentPhase.descriptor.hasPrintFlag()) { + // go to next phase to print symbols with their new type + boolean next = currentPhase.next != null; + if (next) currentPhase = currentPhase.next; currentPhase.print(this); + if (next) currentPhase = currentPhase.prev; + } if (currentPhase.descriptor.hasGraphFlag()) currentPhase.graph(this); if (currentPhase.descriptor.hasCheckFlag()) |