parse.y (find_most_specific_methods_list): Select the only non-abstract method even if max has been set.

2000-07-18  Bryce McKinlay  <bryce@albatross.co.nz>

	* parse.y (find_most_specific_methods_list): Select the only
	non-abstract method even if max has been set.
	Fixes gcj/285, gcj/298.

(http://gcc.gnu.org/ml/gcc-patches/2000-10/msg00646.html)

From-SVN: r36956
This commit is contained in:
Bryce McKinlay 2000-10-20 04:00:44 +00:00 committed by Alexandre Petit-Bianco
parent f4fce7eda4
commit cab8e2bd65
2 changed files with 9 additions and 3 deletions

View File

@ -685,6 +685,12 @@ Sun Aug 6 00:47:24 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
(resolve_type_during_patch): Use `type' as a second
argument to resolve_no_layout. Fixes gcj/257.
2000-07-18 Bryce McKinlay <bryce@albatross.co.nz>
* parse.y (find_most_specific_methods_list): Select the only
non-abstract method even if max has been set.
Fixes gcj/285, gcj/298.
2000-07-18 Jeff Sturm <jeff.sturm@appnet.com>
* lang-specs.h: Added %(jc1) to java compiler options.

View File

@ -10600,9 +10600,9 @@ find_most_specific_methods_list (list)
TREE_CHAIN (new_list) = NULL_TREE;
}
/* We have several, we couldn't find a most specific, all but one are
abstract, we pick the only non abstract one. */
if (candidates > 0 && !max && (candidates == abstract+1))
/* We have several (we couldn't find a most specific), all but one
are abstract, we pick the only non abstract one. */
if (candidates > 0 && (candidates == abstract+1))
{
for (current = new_list; current; current = TREE_CHAIN (current))
if (!METHOD_ABSTRACT (TREE_VALUE (current)))