https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98426

--- Comment #8 from Jerry DeLisle <jvdelisle at gcc dot gnu.org> ---
Martin or Matt,

Can you test the following variation to see if you get better results.

        return st;
    }

  retval = NULL;
  if (c <= 0)
    retval = find_symbol (st->left, name, module, generic);

  if (c > 0 && retval == NULL)
    retval = find_symbol (st->right, name, module, generic);

  if (c > 0 && retval == NULL)
    retval = find_symbol (st->left, name, module, generic);

  if (c <= 0 && retval == NULL)
    retval = find_symbol (st->right, name, module, generic);

  return retval;

This does pass regression testing but I do not think it guarantees better
results.  Apparently the value of c does not guarantee a find going left or
right.

Reply via email to