re PR java/12866 (gcj checks `throws' clause on artificial method)

Fixes PR java/12866.
* parse.y (resolve_qualified_expression_name): Move test
for outer field access methods from here...
(check_thrown_exceptions) ...to here.

From-SVN: r73210
This commit is contained in:
Jeff Sturm 2003-11-03 03:58:50 +00:00 committed by Jeff Sturm
parent 043022f253
commit 9bcdf7352c
2 changed files with 12 additions and 4 deletions

View File

@ -1,3 +1,10 @@
2003-11-02 Jeff Sturm <jsturm@one-point.com>
Fixes PR java/12866.
* parse.y (resolve_qualified_expression_name): Move test
for outer field access methods from here...
(check_thrown_exceptions) ...to here.
2003-11-01 Kelley Cook <kcook@gcc.gnu.org>
* .cvsignore: Delete.

View File

@ -9601,10 +9601,7 @@ resolve_qualified_expression_name (tree wfl, tree *found_decl,
instantiation using a primary qualified by a `new' */
RESTORE_THIS_AND_CURRENT_CLASS;
/* EH check. No check on access$<n> functions */
if (location
&& !OUTER_FIELD_ACCESS_IDENTIFIER_P
(DECL_NAME (current_function_decl)))
if (location)
{
tree arguments = NULL_TREE;
if (TREE_CODE (qual_wfl) == CALL_EXPR
@ -15783,6 +15780,10 @@ check_thrown_exceptions (int location, tree decl, tree this_expr)
tree throws;
int is_array_call = 0;
/* Skip check within generated methods, such as access$<n>. */
if (OUTER_FIELD_ACCESS_IDENTIFIER_P (DECL_NAME (current_function_decl)))
return;
if (this_expr != NULL_TREE
&& TREE_CODE (TREE_TYPE (this_expr)) == POINTER_TYPE
&& TYPE_ARRAY_P (TREE_TYPE (TREE_TYPE (this_expr))))