Hi! On Wed, Dec 12, 2018 at 11:30:37PM +0100, Jakub Jelinek wrote: > 2018-12-12 Jakub Jelinek <ja...@redhat.com> > > PR c++/86524 > PR c++/88446 > * cp-tree.h (fold_non_dependent_expr): Add manifestly_const_eval > argument. > * constexpr.c (cxx_eval_builtin_function_call): Evaluate > __builtin_constant_p if ctx->manifestly_const_eval even in constexpr > functions. For arguments to builtins, if ctx->manifestly_const_eval > try to first evaluate arguments with it, but if that doesn't result > in a constant expression, retry without it. Fix comment typo. > (fold_non_dependent_expr): Add manifestly_const_eval argument, pass > it through to cxx_eval_outermost_constant_expr and > maybe_constant_value. > * semantics.c (finish_static_assert): Call fold_non_dependent_expr > with true as manifestly_const_eval. > > * g++.dg/cpp1y/constexpr-86524.C: New test. > * g++.dg/cpp2a/is-constant-evaluated4.C: New test. > * g++.dg/cpp2a/is-constant-evaluated5.C: New test. > * g++.dg/cpp2a/is-constant-evaluated6.C: New test.
I'd like to ping this patch. Thanks. Jakub