[Bug debug/100255] New: Crosscompiler to ia64-hp-vms: vmsdbgout.c:368:20: error: ISO C++17 does not allow 'register' storage class specifier [-Werror=register]

jbglaw@lug-owl.de gcc-bugzilla@gcc.gnu.org
Sun Apr 25 20:29:02 GMT 2021


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: jbglaw@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


More information about the Gcc-bugs mailing list