David Carlton <[EMAIL PROTECTED]> writes: | On Fri, 04 Mar 2005 19:15:41 -0600 (CST), Chris Lattner <[EMAIL PROTECTED]> said: | | > It's not a matter of warning vs not warning: it's a matter of | > emitting bogus warnings *sometimes* when you can emit the proper | > warning *all of the time*. | | I don't think you can emit the proper warning all of the time on | destruction, either: | | void deleteB( B *obj ) { | delete obj; | } | | If B is a base class with a non-virtual destructor, then this is safe | if obj's dynamic type is B, unsafe otherwise.
That is correct; but the number of false positive is reduced -- significantly in case where those classes appear in header files. -- Gaby