parse.y (patch_method_invocation): If class_decl is null (e.g.

d
	* parse.y (patch_method_invocation):  If class_decl is null
	(e.g. an array type), use original type.
	* parse.y (check_thrown_exceptions):  Temporary hack to suppress
	errors about uncaught exception from clone (of array, specifically).

From-SVN: r24299
This commit is contained in:
Per Bothner 1998-12-13 09:51:04 -08:00
parent 3e78f871ac
commit 59e4a38e81
1 changed files with 6 additions and 0 deletions

View File

@ -9278,6 +9278,7 @@ patch_method_invocation (patch, primary, where, is_static, ret_decl)
/* 2- Do the layout of the class where the last field
was found, so we can search it. */
class_decl = resolve_and_layout (type, NULL_TREE);
if (class_decl != NULL_TREE)
type = TREE_TYPE (class_decl);
/* 3- Retrieve a filtered list of method matches, Refine
@ -13493,6 +13494,11 @@ check_thrown_exceptions (location, decl)
throws = TREE_CHAIN (throws))
if (!check_thrown_exceptions_do (TREE_VALUE (throws)))
{
#if 1
/* Temporary hack to suppresses errors about cloning arrays. FIXME */
if (DECL_NAME (decl) == get_identifier ("clone"))
continue;
#endif
EXPR_WFL_LINECOL (wfl_operator) = location;
parse_error_context
(wfl_operator, "Exception `%s' must be caught, or it must be "