[Bug c++/70528] [5/6 Regression] bogus error: constructor required before non-static data member
ville.voutilainen at gmail dot com
gcc-bugzilla@gcc.gnu.org
Mon Apr 4 15:50:00 GMT 2016
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70528
--- Comment #10 from Ville Voutilainen <ville.voutilainen at gmail dot com> ---
(In reply to Jonathan Wakely from comment #8)
> I don't know how to implement is_default_constructible without using that
> decltype, or something similar that will cause the same problem.
>
> If we had a __is_constructible(_Tp, _Args...) builtin we could use that (for
> is_constructible, and then define is_default_constructible in terms of that).
It would be possible to push the use of the decltype into a separate trait,
which sorta-kinda papers over the problem, but then we have an
is_default_constructible that gives different results depending on where you
use it for such a nested type (before or after it's been parsed completely),
which is surely ill-formed NDR, and possibly an ODR violation as well. I can't
fathom how a builtin would change that problem.
More information about the Gcc-bugs
mailing list