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

Markus Trippelsdorf <trippels at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|---                         |INVALID

--- Comment #5 from Markus Trippelsdorf <trippels at gcc dot gnu.org> ---
(In reply to Jan Hubicka from comment #4)
> > struct VideoBuffers
> > {
> >   void StartDisplayingFrame ();
> > };
> > struct B
> > {
> >   VideoBuffers vbuffers;
> >   virtual void
> >   StartDisplay ()
> >   {
> >     vbuffers.StartDisplayingFrame ();
> >   }
> So we devirtualize to StartDisplay but that leads to linker failure because
> StartDisplayingFrame is not linked with the object file.
> 
> I think this is similar to some earlier testcases we run across in
> libreoffice
> and we managed to declare it invalid - if you provide inline function body
> you
> need to link the unit with symbols it uses.

OK. That was my fist reaction, too. 
But it is irritating that it succeeds with -flto.

Reply via email to