r281198 - Add virtual destructor (necessary due to the switch to shared_ptr).

2016-09-12 Thread Richard Smith via cfe-commits
Author: rsmith Date: Mon Sep 12 01:51:11 2016 New Revision: 281198 URL: http://llvm.org/viewvc/llvm-project?rev=281198&view=rev Log: Add virtual destructor (necessary due to the switch to shared_ptr). Modified: cfe/trunk/utils/TableGen/ClangDiagnosticsEmitter.cpp Modified: cfe/trunk/utils/Ta

Re: r281198 - Add virtual destructor (necessary due to the switch to shared_ptr).

2016-09-12 Thread David Blaikie via cfe-commits
Does that actually need a virtual dtor? The type erasure handling in shared_ptr would handle it so long as each instance is constructed with the derived type (looks like it probably is - make_shared used consistently) & we should get a warning (or could make the base dtor protected non-virtual to e

Re: r281198 - Add virtual destructor (necessary due to the switch to shared_ptr).

2016-09-12 Thread Richard Smith via cfe-commits
On Mon, Sep 12, 2016 at 10:55 AM, David Blaikie via cfe-commits < cfe-commits@lists.llvm.org> wrote: > Does that actually need a virtual dtor? The type erasure handling in > shared_ptr would handle it so long as each instance is constructed with the > derived type (looks like it probably is - make

Re: r281198 - Add virtual destructor (necessary due to the switch to shared_ptr).

2016-09-12 Thread David Blaikie via cfe-commits
Ah, hmm - we do use this technique in a few places. Oh, right - protected in the base, final derived classes (maybe that's the missing element?). So I think we've disabled whatever GCC warnings get in the way of that particular cliche. But, fair enough - thanks for the context. All power to the MS