https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115874

            Bug ID: 115874
           Summary: sh.c appears to be missing include of stdio.h
           Product: gcc
           Version: 13.3.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: joel at gcc dot gnu.org
  Target Milestone: ---

Target: sh-rtems6
Host: Cygwin

We have not seen this failure on Linux. stdio.h must be implicitly included.
This is the error on Cygwin. Is adding an include <stdio.h> the right solution?

g++ -O2 -g -pipe
-I/home/jrs007/rtems-work/rtems-source-builder/rtems/build/tmp/sb-1049590/tools/rtems-default-tools/tmp/mkefs/include
-I/home/jrs007/rtems-work/rtems-source-builder/rtems/build/tmp/sb-1049590-internal/include
 -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    -DHAVE_CONFIG_H -I. -Ianalyzer
-I../../gcc-13.3.0/gcc -I../../gcc-13.3.0/gcc/analyzer
-I../../gcc-13.3.0/gcc/../include  -I../../gcc-13.3.0/gcc/../libcpp/include
-I../../gcc-13.3.0/gcc/../libcody
-I/home/jrs007/rtems-work/rtems-source-builder/rtems/build/sh-rtems6-gcc-13.3.0-newlib-1ed1516-x86_64-pc-cygwin-1/gcc-13.3.0/mpc/src
 -I../../gcc-13.3.0/gcc/../libdecnumber
-I../../gcc-13.3.0/gcc/../libdecnumber/dpd -I../libdecnumber
-I../../gcc-13.3.0/gcc/../libbacktrace
-I/home/jrs007/rtems-work/rtems-source-builder/rtems/build/sh-rtems6-gcc-13.3.0-newlib-1ed1516-x86_64-pc-cygwin-1/build/./isl/include
-I/home/jrs007/rtems-work/rtems-source-builder/rtems/build/sh-rtems6-gcc-13.3.0-newlib-1ed1516-x86_64-pc-cygwin-1/gcc-13.3.0/isl/include
 -o analyzer/call-string.o -MT analyzer/call-string.o -MMD -MP -MF
analyzer/.deps/call-string.TPo ../../gcc-13.3.0/gcc/analyzer/call-string.cc
In file included from ../../gcc-13.3.0/gcc/config/sh/sh.cc:28:
../../gcc-13.3.0/gcc/config/sh/sh.cc: In function ‘void sh_print_operand(FILE*,
rtx, int)’:
../../gcc-13.3.0/gcc/system.h:150:33: error: ‘fputs_unlocked’ was not declared
in this scope; did you mean ‘fputc_unlocked’?
  150 | #  define fputs(String, Stream) fputs_unlocked (String, Stream)
      |                                 ^~~~~~~~~~~~~~
../../gcc-13.3.0/gcc/config/sh/sh.cc:1180:11: note: in expansion of macro
‘fputs’
 1180 |           fputs ("/u", stream);
      |           ^~~~~
../../gcc-13.3.0/gcc/system.h:150:33: error: ‘fputs_unlocked’ was not declared
in this scope; did you mean ‘fputc_unlocked’?
  150 | #  define fputs(String, Stream) fputs_unlocked (String, Stream)
      |                                 ^~~~~~~~~~~~~~
../../gcc-13.3.0/gcc/config/sh/sh.cc:1186:11: note: in expansion of macro
‘fputs’
 1186 |           fputs ("\t! target: ", stream);
      |           ^~~~~
../../gcc-13.3.0/gcc/system.h:150:33: error: ‘fputs_unlocked’ was not declared
in this scope; did you mean ‘fputc_unlocked’?
  150 | #  define fputs(String, Stream) fputs_unlocked (String, Stream)
      |                                 ^~~~~~~~~~~~~~
../../gcc-13.3.0/gcc/config/sh/sh.cc:1203:11: note: in expansion of macro
‘fputs’
 1203 |           fputs (reg_names[regno], (stream));
      |           ^~~~~
