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:
parent
79e2e1605e
commit
2b472f91ee
2 changed files with 18 additions and 0 deletions
|
@ -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
|
||||
|
|
|
@ -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)
|
||||
|
|
Loading…
Add table
Reference in a new issue