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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED
           Assignee|unassigned at gcc dot gnu.org      |rguenth at gcc dot 
gnu.org

--- Comment #9 from Richard Biener <rguenth at gcc dot gnu.org> ---
(In reply to Jan Hubicka from comment #8)
> > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98330
> > 
> > --- Comment #4 from Richard Biener <rguenth at gcc dot gnu.org> ---
> > So modref allocates a fnspec_summary for an unknown indirect call (NULL 
> > callee)
> > but then in compute_parm_map calls function_or_virtual_thunk_symbol on
> > that NULL callee unconditionally.  We have a meaningful fnspec for the
> > call because the call type has a 'fn spec' attribute attached.
> > 
> > So I'm proposing the following which avoids the ICE (and undefined behavior
> > calling a member fn on a NULL object)
> 
> That looks OK.  We do not expect fnspecs on types of indirect calls (we
> probably should, I just did not expected them to exist) but then we can
> always recover them from type.  I suppose we do not need per-call-stmt
> sensitive fnspec attributes on indirect calls, right?

Right.

> Honza

Reply via email to