../../gcc-13.3.0/gcc/system.h:150:33: error: ‘fputs_unlocked’ was not declared
in this scope; did you mean ‘fputc_unlocked’?
  150 | #  define fputs(String, Stream) fputs_unlocked (String, Stream)
      |                                 ^~~~~~~~~~~~~~
../../gcc-13.3.0/gcc/config/sh/sh.cc:1230:11: note: in expansion of macro
‘fputs’
 1230 |           fputs (reg_names[regno], (stream));
      |           ^~~~~
../../gcc-13.3.0/gcc/system.h:150:33: error: ‘fputs_unlocked’ was not declared
in this scope; did you mean ‘fputc_unlocked’?
  150 | #  define fputs(String, Stream) fputs_unlocked (String, Stream)
      |                                 ^~~~~~~~~~~~~~
../../gcc-13.3.0/gcc/config/sh/sh.cc:1257:11: note: in expansion of macro
‘fputs’
 1257 |           fputs (reg_names[REGNO (x) + 1], (stream));
      |           ^~~~~
../../gcc-13.3.0/gcc/system.h:150:33: error: ‘fputs_unlocked’ was not declared
in this scope; did you mean ‘fputc_unlocked’?
  150 | #  define fputs(String, Stream) fputs_unlocked (String, Stream)
      |                                 ^~~~~~~~~~~~~~
../../gcc-13.3.0/gcc/config/sh/sh.cc:1290:21: note: in expansion of macro
‘fputs’
 1290 |         case PLUS:  fputs ("add", stream); break;
      |                     ^~~~~
../../gcc-13.3.0/gcc/system.h:150:33: error: ‘fputs_unlocked’ was not declared
in this scope; did you mean ‘fputc_unlocked’?
  150 | #  define fputs(String, Stream) fputs_unlocked (String, Stream)
      |                                 ^~~~~~~~~~~~~~
../../gcc-13.3.0/gcc/config/sh/sh.cc:1309:28: note: in expansion of macro
‘fputs’
 1309 |             case E_QImode: fputs (".b", stream); break;
      |                            ^~~~~
../../gcc-13.3.0/gcc/system.h:150:33: error: ‘fputs_unlocked’ was not declared
in this scope; did you mean ‘fputc_unlocked’?
  150 | #  define fputs(String, Stream) fputs_unlocked (String, Stream)
      |                                 ^~~~~~~~~~~~~~
../../gcc-13.3.0/gcc/config/sh/sh.cc:1329:11: note: in expansion of macro
‘fputs’
 1329 |           fputs (", 0", stream);
      |           ^~~~~
../../gcc-13.3.0/gcc/system.h:150:33: error: ‘fputs_unlocked’ was not declared
in this scope; did you mean ‘fputc_unlocked’?
  150 | #  define fputs(String, Stream) fputs_unlocked (String, Stream)
      |                                 ^~~~~~~~~~~~~~
../../gcc-13.3.0/gcc/config/sh/sh.cc:1453:13: note: in expansion of macro
‘fputs’
 1453 |             fputs (reg_names[regno], (stream));
      |             ^~~~~
../../gcc-13.3.0/gcc/config/sh/sh.cc: In function ‘bool
sh_asm_output_addr_const_extra(FILE*, rtx)’:
../../gcc-13.3.0/gcc/system.h:150:33: error: ‘fputs_unlocked’ was not declared
in this scope; did you mean ‘fputc_unlocked’?
  150 | #  define fputs(String, Stream) fputs_unlocked (String, Stream)
      |                                 ^~~~~~~~~~~~~~
../../gcc-13.3.0/gcc/config/sh/sh.cc:1490:11: note: in expansion of macro
‘fputs’
 1490 |           fputs ("@GOT", file);
      |           ^~~~~
../../gcc-13.3.0/gcc/config/sh/sh.cc: In function ‘void sh_file_start()’:
../../gcc-13.3.0/gcc/system.h:150:33: error: ‘fputs_unlocked’ was not declared
in this scope; did you mean ‘fputc_unlocked’?
  150 | #  define fputs(String, Stream) fputs_unlocked (String, Stream)
      |                                 ^~~~~~~~~~~~~~
