diff options
author | Jason Merrill <jason@redhat.com> | 2025-04-20 12:31:35 -0400 |
---|---|---|
committer | Jason Merrill <jason@redhat.com> | 2025-04-21 15:50:21 -0400 |
commit | e7523a40cb1787d52a638cf8a4f9eeb5212f770f (patch) | |
tree | f71c3f1d50fceb1fe92bd5b661ba7117cebc9417 /libjava/java/util/BitSet.java | |
parent | e6ae0de72ef696c4016cc66c53a4aa49a1e900a6 (diff) | |
download | gcc-e7523a40cb1787d52a638cf8a4f9eeb5212f770f.zip gcc-e7523a40cb1787d52a638cf8a4f9eeb5212f770f.tar.gz gcc-e7523a40cb1787d52a638cf8a4f9eeb5212f770f.tar.bz2 |
c++: new size folding [PR118775]
r15-7893 added a workaround for a case where we weren't registering (long)&a
as invalid in a constant-expression, because build_new_1 had folded away the
CONVERT_EXPR that we rely on to diagnose that problem. In general we want
to defer most folding until cp_fold_function, so let's fold less here. We
mainly want to expose constant size so we can treat it differently, and we
already did any constexpr evaluation when initializing cst_outer_nelts, so
fold_to_constant seems like the right choice.
PR c++/118775
gcc/cp/ChangeLog:
* constexpr.cc (cxx_eval_call_expression): Add assert.
(fold_to_constant): Handle processing_template_decl.
* init.cc (build_new_1): Use fold_to_constant.
gcc/testsuite/ChangeLog:
* g++.dg/cpp2a/constexpr-new24.C: Adjust diagnostic.
Diffstat (limited to 'libjava/java/util/BitSet.java')
0 files changed, 0 insertions, 0 deletions