https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118275
--- Comment #2 from GCC Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Jakub Jelinek <ja...@gcc.gnu.org>: https://gcc.gnu.org/g:6f444e45d3fd6c45fc34a79ac66bf46c20fd95b1 commit r15-6548-g6f444e45d3fd6c45fc34a79ac66bf46c20fd95b1 Author: Jakub Jelinek <ja...@redhat.com> Date: Fri Jan 3 17:59:57 2025 +0100 varasm: Fix up array_size_for_constructor RAW_DATA_CST handling once again [PR118275] As the following testcases show (the latter only if I revert the temporary reversion of the C++ large array speedup), the FEs aren't really consistent in the type of array CONSTRUCTOR_ELTS indexes, it can be bitsizetype, but can be sizetype as well. Given that everything else is able to cope with it just fine, I'm using build_int_cst which also doesn't care what type it is, instead of bitsize_int, which I've used in PR117190 fix (previously it was size_int). 2025-01-03 Jakub Jelinek <ja...@redhat.com> PR c++/118275 * varasm.cc (array_size_for_constructor): Use build_int_cst with TREE_TYPE (index) as first argument, instead of bitsize_int. * g++.dg/cpp/embed-18.C: New test. * g++.dg/ext/flexary41.C: New test.