https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100255
Bug ID: 100255 Summary: Crosscompiler to ia64-hp-vms: vmsdbgout.c:368:20: error: ISO C++17 does not allow 'register' storage class specifier [-Werror=register] Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: debug Assignee: unassigned at gcc dot gnu.org Reporter: jbg...@lug-owl.de Target Milestone: --- I'm revamping my testing efforts, building cross compilers based on targets listed in ./contrib/config-list.mk. With .../configure --target=ia64-hp-vms --enable-werror-always --enable-languages=all --prefix=/tmp/gcc-ia64-hp-vms (using g++ (Debian 20210320-1) 11.0.1 20210320 (experimental) [master revision 3279a9a5a9a:6526c452d22:5f256a70a05fcfc5a1caf56678ceb12b4f87f781] as the host's compiler), build breaks (as of ed16241c6db23013d70b792a64f29080ad48a414) with this (cf. http://toolchain.lug-owl.de:8080/jobs/gcc-ia64-hp-vms/8): make all-gcc [...] [all 2021-04-25 20:52:34.441260] /usr/lib/gcc-snapshot/bin/g++ -fno-PIE -c -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wno-error=format-diag -Wmissing-format-attribute -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -fno-common -DHAVE_CONFIG_H -I. -I. -I../.././gcc -I../.././gcc/. -I../.././gcc/../include -I../.././gcc/../libcpp/include -I../.././gcc/../libcody -I../.././gcc/../libdecnumber -I../.././gcc/../libdecnumber/dpd -I../libdecnumber -I../.././gcc/../libbacktrace -o vmsdbgout.o -MT vmsdbgout.o -MMD -MP -MF ./.deps/vmsdbgout.TPo ../.././gcc/vmsdbgout.c [all 2021-04-25 20:52:38.329848] ../.././gcc/vmsdbgout.c: In function 'int write_debug_string(const char*, const char*, int)': [all 2021-04-25 20:52:38.330047] ../.././gcc/vmsdbgout.c:368:20: error: ISO C++17 does not allow 'register' storage class specifier [-Werror=register] [all 2021-04-25 20:52:38.330139] 368 | register int slen = strlen (P); \ [all 2021-04-25 20:52:38.330220] | ^~~~ [all 2021-04-25 20:52:38.330296] ../.././gcc/vmsdbgout.c:549:7: note: in expansion of macro 'ASM_OUTPUT_DEBUG_STRING' [all 2021-04-25 20:52:38.330371] 549 | ASM_OUTPUT_DEBUG_STRING (asm_out_file, string); [all 2021-04-25 20:52:38.330447] | ^~~~~~~~~~~~~~~~~~~~~~~ [all 2021-04-25 20:52:38.331123] ../.././gcc/vmsdbgout.c:369:28: error: ISO C++17 does not allow 'register' storage class specifier [-Werror=register] [all 2021-04-25 20:52:38.331292] 369 | register const char *p = (P); \ [all 2021-04-25 20:52:38.331370] | ^ [all 2021-04-25 20:52:38.331439] ../.././gcc/vmsdbgout.c:549:7: note: in expansion of macro 'ASM_OUTPUT_DEBUG_STRING' [all 2021-04-25 20:52:38.331505] 549 | ASM_OUTPUT_DEBUG_STRING (asm_out_file, string); [all 2021-04-25 20:52:38.331577] | ^~~~~~~~~~~~~~~~~~~~~~~ [all 2021-04-25 20:52:38.331953] ../.././gcc/vmsdbgout.c:370:20: error: ISO C++17 does not allow 'register' storage class specifier [-Werror=register] [all 2021-04-25 20:52:38.332102] 370 | register int i; \ [all 2021-04-25 20:52:38.332181] | ^ [all 2021-04-25 20:52:38.332287] ../.././gcc/vmsdbgout.c:549:7: note: in expansion of macro 'ASM_OUTPUT_DEBUG_STRING' [all 2021-04-25 20:52:38.332364] 549 | ASM_OUTPUT_DEBUG_STRING (asm_out_file, string); [all 2021-04-25 20:52:38.332437] | ^~~~~~~~~~~~~~~~~~~~~~~ [all 2021-04-25 20:52:38.333260] ../.././gcc/vmsdbgout.c:374:24: error: ISO C++17 does not allow 'register' storage class specifier [-Werror=register] [all 2021-04-25 20:52:38.333448] 374 | register int c = p[i]; \ [all 2021-04-25 20:52:38.333528] | ^ [all 2021-04-25 20:52:38.333600] ../.././gcc/vmsdbgout.c:549:7: note: in expansion of macro 'ASM_OUTPUT_DEBUG_STRING' [all 2021-04-25 20:52:38.333668] 549 | ASM_OUTPUT_DEBUG_STRING (asm_out_file, string); [all 2021-04-25 20:52:38.333734] | ^~~~~~~~~~~~~~~~~~~~~~~ [all 2021-04-25 20:52:38.386301] ../.././gcc/vmsdbgout.c: At global scope: [all 2021-04-25 20:52:38.386507] ../.././gcc/vmsdbgout.c:1232:42: error: ISO C++17 does not allow 'register' storage class specifier [-Werror=register] [all 2021-04-25 20:52:38.386595] 1232 | vmsdbgout_begin_block (register unsigned line, register unsigned blocknum) [all 2021-04-25 20:52:38.386663] | ^~~~ [all 2021-04-25 20:52:38.387009] ../.././gcc/vmsdbgout.c:1232:66: error: ISO C++17 does not allow 'register' storage class specifier [-Werror=register] [all 2021-04-25 20:52:38.387164] 1232 | vmsdbgout_begin_block (register unsigned line, register unsigned blocknum) [all 2021-04-25 20:52:38.387248] | ^~~~~~~~ [all 2021-04-25 20:52:38.388728] ../.././gcc/vmsdbgout.c:1245:40: error: ISO C++17 does not allow 'register' storage class specifier [-Werror=register] [all 2021-04-25 20:52:38.388939] 1245 | vmsdbgout_end_block (register unsigned line, register unsigned blocknum) [all 2021-04-25 20:52:38.389046] | ^~~~ [all 2021-04-25 20:52:38.389321] ../.././gcc/vmsdbgout.c:1245:64: error: ISO C++17 does not allow 'register' storage class specifier [-Werror=register] [all 2021-04-25 20:52:38.389477] 1245 | vmsdbgout_end_block (register unsigned line, register unsigned blocknum) [all 2021-04-25 20:52:38.389570] | ^~~~~~~~ [all 2021-04-25 20:52:38.393827] ../.././gcc/vmsdbgout.c: In function 'unsigned int lookup_filename(const char*)': [all 2021-04-25 20:52:38.394039] ../.././gcc/vmsdbgout.c:1318:18: error: ISO C++17 does not allow 'register' storage class specifier [-Werror=register] [all 2021-04-25 20:52:38.394139] 1318 | register char *fn; [all 2021-04-25 20:52:38.394232] | ^~ [all 2021-04-25 20:52:38.394511] ../.././gcc/vmsdbgout.c:1319:21: error: ISO C++17 does not allow 'register' storage class specifier [-Werror=register] [all 2021-04-25 20:52:38.394649] 1319 | register unsigned i; [all 2021-04-25 20:52:38.394732] | ^ [all 2021-04-25 20:52:38.428067] ../.././gcc/vmsdbgout.c: At global scope: [all 2021-04-25 20:52:38.428347] ../.././gcc/vmsdbgout.c:1408:42: error: ISO C++17 does not allow 'register' storage class specifier [-Werror=register] [all 2021-04-25 20:52:38.428445] 1408 | vmsdbgout_source_line (register unsigned line, unsigned int column, [all 2021-04-25 20:52:38.428527] | ^~~~ [all 2021-04-25 20:52:38.428917] ../.././gcc/vmsdbgout.c:1409:45: error: ISO C++17 does not allow 'register' storage class specifier [-Werror=register] [all 2021-04-25 20:52:38.429064] 1409 | register const char *filename, [all 2021-04-25 20:52:38.429138] | ^~~~~~~~ [all 2021-04-25 20:52:42.562373] cc1plus: all warnings being treated as errors [all 2021-04-25 20:52:42.600013] make[1]: *** [Makefile:1143: vmsdbgout.o] Error 1 [all 2021-04-25 20:52:42.815235] make[1]: Leaving directory '/var/lib/laminar/run/gcc-ia64-hp-vms/8/gcc/host-x86_64-pc-linux-gnu/gcc' [all 2021-04-25 20:52:43.045608] make: *** [Makefile:4427: all-gcc] Error 2