[Bug c++/91286] invalid use of incomplete type depends on --enable-checking=release
mpolacek at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Fri Aug 2 14:50:00 GMT 2019
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91286
--- Comment #2 from Marek Polacek <mpolacek at gcc dot gnu.org> ---
The reason for this is:
/* When checking, try to get a constant value for all non-dependent
expressions in order to expose bugs in *_dependent_expression_p
and constexpr. This can affect code generation, see PR70704, so
only do this for -fchecking=2. */
if (flag_checking > 1
&& cxx_dialect >= cxx11
/* Don't do this during nsdmi parsing as it can lead to
unexpected recursive instantiations. */
&& !parsing_nsdmi ()
/* Don't do this during concept expansion either and for
the same reason. */
&& !expanding_concept ())
fold_non_dependent_expr (expr, tf_none);
but I think this is invalid ([class.derived]) NDR, so not sure if we need to
change anything.
More information about the Gcc-bugs
mailing list