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

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |rguenth at gcc dot gnu.org
           Priority|P3                          |P2

--- Comment #5 from Richard Biener <rguenth at gcc dot gnu.org> ---
(In reply to Andrew Pinski from comment #4)
> (In reply to Sam James from comment #2)
> > Don't we have another PR for that assert firing?
> 
> You are thinking of PR 113197 but that is an assert in a different area
> though it is asserting on the same flag is not set, EAF_NO_DIRECT_READ .

I believe this assert is bogus as well.  We have flags
EAF_NOT_RETURNED_INDIRECTLY | EAF_NO_DIRECT_READ | EAF_NO_INDIRECT_READ

so !callarg_transitive because of EAF_NOT_RETURNED_INDIRECTLY.

I think the code wrongly tries to assert that there has to be a direct read,
at least I don't see why - in this case 'this' is passed to e::*.LTHUNK0 only.

I also don't see what would go wrong with the code if there's a direct read.

Reply via email to