https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71579

--- Comment #22 from Antony Polukhin <antoshkka at gmail dot com> ---
> Maybe we should consider dropping all the static assertions from traits that 
> are implemented using a compiler built-in.

Sounds like the right thing to do.

> Our type trait and the __has_virtual_destructor built-in both seem to get 
> this wrong, rejecting Incomplete[2], which is not a class type, and so 
> doesn't need to be complete (or maybe the precondition is wrong and there's a 
> library defect?)

The library precondition seems right. As I read it, the trait just checks for
`virtual` on the destructor. If there's no destructor - it is fine, no
`virtual` on it.

Reply via email to