checkpoint
[sbp.git] / src / edu / berkeley / sbp / Ambiguous.java
index cb55ffa..1f7cc38 100644 (file)
@@ -6,14 +6,17 @@ import java.io.*;
 import java.util.*;
 
 /** if ambiguity checking is enabled, this exception is thrown to signal that the parse was ambiguous */
-public class Ambiguous extends RuntimeException {
+public class Ambiguous extends Exception {
     public final Forest<?> ambiguity;
     public Ambiguous(Forest<?> ambiguity) { this.ambiguity = ambiguity; }
     public String toString() {
+        // FEATURE: more legible printout desperately needed
         StringBuffer sb = new StringBuffer();
-        sb.append("unresolved ambiguity "/*"at " + ambiguity.getLocation() + ":"*/);
-        for(Tree<?> result : ambiguity.expand(false))
-            sb.append("\n\n" + result.toPrettyString());
+        sb.append("unresolved ambiguity ");
+        for(Tree<?> result : ambiguity.expand(false)) {
+            sb.append("\n\n");
+            result.toPrettyString(sb);
+        }
         return sb.toString();
     }
 }