https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100361
Bug ID: 100361 Summary: gcc-11 for msp430-elf fails to build: src/c++17/floating_to_chars.cc:107: d2fixed_full_table.h:1283:23: error: size of array ‘POW10_SPLIT_2’ exceeds maximum object size ‘32767’ Product: gcc Version: 11.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: slyfox at gcc dot gnu.org Target Milestone: --- gcc-10.3.0 was able to build: LANG=C msp430-elf-gcc -v Using built-in specs. COLLECT_GCC=/usr/bin/msp430-elf-gcc COLLECT_LTO_WRAPPER=/usr/libexec/gcc/msp430-elf/10.3.0/lto-wrapper Target: msp430-elf Configured with: /tmp/portage-tmpdir/portage/cross-msp430-elf/gcc-10.3.0/work/gcc-10.3.0/configure --host=x86_64-pc-linux-gnu --target=msp430-elf --build=x86_64-pc-linux-gnu --prefix=/usr --bindir=/usr/x86_64-pc-linux-gnu/msp430-elf/gcc-bin/10.3.0 --includedir=/usr/lib/gcc/msp430-elf/10.3.0/include --datadir=/usr/share/gcc-data/msp430-elf/10.3.0 --mandir=/usr/share/gcc-data/msp430-elf/10.3.0/man --infodir=/usr/share/gcc-data/msp430-elf/10.3.0/info --with-gxx-include-dir=/usr/lib/gcc/msp430-elf/10.3.0/include/g++-v10 --with-python-dir=/share/gcc-data/msp430-elf/10.3.0/python --enable-languages=c,c++ --enable-obsolete --enable-secureplt --disable-werror --with-system-zlib --enable-nls --without-included-gettext --enable-checking=release --with-bugurl=https://bugs.gentoo.org/ --with-pkgversion='Gentoo 10.3.0 p1' --disable-esp --enable-libstdcxx-time --enable-poison-system-directories --disable-libstdcxx-time --with-sysroot=/usr/msp430-elf --disable-bootstrap --with-newlib --enable-multilib --disable-fixed-point --disable-libgomp --disable-libssp --disable-libada --disable-systemtap --disable-vtable-verify --disable-libvtv --with-zstd --enable-lto --without-isl --disable-libsanitizer --enable-default-pie --enable-default-ssp Thread model: single Supported LTO compression algorithms: zlib zstd gcc version 10.3.0 (Gentoo 10.3.0 p1) gcc-11 fails as: Making all in c++17 make[5]: Entering directory '/tmp/portage/cross-msp430-elf/gcc-12.0.0_pre9999/work/build/msp430-elf/libstdc++-v3/src/c++17' /bin/bash ../../libtool --tag CXX --tag disable-shared --mode=compile /tmp/portage/cross-msp430-elf/gcc-12.0.0_pre9999/work/build/./gcc/xgcc -shared-libgcc -B/tmp/portage/cross-msp430-elf/gcc-12.0.0_pre9999/work/build/./gcc -nostdinc++ -L/tmp/portage/cross-msp430-elf/gcc-12.0.0_pre9999/work/build/msp430-elf/libstdc++-v3/src -L/tmp/portage/cross-msp430-elf/gcc-12.0.0_pre9999/work/build/msp430-elf/libstdc++-v3/src/.libs -L/tmp/portage/cross-msp430-elf/gcc-12.0.0_pre9999/work/build/msp430-elf/libstdc++-v3/libsupc++/.libs -B/usr/msp430-elf/bin/ -B/usr/msp430-elf/lib/ -isystem /usr/msp430-elf/include -isystem /usr/msp430-elf/sys-include -I/tmp/portage/cross-msp430-elf/gcc-12.0.0_pre9999/work/gcc-12.0.0_pre9999/libstdc++-v3/../libgcc -I/tmp/portage/cross-msp430-elf/gcc-12.0.0_pre9999/work/build/msp430-elf/libstdc++-v3/include/msp430-elf -I/tmp/portage/cross-msp430-elf/gcc-12.0.0_pre9999/work/build/msp430-elf/libstdc++-v3/include -I/tmp/portage/cross-msp430-elf/gcc-12.0.0_pre9999/work/gcc-12.0.0_pre9999/libstdc++-v3/libsupc++ -std=gnu++17 -fno-implicit-templates -Wall -Wextra -Wwrite-strings -Wcast-qual -Wabi=2 -fdiagnostics-show-location=once -ffunction-sections -fdata-sections -frandom-seed=floating_to_chars.lo -fimplicit-templates -g -O2 -c -o floating_to_chars.lo /tmp/portage/cross-msp430-elf/gcc-12.0.0_pre9999/work/gcc-12.0.0_pre9999/libstdc++-v3/src/c++17/floating_to_chars.cc libtool: compile: /tmp/portage/cross-msp430-elf/gcc-12.0.0_pre9999/work/build/./gcc/xgcc -shared-libgcc -B/tmp/portage/cross-msp430-elf/gcc-12.0.0_pre9999/work/build/./gcc -nostdinc++ -L/tmp/portage/cross-msp430-elf/gcc-12.0.0_pre9999/work/build/msp430-elf/libstdc++-v3/src -L/tmp/portage/cross-msp430-elf/gcc-12.0.0_pre9999/work/build/msp430-elf/libstdc++-v3/src/.libs -L/tmp/portage/cross-msp430-elf/gcc-12.0.0_pre9999/work/build/msp430-elf/libstdc++-v3/libsupc++/.libs -B/usr/msp430-elf/bin/ -B/usr/msp430-elf/lib/ -isystem /usr/msp430-elf/include -isystem /usr/msp430-elf/sys-include -I/tmp/portage/cross-msp430-elf/gcc-12.0.0_pre9999/work/gcc-12.0.0_pre9999/libstdc++-v3/../libgcc -I/tmp/portage/cross-msp430-elf/gcc-12.0.0_pre9999/work/build/msp430-elf/libstdc++-v3/include/msp430-elf -I/tmp/portage/cross-msp430-elf/gcc-12.0.0_pre9999/work/build/msp430-elf/libstdc++-v3/include -I/tmp/portage/cross-msp430-elf/gcc-12.0.0_pre9999/work/gcc-12.0.0_pre9999/libstdc++-v3/libsupc++ -std=gnu++17 -fno-implicit-templates -Wall -Wextra -Wwrite-strings -Wcast-qual -Wabi=2 -fdiagnostics-show-location=once -ffunction-sections -fdata-sections -frandom-seed=floating_to_chars.lo -fimplicit-templates -g -O2 -c /tmp/portage/cross-msp430-elf/gcc-12.0.0_pre9999/work/gcc-12.0.0_pre9999/libstdc++-v3/src/c++17/floating_to_chars.cc -o floating_to_chars.o In file included from /tmp/portage/cross-msp430-elf/gcc-12.0.0_pre9999/work/gcc-12.0.0_pre9999/libstdc++-v3/src/c++17/floating_to_chars.cc:107: /tmp/portage/cross-msp430-elf/gcc-12.0.0_pre9999/work/gcc-12.0.0_pre9999/libstdc++-v3/src/c++17/ryu/d2fixed_full_table.h:1283:23: error: size of array 'POW10_SPLIT_2' exceeds maximum object size '32767' 1283 | static const uint64_t POW10_SPLIT_2[3133][3] = { | ^~~~~~~~~~~~~ In file included from /tmp/portage/cross-msp430-elf/gcc-12.0.0_pre9999/work/gcc-12.0.0_pre9999/libstdc++-v3/src/c++17/floating_to_chars.cc:110: /tmp/portage/cross-msp430-elf/gcc-12.0.0_pre9999/work/gcc-12.0.0_pre9999/libstdc++-v3/src/c++17/ryu/d2fixed.c: In function 'int {anonymous}::ryu::d2fixed_buffered_n(double, uint32_t, char*)': /tmp/portage/cross-msp430-elf/gcc-12.0.0_pre9999/work/gcc-12.0.0_pre9999/libstdc++-v3/src/c++17/ryu/d2fixed.c:425:50: error: 'POW10_SPLIT_2' was not declared in this scope; did you mean 'POW10_SPLIT'? 425 | uint32_t digits = mulShift_mod1e9(m2 << 8, POW10_SPLIT_2[p], j + 8); | ^~~~~~~~~~~~~ | POW10_SPLIT /tmp/portage/cross-msp430-elf/gcc-12.0.0_pre9999/work/gcc-12.0.0_pre9999/libstdc++-v3/src/c++17/ryu/d2fixed.c: In function 'int {anonymous}::ryu::d2exp_buffered_n(double, uint32_t, char*, int*)': /tmp/portage/cross-msp430-elf/gcc-12.0.0_pre9999/work/gcc-12.0.0_pre9999/libstdc++-v3/src/c++17/ryu/d2fixed.c:601:78: error: 'POW10_SPLIT_2' was not declared in this scope; did you mean 'POW10_SPLIT'? 601 | digits = (p >= POW10_OFFSET_2[idx + 1]) ? 0 : mulShift_mod1e9(m2 << 8, POW10_SPLIT_2[p], j + 8); | ^~~~~~~~~~~~~ | POW10_SPLIT Configured as: $ LANG=C ./gcc/xgcc -Bgcc -v Reading specs from gcc/specs COLLECT_GCC=./gcc/xgcc COLLECT_LTO_WRAPPER=gcc/lto-wrapper Target: msp430-elf Configured with: /tmp/portage/cross-msp430-elf/gcc-12.0.0_pre9999/work/gcc-12.0.0_pre9999/configure --host=x86_64-pc-linux-gnu --target=msp430-elf --build=x86_64-pc-linux-gnu --prefix=/usr --bindir=/usr/x86_64-pc-linux-gnu/msp430-elf/gcc-bin/12.0.0 --includedir=/usr/lib/gcc/msp430-elf/12.0.0/include --datadir=/usr/share/gcc-data/msp430-elf/12.0.0 --mandir=/usr/share/gcc-data/msp430-elf/12.0.0/man --infodir=/usr/share/gcc-data/msp430-elf/12.0.0/info --with-gxx-include-dir=/usr/lib/gcc/msp430-elf/12.0.0/include/g++-v12 --with-python-dir=/share/gcc-data/msp430-elf/12.0.0/python --enable-languages=c,c++ --enable-obsolete --enable-secureplt --disable-werror --with-system-zlib --enable-nls --without-included-gettext --enable-checking=release --with-bugurl=https://bugs.gentoo.org/ --with-pkgversion='Gentoo 12.0.0_pre9999 p1, commit d8d291f3367230fdfdacc9868b0aa01de1dabb13' --disable-esp --enable-libstdcxx-time --enable-poison-system-directories --disable-libstdcxx-time --with-sysroot=/usr/msp430-elf --disable-bootstrap --with-newlib --enable-multilib --disable-fixed-point --disable-libgomp --disable-libssp --disable-libada --disable-systemtap --disable-valgrind-annotations --disable-vtable-verify --disable-libvtv --with-zstd --enable-lto --without-isl --disable-libsanitizer --enable-default-pie --enable-default-ssp Thread model: single Supported LTO compression algorithms: zlib zstd gcc version 12.0.0 20210430 (experimental) (Gentoo 12.0.0_pre9999 p1, commit d8d291f3367230fdfdacc9868b0aa01de1dabb13)