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

Andrew Macleod <amacleod at redhat dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED

--- Comment #5 from Andrew Macleod <amacleod at redhat dot com> ---
Hmm yeah, we never cared before if a relation was actually registered.  That
new code puts us in a loop when we adjust the timestamp of objects in the newly
registered relation when they feed each other.   

The second time the statement is visited, the relation already exists, so it
isn't added.  When it isn't added, we shouldn't update the timestamp of the
consumers.   Updating the timestamp causes a recalculation to happen again, and
the infinite loop results.

I have a patch in testing.  register_relation will return a boolean indicating
if a relation was actually registered or not, and the timestamp is only updated
if a new relation was added.

Reply via email to