summaryrefslogtreecommitdiff
path: root/sources/scalac/Global.java
diff options
context:
space:
mode:
authorpaltherr <paltherr@epfl.ch>2003-09-06 14:34:45 +0000
committerpaltherr <paltherr@epfl.ch>2003-09-06 14:34:45 +0000
commit5d956bda6ba36bf9cfc9574d758f4043691fa2f6 (patch)
tree9a70f0c179bfad02cd27f184fea560d732f0dea6 /sources/scalac/Global.java
parent4212f1b8c0d2b952ce6dac9d5e9c80f3bfbd3fd6 (diff)
downloadscala-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
Diffstat (limited to 'sources/scalac/Global.java')
-rw-r--r--sources/scalac/Global.java14
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())