This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug c++/50811] [C++0x] G++ rejects class-virt-specifier if class-head-name includes nested-name-specifier


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 { ... };


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]