../../gcc-13.3.0/gcc/config/sh/sh.cc:2834:5: note: in expansion of macro
‘fputs’
 2834 |     fputs ("\t.little\n", asm_out_file);
      |     ^~~~~
../../gcc-13.3.0/gcc/config/sh/sh.cc: In function ‘bool
sh_assemble_integer(rtx, unsigned int, int)’:
../../gcc-13.3.0/gcc/system.h:150:33: error: ‘fputs_unlocked’ was not declared
in this scope; did you mean ‘fputc_unlocked’?
  150 | #  define fputs(String, Stream) fputs_unlocked (String, Stream)
      |                                 ^~~~~~~~~~~~~~
../../gcc-13.3.0/gcc/config/sh/sh.cc:2847:7: note: in expansion of macro
‘fputs’
 2847 |       fputs ("\t.long\t", asm_out_file);
      |       ^~~~~
g++ -O2 -g -pipe
-I/home/jrs007/rtems-work/rtems-source-builder/rtems/build/tmp/sb-1049590/tools/rtems-default-tools/tmp/mkefs/include
-I/home/jrs007/rtems-work/rtems-source-builder/rtems/build/tmp/sb-1049590-internal/include
 -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    -DHAVE_CONFIG_H -I. -Ianalyzer
-I../../gcc-13.3.0/gcc -I../../gcc-13.3.0/gcc/analyzer
-I../../gcc-13.3.0/gcc/../include  -I../../gcc-13.3.0/gcc/../libcpp/include
-I../../gcc-13.3.0/gcc/../libcody
-I/home/jrs007/rtems-work/rtems-source-builder/rtems/build/sh-rtems6-gcc-13.3.0-newlib-1ed1516-x86_64-pc-cygwin-1/gcc-13.3.0/mpc/src
 -I../../gcc-13.3.0/gcc/../libdecnumber
-I../../gcc-13.3.0/gcc/../libdecnumber/dpd -I../libdecnumber
-I../../gcc-13.3.0/gcc/../libbacktrace
-I/home/jrs007/rtems-work/rtems-source-builder/rtems/build/sh-rtems6-gcc-13.3.0-newlib-1ed1516-x86_64-pc-cygwin-1/build/./isl/include
-I/home/jrs007/rtems-work/rtems-source-builder/rtems/build/sh-rtems6-gcc-13.3.0-newlib-1ed1516-x86_64-pc-cygwin-1/gcc-13.3.0/isl/include
 -o analyzer/call-summary.o -MT analyzer/call-summary.o -MMD -MP -MF
analyzer/.deps/call-summary.TPo ../../gcc-13.3.0/gcc/analyzer/call-summary.cc
g++ -O2 -g -pipe
-I/home/jrs007/rtems-work/rtems-source-builder/rtems/build/tmp/sb-1049590/tools/rtems-default-tools/tmp/mkefs/include
-I/home/jrs007/rtems-work/rtems-source-builder/rtems/build/tmp/sb-1049590-internal/include
 -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    -DHAVE_CONFIG_H -I. -Ianalyzer
-I../../gcc-13.3.0/gcc -I../../gcc-13.3.0/gcc/analyzer
-I../../gcc-13.3.0/gcc/../include  -I../../gcc-13.3.0/gcc/../libcpp/include
-I../../gcc-13.3.0/gcc/../libcody
-I/home/jrs007/rtems-work/rtems-source-builder/rtems/build/sh-rtems6-gcc-13.3.0-newlib-1ed1516-x86_64-pc-cygwin-1/gcc-13.3.0/mpc/src
 -I../../gcc-13.3.0/gcc/../libdecnumber
