re PR java/4717 (miscompiling class reference)

* mangle.c (find_compression_record_match): Don't match compression
       records for package name elements unless they occur at the start of
       the name. Fix for PR java/4717.

From-SVN: r46628
This commit is contained in:
Bryce McKinlay 2001-10-30 04:43:16 +00:00 committed by Bryce McKinlay
parent 79e2e1605e
commit 2b472f91ee
2 changed files with 18 additions and 0 deletions

View file

@ -1,3 +1,9 @@
2001-10-29 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
* mangle.c (find_compression_record_match): Don't match compression
records for package name elements unless they occur at the start of
the name. Fix for PR java/4717.
2001-10-25 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
* expr.c (expand_java_field_op): Don't special-case references to

View file

@ -327,8 +327,20 @@ find_compression_record_match (type, next_current)
{
match = i = j;
saved_current = current;
i++;
break;
}
else
{
/* We don't want to match an element that appears in the middle
of a package name, so skip forward to the next complete type name.
IDENTIFIER_NODEs are partial package names while RECORD_TYPEs
represent complete type names. */
while (j < compression_next
&& TREE_CODE (TREE_VEC_ELT (compression_table, j)) ==
IDENTIFIER_NODE)
j++;
}
}
if (!next_current)