re PR java/21045 (Anonymous inner class constructor's exceptions can't be caught or thrown)

2005-07-07  Bryce McKinlay  <mckinlay@redhat.com>

        PR java/21045
	* parse.y (add_exception_to_throws): New function.
	(purge_unchecked_exceptions): Removed.
	(get_constructor_super): Renamed from verify_constructor_super. Now
	returns the super constructor after verification.
	(java_complete_expand_method): Don't use purge_unchecked_exceptions
	or save/restore the exception list.
	(check_thrown_exceptions): Add uncaught exceptions in anonymous
	class initializers and constructors to the throws clause of the
	method.

2005-07-07  Bryce McKinlay  <mckinlay@redhat.com>

        * testsuite/libjava.compile/PR21045.java: New test.
        * testsuite/libjava.jacks/jacks.xfail: Remove 15.9.5.1-exception-1,
        15.9.5.1-exception-3, 8.3.2-abrupt-6, 8.3.2-abrupt-7.

From-SVN: r101713
This commit is contained in:
Bryce McKinlay
2005-07-07 14:34:53 +00:00
committed by Bryce McKinlay
parent b52110d478
commit ca12deb43e
5 changed files with 93 additions and 50 deletions
+6
View File
@@ -1,3 +1,9 @@
2005-07-07 Bryce McKinlay <mckinlay@redhat.com>
* testsuite/libjava.compile/PR21045.java: New test.
* testsuite/libjava.jacks/jacks.xfail: Remove 15.9.5.1-exception-1,
15.9.5.1-exception-3, 8.3.2-abrupt-6, 8.3.2-abrupt-7.
2005-07-06 Tom Tromey <tromey@redhat.com>
* java/io/InputStreamReader.java (refill): Handle no-progress
@@ -0,0 +1,11 @@
public class PR21045
{
class InnerBase {
InnerBase() throws Exception, NullPointerException {}
}
void method() {
try {
InnerBase obj = new InnerBase() {};
} catch (Exception e) {}
}
}
@@ -347,8 +347,6 @@
15.9.4-runtime-creation-1
15.9.4-runtime-creation-2
15.9.4-runtime-creation-5
15.9.5.1-exception-1
15.9.5.1-exception-3
15.9.5.1-exception-4
15.9.5.1-superconstructor-7
15.9.5.1-superconstructor-8
@@ -563,8 +561,6 @@
8.3.1.2-final-29
8.3.2-abrupt-3
8.3.2-abrupt-5
8.3.2-abrupt-6
8.3.2-abrupt-7
8.3.2.2-super-2
8.3.2.3-illegal-forward-instance-1
8.3.2.3-illegal-forward-instance-2