------- Comment #3 from pinskia at gcc dot gnu dot org 2006-10-14 03:02 ------- (In reply to comment #2) > Can't the compiler generate the right throw specification?
No because the C++ standard says it does but with respect to all functions it calls and not just the base class. 15.4/13: An implicitly declared special member function (clause 12) shall have an exception-specification. If f is an implicitly declared default constructor, copy constructor, destructor, or copy assingment operator, is implicit exception-specification specifies the type-id T if and only if T is allows by the exception-specification of a function directly invoked by f's implicitly defintion; f shall allow exception if __any__ function it directly invokes all exceptions, and f shall no exceptions if __every__ function it directly invoked allows no exceptions. (emphisis is mine). -- pinskia at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution| |INVALID http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29466