-I../../gcc-13.3.0/gcc/../libdecnumber/dpd -I../libdecnumber
-I../../gcc-13.3.0/gcc/../libbacktrace
-I/home/jrs007/rtems-work/rtems-source-builder/rtems/build/sh-rtems6-gcc-13.3.0-newlib-1ed1516-x86_64-pc-cygwin-1/build/./isl/include
-I/home/jrs007/rtems-work/rtems-source-builder/rtems/build/sh-rtems6-gcc-13.3.0-newlib-1ed1516-x86_64-pc-cygwin-1/gcc-13.3.0/isl/include
 -o analyzer/checker-event.o -MT analyzer/checker-event.o -MMD -MP -MF
analyzer/.deps/checker-event.TPo ../../gcc-13.3.0/gcc/analyzer/checker-event.cc
g++ -O2 -g -pipe
-I/home/jrs007/rtems-work/rtems-source-builder/rtems/build/tmp/sb-1049590/tools/rtems-default-tools/tmp/mkefs/include
-I/home/jrs007/rtems-work/rtems-source-builder/rtems/build/tmp/sb-1049590-internal/include
 -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    -DHAVE_CONFIG_H -I. -Ianalyzer
-I../../gcc-13.3.0/gcc -I../../gcc-13.3.0/gcc/analyzer
-I../../gcc-13.3.0/gcc/../include  -I../../gcc-13.3.0/gcc/../libcpp/include
-I../../gcc-13.3.0/gcc/../libcody
-I/home/jrs007/rtems-work/rtems-source-builder/rtems/build/sh-rtems6-gcc-13.3.0-newlib-1ed1516-x86_64-pc-cygwin-1/gcc-13.3.0/mpc/src
 -I../../gcc-13.3.0/gcc/../libdecnumber
-I../../gcc-13.3.0/gcc/../libdecnumber/dpd -I../libdecnumber
-I../../gcc-13.3.0/gcc/../libbacktrace
-I/home/jrs007/rtems-work/rtems-source-builder/rtems/build/sh-rtems6-gcc-13.3.0-newlib-1ed1516-x86_64-pc-cygwin-1/build/./isl/include
-I/home/jrs007/rtems-work/rtems-source-builder/rtems/build/sh-rtems6-gcc-13.3.0-newlib-1ed1516-x86_64-pc-cygwin-1/gcc-13.3.0/isl/include
 -o analyzer/checker-path.o -MT analyzer/checker-path.o -MMD -MP -MF
analyzer/.deps/checker-path.TPo ../../gcc-13.3.0/gcc/analyzer/checker-path.cc
g++ -O2 -g -pipe
-I/home/jrs007/rtems-work/rtems-source-builder/rtems/build/tmp/sb-1049590/tools/rtems-default-tools/tmp/mkefs/include
-I/home/jrs007/rtems-work/rtems-source-builder/rtems/build/tmp/sb-1049590-internal/include
 -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    -DHAVE_CONFIG_H -I. -Ianalyzer
-I../../gcc-13.3.0/gcc -I../../gcc-13.3.0/gcc/analyzer
-I../../gcc-13.3.0/gcc/../include  -I../../gcc-13.3.0/gcc/../libcpp/include
-I../../gcc-13.3.0/gcc/../libcody
-I/home/jrs007/rtems-work/rtems-source-builder/rtems/build/sh-rtems6-gcc-13.3.0-newlib-1ed1516-x86_64-pc-cygwin-1/gcc-13.3.0/mpc/src
 -I../../gcc-13.3.0/gcc/../libdecnumber
-I../../gcc-13.3.0/gcc/../libdecnumber/dpd -I../libdecnumber
-I../../gcc-13.3.0/gcc/../libbacktrace
-I/home/jrs007/rtems-work/rtems-source-builder/rtems/build/sh-rtems6-gcc-13.3.0-newlib-1ed1516-x86_64-pc-cygwin-1/build/./isl/include
-I/home/jrs007/rtems-work/rtems-source-builder/rtems/build/sh-rtems6-gcc-13.3.0-newlib-1ed1516-x86_64-pc-cygwin-1/gcc-13.3.0/isl/include
 -o analyzer/complexity.o -MT analyzer/complexity.o -MMD -MP -MF
