I believe the case you're describing is one like this:
struct A { virtual void f() = delete; };
template struct B : A { virtual void f() = delete; };
B b;
Fixed in llvmorg-11-init-5618-g9975dc38bf7.
On Tue, 10 Mar 2020 at 18:01, Hubert Tong via cfe-commits <
cfe-commits@lists.llvm.org> wrote:
>
On Tue, Mar 10, 2020 at 7:35 PM Richard Smith wrote:
> Should be fixed in llvmorg-11-init-5426-g4cba668ac13.
>
Thanks. We're also seeing a failure on valid code where a template class
explicitly deletes a function that is an override of an explicitly deleted
virtual function in a (non-templated)
Should be fixed in llvmorg-11-init-5426-g4cba668ac13.
On Sat, 7 Mar 2020 at 08:05, Hubert Tong via cfe-commits <
cfe-commits@lists.llvm.org> wrote:
> Following this commit, the error recovery for invalid cases that
> explicitly define (out-of-line) a member function template as deleted and
> atte
Following this commit, the error recovery for invalid cases that explicitly
define (out-of-line) a member function template as deleted and attempts to
instantiate said function appears broken.
:4:35: error: deleted definition must be first declaration
template void A::f() = delete;
Author: Richard Smith
Date: 2019-10-22T18:16:17-07:00
New Revision: d052a578de58cbbb638cbe2dba05242d1ff443b9
URL:
https://github.com/llvm/llvm-project/commit/d052a578de58cbbb638cbe2dba05242d1ff443b9
DIFF:
https://github.com/llvm/llvm-project/commit/d052a578de58cbbb638cbe2dba05242d1ff443b9.diff