------- Additional Comments From kazu at cs dot umass dot edu 2005-04-14 14:42
-------
Reduced down to:
struct link_map {
struct link_map *next;
unsigned int start, end;
};
void
foo (struct link_map **array, long int cnt)
{
struct link_map *l;
const void *caller = __builtin_extract_return_addr (__builtin_return_address
(0));
long int ns = 0;
for (l = array[cnt]; l; l = l->next)
{
if (caller >= (const void *) l->start
&& caller < (const void *) l->end)
ns = cnt;
}
for (l = array[ns]; l != 0; l = l->next)
;
}
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21021