re PR java/17586 (kawa build fails with ICE)

2004-09-28  Andrew Haley  <aph@redhat.com>

	PR java/17586
	* jcf-parse.c (load_class): Don't try to read a class that we've
	already read.

From-SVN: r88239
This commit is contained in:
Andrew Haley 2004-09-28 17:40:56 +00:00 committed by Andrew Haley
parent cc15e98f65
commit 1679340f35
2 changed files with 13 additions and 6 deletions

View File

@ -1,3 +1,9 @@
2004-09-28 Andrew Haley <aph@redhat.com>
PR java/17586
* jcf-parse.c (load_class): Don't try to read a class that we've
already read.
2004-09-28 Andrew Haley <aph@redhat.com>
* jcf-parse.c (load_class): Back out previous broken patch.

View File

@ -567,6 +567,7 @@ load_class (tree class_or_name, int verbose)
{
tree name, saved;
int class_loaded;
tree class_decl;
/* class_or_name can be the name of the class we want to load */
if (TREE_CODE (class_or_name) == IDENTIFIER_NODE)
@ -577,12 +578,12 @@ load_class (tree class_or_name, int verbose)
name = TYPE_NAME (TREE_PURPOSE (class_or_name));
/* Or it's a type in the making */
else
{
/* If the class is from source code, then it must already be loaded. */
if (CLASS_FROM_SOURCE_P (class_or_name))
return;
name = DECL_NAME (TYPE_NAME (class_or_name));
}
name = DECL_NAME (TYPE_NAME (class_or_name));
/* If the class is from source code, then it must already be loaded. */
class_decl = IDENTIFIER_CLASS_VALUE (name);
if (class_decl && CLASS_FROM_SOURCE_P (TREE_TYPE (class_decl)))
return;
saved = name;
while (1)