summaryrefslogtreecommitdiffstats
path: root/gcc/cp/tree.c
diff options
context:
space:
mode:
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2007-09-25 10:30:21 +0000
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2007-09-25 10:30:21 +0000
commit9e667c5a6e4c561ca7661e32b82972f12ab12d69 (patch)
tree7f7711926444aa8beabc6e8b0c608c1b26fb2ce7 /gcc/cp/tree.c
parentda31ca8ceabaf3f8a921ffb2cb6bdef85818a1fa (diff)
downloadppe42-gcc-9e667c5a6e4c561ca7661e32b82972f12ab12d69.tar.gz
ppe42-gcc-9e667c5a6e4c561ca7661e32b82972f12ab12d69.zip
* tree.c (cxx_printable_name): Compare FUNCTION_DECL uids
rather than pointers. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128761 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cp/tree.c')
-rw-r--r--gcc/cp/tree.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/gcc/cp/tree.c b/gcc/cp/tree.c
index 77aac702f20..11181c2b425 100644
--- a/gcc/cp/tree.c
+++ b/gcc/cp/tree.c
@@ -1155,7 +1155,7 @@ build_overload (tree decl, tree chain)
const char *
cxx_printable_name (tree decl, int v)
{
- static tree decl_ring[PRINT_RING_SIZE];
+ static unsigned int uid_ring[PRINT_RING_SIZE];
static char *print_ring[PRINT_RING_SIZE];
static int ring_counter;
int i;
@@ -1168,7 +1168,7 @@ cxx_printable_name (tree decl, int v)
/* See if this print name is lying around. */
for (i = 0; i < PRINT_RING_SIZE; i++)
- if (decl_ring[i] == decl)
+ if (uid_ring[i] == DECL_UID (decl))
/* yes, so return it. */
return print_ring[i];
@@ -1177,18 +1177,18 @@ cxx_printable_name (tree decl, int v)
if (current_function_decl != NULL_TREE)
{
- if (decl_ring[ring_counter] == current_function_decl)
+ if (uid_ring[ring_counter] == DECL_UID (current_function_decl))
ring_counter += 1;
if (ring_counter == PRINT_RING_SIZE)
ring_counter = 0;
- gcc_assert (decl_ring[ring_counter] != current_function_decl);
+ gcc_assert (uid_ring[ring_counter] != DECL_UID (current_function_decl));
}
if (print_ring[ring_counter])
free (print_ring[ring_counter]);
print_ring[ring_counter] = xstrdup (lang_decl_name (decl, v));
- decl_ring[ring_counter] = decl;
+ uid_ring[ring_counter] = DECL_UID (decl);
return print_ring[ring_counter];
}
OpenPOWER on IntegriCloud