http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50811

--- Comment #8 from Jonathan Wakely <redi at gcc dot gnu.org> 2011-10-21 
14:38:03 UTC ---
Daniel watches any PR to do with C++11 non-conformance  ;)

No, this didn't come up in the context of the library (although I might use
final on some of the shared_ptr and future helper classes to enable
de-virtualisation.)

I'm using -Wdelete-non-virtual-dtor and adding __final (in std=c++98 mode) to
classes so the compiler knows when not to warn. I hit the bug with code like:

// a.h
struct Interface { virtual void f() = 0; };

class A
{
  class Impl;
  Impl* impl;
};

// a.cc
class A::Impl __final : Interface { ... };

Reply via email to