On Thu, Mar 21, 2019 at 07:27:03PM -0400, Jason Merrill wrote:
> On 3/15/19 4:07 PM, Jakub Jelinek wrote:
> > +/* Number of cxx_eval_constant_expression calls (except skipped ones,
> > + on simple constants or location wrappers) encountered during current
> > + cxx_eval_outermost_constant_expr call. */
> > +static HOST_WIDE_INT constexpr_ops_count;
>
> Hmm, a global static variable is non-reentrant. This may not be an issue in
> practice because of instantiate_constexpr_fns, but still seems questionable.
One option would be to add HOST_WIDE_INT *constexpr_ops_count; into
constexpr_ctx structure (pointer, not the counter itself, because we
constexpr_ctx new_ctx = *ctx;
... (&new_ctx, ...)
).
Jakub