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

--- Comment #8 from Richard Biener <rguenth at gcc dot gnu.org> ---
The original testcase has

   void lock() override = 0;
   void unlock() override = 0;
   void lock() final override
   void unlock() final override

and a few more override.  The reduced one has nothing like that (but maybe it's
misreduced).  Removing 'final' doesn't avoid the issue though.

It might be this is a bad interaction of speculative devirt and inlining,
-fno-devirtualize-speculatively is enough to prevent the bug.

Reply via email to