Richard Kenner wrote:
> #if defined ENABLE_CHECKING
> gcc_assert (handled_component_p (ref))
> #endif
>
> If the comment says it has to be an ARRAY_REF, why not just check for
> that?
Given that we're supposed to be passing in an ARRAY_REF and we don't want it
to return true if passed in an INDIRECT_REF, why not just reverse the order of
the two statements in the body of the original while loop?
Before:
> static inline bool
> ref_contains_indirect_ref (tree ref)
> {
> while (handled_component_p (ref))
> {
> if (TREE_CODE (ref) == INDIRECT_REF)
> return true;
> ref = TREE_OPERAND (ref, 0);
> }
> return false;
> }
After:
> static inline bool
> ref_contains_indirect_ref (tree ref)
> {
> while (handled_component_p (ref))
> {
> ref = TREE_OPERAND (ref, 0);
> if (TREE_CODE (ref) == INDIRECT_REF)
> return true;
> }
> return false;
> }
cheers,
DaveK
--
Can't think of a witty .sigline today....