re PR libfortran/24991 (gfortran build fails with - error:gthr-default.h: No such file or directory)
PR libfortran/24991 * config/darwin.c (machopic_indirection_name, machopic_output_indirection): Follow transparent alias chain. From-SVN: r107639
This commit is contained in:
parent
6b12b9b330
commit
0a6a4494e4
@ -1,3 +1,9 @@
|
|||||||
|
2005-11-28 Alexandre Oliva <aoliva@redhat.com>
|
||||||
|
|
||||||
|
PR libfortran/24991
|
||||||
|
* config/darwin.c (machopic_indirection_name,
|
||||||
|
machopic_output_indirection): Follow transparent alias chain.
|
||||||
|
|
||||||
2005-11-28 Alexandre Oliva <aoliva@redhat.com>
|
2005-11-28 Alexandre Oliva <aoliva@redhat.com>
|
||||||
|
|
||||||
* varasm.c (ultimate_transparent_alias_target): Add comment.
|
* varasm.c (ultimate_transparent_alias_target): Add comment.
|
||||||
|
@ -316,6 +316,21 @@ machopic_indirection_name (rtx sym_ref, bool stub_p)
|
|||||||
const char *suffix;
|
const char *suffix;
|
||||||
const char *prefix = user_label_prefix;
|
const char *prefix = user_label_prefix;
|
||||||
const char *quote = "";
|
const char *quote = "";
|
||||||
|
tree id;
|
||||||
|
|
||||||
|
id = maybe_get_identifier (name);
|
||||||
|
if (id)
|
||||||
|
{
|
||||||
|
tree id_orig = id;
|
||||||
|
|
||||||
|
while (IDENTIFIER_TRANSPARENT_ALIAS (id))
|
||||||
|
id = TREE_CHAIN (id);
|
||||||
|
if (id != id_orig)
|
||||||
|
{
|
||||||
|
name = IDENTIFIER_POINTER (id);
|
||||||
|
namelen = strlen (name);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (name[0] == '*')
|
if (name[0] == '*')
|
||||||
{
|
{
|
||||||
@ -861,6 +876,18 @@ machopic_output_indirection (void **slot, void *data)
|
|||||||
{
|
{
|
||||||
char *sym;
|
char *sym;
|
||||||
char *stub;
|
char *stub;
|
||||||
|
tree id;
|
||||||
|
|
||||||
|
id = maybe_get_identifier (sym_name);
|
||||||
|
if (id)
|
||||||
|
{
|
||||||
|
tree id_orig = id;
|
||||||
|
|
||||||
|
while (IDENTIFIER_TRANSPARENT_ALIAS (id))
|
||||||
|
id = TREE_CHAIN (id);
|
||||||
|
if (id != id_orig)
|
||||||
|
sym_name = IDENTIFIER_POINTER (id);
|
||||||
|
}
|
||||||
|
|
||||||
sym = alloca (strlen (sym_name) + 2);
|
sym = alloca (strlen (sym_name) + 2);
|
||||||
if (sym_name[0] == '*' || sym_name[0] == '&')
|
if (sym_name[0] == '*' || sym_name[0] == '&')
|
||||||
|
Loading…
Reference in New Issue
Block a user