More detail to clarify.  Given the following source code:

try {
   Window.alert("Hello, AJAX");
} catch (IndexOutOfBoundsException a) {
   Window.alert(a.toString());
} catch (RuntimeException b) {
   Window.alert(b.toString());
} catch (Throwable c) {
   Window.alert(c.toString());
}

We were producing:

try {
   Window.alert("Hello, AJAX");
} catch (Object $e0) {
   $e0 = Exceptions.caught($e0);
   if ($e0 instanceof IndexOutOfBoundsException) {
     a = $e0;
     Window.alert(Throwable.$toString(a));
   } else if ($e0 instanceof RuntimeException) {
     b = $e0;
     Window.alert(Throwable.$toString(b));
   } else if ($e0 instanceof Throwable) {
     c = $e0;
     Window.alert(Throwable.$toString(c));
   } else
     throw $e0;
   }
}

Notice that a, b, and c never get a JDeclarationStatement?  This patch
makes it produce:

try {
   Window.alert("Hello, AJAX");
} catch (Object $e0) {
   $e0 = Exceptions.caught($e0);
   if ($e0 instanceof IndexOutOfBoundsException) {
     final IndexOutOfBoundsException a = $e0;
     Window.alert(Throwable.$toString(a));
   } else if ($e0 instanceof RuntimeException) {
     final RuntimeException b = $e0;
     Window.alert(Throwable.$toString(b));
   } else if ($e0 instanceof Throwable) {
     final Throwable c = $e0;
     Window.alert(Throwable.$toString(c));
   } else
     throw $e0;
   }
}


http://gwt-code-reviews.appspot.com/51813

--~--~---------~--~----~------------~-------~--~----~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~----------~----~----~----~------~----~------~--~---

Reply via email to