analyzer/.deps/complexity.TPo ../../gcc-13.3.0/gcc/analyzer/complexity.cc
make[2]: *** [Makefile:2445: sh.o] Error 1
make[2]: *** Waiting for unfinished jobs....
../../gcc-13.3.0/gcc/analyzer/call-summary.cc: In member function ‘void
ana::call_summary::get_user_facing_desc(pretty_printer*) const’:
../../gcc-13.3.0/gcc/analyzer/call-summary.cc:99:40: warning: unknown
conversion type character ‘E’ in format [-Wformat=]
   99 |                                "when %qE returns pointer"
      |                                        ^
../../gcc-13.3.0/gcc/analyzer/call-summary.cc:99:32: warning: too many
arguments for format [-Wformat-extra-args]
   99 |                                "when %qE returns pointer"
      |                                ^~~~~~~~~~~~~~~~~~~~~~~~~~
  100 |                                " to heap-allocated buffer",
      |                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../gcc-13.3.0/gcc/analyzer/call-summary.cc:113:42: warning: unknown
conversion type character ‘E’ in format [-Wformat=]
  113 |                   pp_printf (pp, "when %qE returns NULL", fndecl);
      |                                          ^
../../gcc-13.3.0/gcc/analyzer/call-summary.cc:113:34: warning: too many
arguments for format [-Wformat-extra-args]
  113 |                   pp_printf (pp, "when %qE returns NULL", fndecl);
      |                                  ^~~~~~~~~~~~~~~~~~~~~~~
../../gcc-13.3.0/gcc/analyzer/call-summary.cc:115:42: warning: unknown
conversion type character ‘E’ in format [-Wformat=]
  115 |                   pp_printf (pp, "when %qE returns %qE", fndecl, cst);
      |                                          ^
../../gcc-13.3.0/gcc/analyzer/call-summary.cc:115:54: warning: unknown
conversion type character ‘E’ in format [-Wformat=]
  115 |                   pp_printf (pp, "when %qE returns %qE", fndecl, cst);
      |                                                      ^
../../gcc-13.3.0/gcc/analyzer/call-summary.cc:115:34: warning: too many
arguments for format [-Wformat-extra-args]
  115 |                   pp_printf (pp, "when %qE returns %qE", fndecl, cst);
      |                                  ^~~~~~~~~~~~~~~~~~~~~~
../../gcc-13.3.0/gcc/analyzer/call-summary.cc:123:26: warning: unknown
conversion type character ‘E’ in format [-Wformat=]
  123 |   pp_printf (pp, "when %qE returns", fndecl);
      |                          ^
../../gcc-13.3.0/gcc/analyzer/call-summary.cc:123:18: warning: too many
arguments for format [-Wformat-extra-args]
  123 |   pp_printf (pp, "when %qE returns", fndecl);
      |                  ^~~~~~~~~~~~~~~~~~
rm gcc.pod
make[2]: Leaving directory
'/home/jrs007/rtems-work/rtems-source-builder/rtems/build/sh-rtems6-gcc-13.3.0-newlib-1ed1516-x86_64-pc-cygwin-1/build/gcc'
make[1]: *** [Makefile:4629: all-gcc] Error 2
make[1]: Leaving directory
'/home/jrs007/rtems-work/rtems-source-builder/rtems/build/sh-rtems6-gcc-13.3.0-newlib-1ed1516-x86_64-pc-cygwin-1/build'
make: *** [Makefile:1045: all] Error 2
make: Leaving directory
'/home/jrs007/rtems-work/rtems-source-builder/rtems/build/sh-rtems6-gcc-13.3.0-newlib-1ed1516-x86_64-pc-cygwin-1/build'
shell cmd failed: sh -ex 
/home/jrs007/rtems-work/rtems-source-builder/rtems/build/sh-rtems6-gcc-13.3.0-newlib-1ed1516-x86_64-pc-cygwin-1/do-build
error: building sh-rtems6-gcc-13.3.0-newlib-1ed1516-x86_64-pc-cygwin-1

Reply via email to