Warnings

From vice-emu
Revision as of 13:02, 1 February 2022 by Compyx (talk | contribs) (Add warnings triggered by -flto)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

GCC

  • Compyx, Linux x64 Gtk3, r41717, GCC 10.2.1 with LTO (-flto)

Running `./configure CFLAGS="-O3 -g -flto" CXXFLAGS="-O3 -g -flto ...` produces some interesting additional warnings over non-LTO builds:

...
Making all in tools
Making all in cartconv
../../../../vice/src/tools/cartconv/c64-saver.c:20:22: warning: type of ‘input_filenames’ does not match original declaration [-Wlto-type-mismatch]
   20 | extern unsigned char input_filenames;
      |                      ^
../../../../vice/src/tools/cartconv/cartconv.c:76:5: note: type ‘int’ should match type ‘unsigned char’
   76 | int input_filenames = 0;
      |     ^
../../../../vice/src/tools/cartconv/cartconv.c:76:5: note: ‘input_filenames’ was previously declared here
../../../../vice/src/tools/cartconv/crt.c:18:14: warning: type of ‘output_filename’ does not match original declaration [-Wlto-type-mismatch]
   18 | extern char *output_filename;
      |              ^
../../../../vice/src/tools/cartconv/cartconv.c:73:7: note: ‘output_filename’ was previously declared here
   73 | char *output_filename[MAX_OUTPUT_FILES];
      |       ^
Making all in petcat
c64/../../../vice/src/c64/c64-snapshot.c: In function ‘c64_snapshot_read’:
tapeport/../../../vice/src/tapeport/tapeport.c:658:9: warning: ‘MEM[(int *)&tmp_tapeport_device + 4B]’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  658 |         tapeport_set_device(TAPEPORT_PORT_2, tmp_tapeport_device[TAPEPORT_PORT_2]);
      |         ^
tapeport/../../../vice/src/tapeport/tapeport.c:623:9: note: ‘MEM[(int *)&tmp_tapeport_device + 4B]’ was declared here
  623 |     int tmp_tapeport_device[2];
      |         ^
c64/../../../vice/src/c64/c64-snapshot.c: In function ‘c64_snapshot_read’:
tapeport/../../../vice/src/tapeport/tapeport.c:658:9: warning: ‘MEM[(int *)&tmp_tapeport_device + 4B]’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  658 |         tapeport_set_device(TAPEPORT_PORT_2, tmp_tapeport_device[TAPEPORT_PORT_2]);
      |         ^
tapeport/../../../vice/src/tapeport/tapeport.c:623:9: note: ‘MEM[(int *)&tmp_tapeport_device + 4B]’ was declared here
  623 |     int tmp_tapeport_device[2];
      |         ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc: In function ‘vte_terminal_accessible_update_private_data_if_needed’:
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:336:34: warning: ‘ccol’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  336 |             ((attrs.row == crow) && (attrs.column < ccol))) {
      |                                  ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:202:10: note: ‘ccol’ was declared here
  202 |     long ccol, crow;
      |          ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:335:32: warning: ‘crow’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  335 |         if ((attrs.row < crow) ||
      |                                ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:202:16: note: ‘crow’ was declared here
  202 |     long ccol, crow;
      |                ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc: In member function ‘_ZN18VteTerminalPrivate11ensure_fontEv.part.0’:
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5823:16: warning: ‘cell_width’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5823 |     cell_width = MAX(cell_width, 1);
      |                ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5890:17: note: ‘cell_width’ was declared here
 5890 |             int cell_width, cell_height;
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5824:17: warning: ‘cell_height’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5824 |     cell_height = MAX(cell_height, 2);
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5890:29: note: ‘cell_height’ was declared here
 5890 |             int cell_width, cell_height;
      |                             ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5825:17: warning: ‘char_ascent’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5825 |     char_ascent = MAX(char_ascent, 1);
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5891:17: note: ‘char_ascent’ was declared here
 5891 |             int char_ascent, char_descent;
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5826:18: warning: ‘char_descent’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5826 |     char_descent = MAX(char_descent, 1);
      |                  ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5891:30: note: ‘char_descent’ was declared here
 5891 |             int char_ascent, char_descent;
      |                              ^
printerdrv/../../../vice/src/printerdrv/output-text.c: In function ‘output_text_open’:
printerdrv/../../../vice/src/printerdrv/output-text.c:169:16: warning: ‘fd_wr’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  169 |         return fdopen(fd_wr, MODE_WRITE);
      |                ^
printerdrv/../../../vice/src/printerdrv/output-text.c:163:20: note: ‘fd_wr’ was declared here
  163 |         int fd_rd, fd_wr;
      |                    ^
printerdrv/../../../vice/src/printerdrv/output-text.c:168:9: warning: ‘fd_rd’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  168 |         close(fd_rd);   /* We only want to write to the process */
      |         ^
printerdrv/../../../vice/src/printerdrv/output-text.c:163:13: note: ‘fd_rd’ was declared here
  163 |         int fd_rd, fd_wr;
      |             ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c: In function ‘vice_opengl_on_ui_frame_clock’:
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:538:9: warning: ‘last_frame_uniform’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  538 |         glUniform1i(last_frame_uniform, 0);
      |         ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:490:12: note: ‘last_frame_uniform’ was declared here
  490 |     GLuint last_frame_uniform;
      |            ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc: In function ‘vte_terminal_accessible_update_private_data_if_needed’:
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:336:34: warning: ‘ccol’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  336 |             ((attrs.row == crow) && (attrs.column < ccol))) {
      |                                  ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:202:10: note: ‘ccol’ was declared here
  202 |     long ccol, crow;
      |          ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:335:32: warning: ‘crow’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  335 |         if ((attrs.row < crow) ||
      |                                ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:202:16: note: ‘crow’ was declared here
  202 |     long ccol, crow;
      |                ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc: In member function ‘_ZN18VteTerminalPrivate11ensure_fontEv.part.0’:
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5823:16: warning: ‘cell_width’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5823 |     cell_width = MAX(cell_width, 1);
      |                ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5890:17: note: ‘cell_width’ was declared here
 5890 |             int cell_width, cell_height;
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5824:17: warning: ‘cell_height’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5824 |     cell_height = MAX(cell_height, 2);
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5890:29: note: ‘cell_height’ was declared here
 5890 |             int cell_width, cell_height;
      |                             ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5825:17: warning: ‘char_ascent’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5825 |     char_ascent = MAX(char_ascent, 1);
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5891:17: note: ‘char_ascent’ was declared here
 5891 |             int char_ascent, char_descent;
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5826:18: warning: ‘char_descent’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5826 |     char_descent = MAX(char_descent, 1);
      |                  ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5891:30: note: ‘char_descent’ was declared here
 5891 |             int char_ascent, char_descent;
      |                              ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c: In function ‘create_shader_program.constprop’:
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:780:12: warning: ‘fragment_shader’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  780 |     frag = create_shader(GL_FRAGMENT_SHADER, fragment_shader);
      |            ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:732:11: note: ‘fragment_shader’ was declared here
  732 |     char *fragment_shader;
      |           ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:779:12: warning: ‘vertex_shader’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  779 |     vert = create_shader(GL_VERTEX_SHADER, vertex_shader);
      |            ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:731:11: note: ‘vertex_shader’ was declared here
  731 |     char *vertex_shader;
      |           ^
c128/../../../vice/src/c128/c128-snapshot.c: In function ‘c128_snapshot_read’:
tapeport/../../../vice/src/tapeport/tapeport.c:658:9: warning: ‘MEM[(int *)&tmp_tapeport_device + 4B]’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  658 |         tapeport_set_device(TAPEPORT_PORT_2, tmp_tapeport_device[TAPEPORT_PORT_2]);
      |         ^
tapeport/../../../vice/src/tapeport/tapeport.c:623:9: note: ‘MEM[(int *)&tmp_tapeport_device + 4B]’ was declared here
  623 |     int tmp_tapeport_device[2];
      |         ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c: In function ‘vice_opengl_on_ui_frame_clock’:
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:538:9: warning: ‘last_frame_uniform’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  538 |         glUniform1i(last_frame_uniform, 0);
      |         ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:490:12: note: ‘last_frame_uniform’ was declared here
  490 |     GLuint last_frame_uniform;
      |            ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c: In function ‘vice_opengl_on_ui_frame_clock’:
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:538:9: warning: ‘last_frame_uniform’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  538 |         glUniform1i(last_frame_uniform, 0);
      |         ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:490:12: note: ‘last_frame_uniform’ was declared here
  490 |     GLuint last_frame_uniform;
      |            ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c: In function ‘vice_opengl_on_ui_frame_clock’:
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:538:9: warning: ‘last_frame_uniform’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  538 |         glUniform1i(last_frame_uniform, 0);
      |         ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:490:12: note: ‘last_frame_uniform’ was declared here
  490 |     GLuint last_frame_uniform;
      |            ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc: In function ‘vte_terminal_accessible_update_private_data_if_needed’:
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:336:34: warning: ‘ccol’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  336 |             ((attrs.row == crow) && (attrs.column < ccol))) {
      |                                  ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:202:10: note: ‘ccol’ was declared here
  202 |     long ccol, crow;
      |          ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:335:32: warning: ‘crow’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  335 |         if ((attrs.row < crow) ||
      |                                ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:202:16: note: ‘crow’ was declared here
  202 |     long ccol, crow;
      |                ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc: In function ‘vte_terminal_accessible_update_private_data_if_needed’:
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:336:34: warning: ‘ccol’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  336 |             ((attrs.row == crow) && (attrs.column < ccol))) {
      |                                  ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:202:10: note: ‘ccol’ was declared here
  202 |     long ccol, crow;
      |          ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:335:32: warning: ‘crow’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  335 |         if ((attrs.row < crow) ||
      |                                ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:202:16: note: ‘crow’ was declared here
  202 |     long ccol, crow;
      |                ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc: In member function ‘_ZN18VteTerminalPrivate11ensure_fontEv.part.0’:
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5823:16: warning: ‘cell_width’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5823 |     cell_width = MAX(cell_width, 1);
      |                ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5890:17: note: ‘cell_width’ was declared here
 5890 |             int cell_width, cell_height;
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5824:17: warning: ‘cell_height’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5824 |     cell_height = MAX(cell_height, 2);
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5890:29: note: ‘cell_height’ was declared here
 5890 |             int cell_width, cell_height;
      |                             ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5825:17: warning: ‘char_ascent’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5825 |     char_ascent = MAX(char_ascent, 1);
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5891:17: note: ‘char_ascent’ was declared here
 5891 |             int char_ascent, char_descent;
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5826:18: warning: ‘char_descent’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5826 |     char_descent = MAX(char_descent, 1);
      |                  ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5891:30: note: ‘char_descent’ was declared here
 5891 |             int char_ascent, char_descent;
      |                              ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc: In member function ‘_ZN18VteTerminalPrivate11ensure_fontEv.part.0’:
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5823:16: warning: ‘cell_width’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5823 |     cell_width = MAX(cell_width, 1);
      |                ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5890:17: note: ‘cell_width’ was declared here
 5890 |             int cell_width, cell_height;
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5824:17: warning: ‘cell_height’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5824 |     cell_height = MAX(cell_height, 2);
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5890:29: note: ‘cell_height’ was declared here
 5890 |             int cell_width, cell_height;
      |                             ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5825:17: warning: ‘char_ascent’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5825 |     char_ascent = MAX(char_ascent, 1);
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5891:17: note: ‘char_ascent’ was declared here
 5891 |             int char_ascent, char_descent;
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5826:18: warning: ‘char_descent’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5826 |     char_descent = MAX(char_descent, 1);
      |                  ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5891:30: note: ‘char_descent’ was declared here
 5891 |             int char_ascent, char_descent;
      |                              ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c: In function ‘create_shader_program.constprop’:
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:780:12: warning: ‘fragment_shader’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  780 |     frag = create_shader(GL_FRAGMENT_SHADER, fragment_shader);
      |            ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:732:11: note: ‘fragment_shader’ was declared here
  732 |     char *fragment_shader;
      |           ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:779:12: warning: ‘vertex_shader’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  779 |     vert = create_shader(GL_VERTEX_SHADER, vertex_shader);
      |            ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:731:11: note: ‘vertex_shader’ was declared here
  731 |     char *vertex_shader;
      |           ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc: In function ‘vte_terminal_accessible_update_private_data_if_needed’:
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:336:34: warning: ‘ccol’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  336 |             ((attrs.row == crow) && (attrs.column < ccol))) {
      |                                  ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:202:10: note: ‘ccol’ was declared here
  202 |     long ccol, crow;
      |          ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:335:32: warning: ‘crow’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  335 |         if ((attrs.row < crow) ||
      |                                ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:202:16: note: ‘crow’ was declared here
  202 |     long ccol, crow;
      |                ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c: In function ‘create_shader_program.constprop’:
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:780:12: warning: ‘fragment_shader’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  780 |     frag = create_shader(GL_FRAGMENT_SHADER, fragment_shader);
      |            ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:732:11: note: ‘fragment_shader’ was declared here
  732 |     char *fragment_shader;
      |           ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:779:12: warning: ‘vertex_shader’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  779 |     vert = create_shader(GL_VERTEX_SHADER, vertex_shader);
      |            ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:731:11: note: ‘vertex_shader’ was declared here
  731 |     char *vertex_shader;
      |           ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc: In member function ‘_ZN18VteTerminalPrivate11ensure_fontEv.part.0’:
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5823:16: warning: ‘cell_width’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5823 |     cell_width = MAX(cell_width, 1);
      |                ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5890:17: note: ‘cell_width’ was declared here
 5890 |             int cell_width, cell_height;
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5824:17: warning: ‘cell_height’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5824 |     cell_height = MAX(cell_height, 2);
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5890:29: note: ‘cell_height’ was declared here
 5890 |             int cell_width, cell_height;
      |                             ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5825:17: warning: ‘char_ascent’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5825 |     char_ascent = MAX(char_ascent, 1);
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5891:17: note: ‘char_ascent’ was declared here
 5891 |             int char_ascent, char_descent;
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5826:18: warning: ‘char_descent’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5826 |     char_descent = MAX(char_descent, 1);
      |                  ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5891:30: note: ‘char_descent’ was declared here
 5891 |             int char_ascent, char_descent;
      |                              ^
vic20/../../../vice/src/vic20/vic20-snapshot.c: In function ‘vic20_snapshot_read’:
tapeport/../../../vice/src/tapeport/tapeport.c:658:9: warning: ‘MEM[(int *)&tmp_tapeport_device + 4B]’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  658 |         tapeport_set_device(TAPEPORT_PORT_2, tmp_tapeport_device[TAPEPORT_PORT_2]);
      |         ^
tapeport/../../../vice/src/tapeport/tapeport.c:623:9: note: ‘MEM[(int *)&tmp_tapeport_device + 4B]’ was declared here
  623 |     int tmp_tapeport_device[2];
      |         ^
vic20/../../../vice/src/vic20/vic20memsnapshot.c:138:13: warning: ‘config’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  138 |     uint8_t config;
      |             ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c: In function ‘create_shader_program.constprop’:
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:780:12: warning: ‘fragment_shader’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  780 |     frag = create_shader(GL_FRAGMENT_SHADER, fragment_shader);
      |            ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:732:11: note: ‘fragment_shader’ was declared here
  732 |     char *fragment_shader;
      |           ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:779:12: warning: ‘vertex_shader’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  779 |     vert = create_shader(GL_VERTEX_SHADER, vertex_shader);
      |            ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:731:11: note: ‘vertex_shader’ was declared here
  731 |     char *vertex_shader;
      |           ^
plus4/../../../vice/src/plus4/plus4-snapshot.c: In function ‘plus4_snapshot_read’:
tapeport/../../../vice/src/tapeport/tapeport.c:658:9: warning: ‘MEM[(int *)&tmp_tapeport_device + 4B]’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  658 |         tapeport_set_device(TAPEPORT_PORT_2, tmp_tapeport_device[TAPEPORT_PORT_2]);
      |         ^
tapeport/../../../vice/src/tapeport/tapeport.c:623:9: note: ‘MEM[(int *)&tmp_tapeport_device + 4B]’ was declared here
  623 |     int tmp_tapeport_device[2];
      |         ^
cbm2/../../../vice/src/cbm2/cbm2-snapshot.c: In function ‘cbm2_snapshot_read’:
tapeport/../../../vice/src/tapeport/tapeport.c:658:9: warning: ‘MEM[(int *)&tmp_tapeport_device + 4B]’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  658 |         tapeport_set_device(TAPEPORT_PORT_2, tmp_tapeport_device[TAPEPORT_PORT_2]);
      |         ^
tapeport/../../../vice/src/tapeport/tapeport.c:623:9: note: ‘MEM[(int *)&tmp_tapeport_device + 4B]’ was declared here
  623 |     int tmp_tapeport_device[2];
      |         ^
cbm2/../../../vice/src/cbm2/cbm2memsnapshot.c:372:13: warning: ‘config’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  372 |     uint8_t config;
      |             ^
cbm2/../../../vice/src/cbm2/cbm2memsnapshot.c:159:21: warning: ‘hwconfig’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  159 |     uint8_t config, hwconfig;
      |                     ^
cbm2/../../../vice/src/cbm2/cbm2memsnapshot.c:159:13: warning: ‘config’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  159 |     uint8_t config, hwconfig;
      |             ^
cbm2/../../../vice/src/cbm2/cbm2memsnapshot.c:175:13: warning: ‘byte’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  175 |     memsize = ((int)byte) & 0xff;
      |             ^
cbm2/../../../vice/src/cbm2/cbm2memsnapshot.c:157:13: note: ‘byte’ was declared here
  157 |     uint8_t byte, vmajor, vminor;
      |             ^
pet/../../../vice/src/pet/petmemsnapshot.c: In function ‘mem_read_ram_snapshot_module’:
pet/../../../vice/src/pet/petmemsnapshot.c:318:38: warning: ‘b’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  318 |         SMR_B(m, &b); dongle6702.val = b;
      |                                      ^
pet/../../../vice/src/pet/petmemsnapshot.c:314:17: note: ‘b’ was declared here
  314 |         uint8_t b;
      |                 ^
pet/../../../vice/src/pet/petmemsnapshot.c:268:40: warning: ‘superpet’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  268 |             spetbank = (superpet >> 4) & 0x0f;
      |                                        ^
pet/../../../vice/src/pet/petmemsnapshot.c:208:53: note: ‘superpet’ was declared here
  208 |     uint8_t config, rconf, byte, memsize, conf8x96, superpet;
      |                                                     ^
pet/../../../vice/src/pet/petmemsnapshot.c:283:20: warning: ‘conf8x96’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  283 |     petmem_map_reg = conf8x96;
      |                    ^
pet/../../../vice/src/pet/petmemsnapshot.c:208:43: note: ‘conf8x96’ was declared here
  208 |     uint8_t config, rconf, byte, memsize, conf8x96, superpet;
      |                                           ^
pet/../../../vice/src/pet/petmemsnapshot.c:247:18: warning: ‘memsize’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  247 |     peti.ramSize = memsize;
      |                  ^
pet/../../../vice/src/pet/petmemsnapshot.c:208:34: note: ‘memsize’ was declared here
  208 |     uint8_t config, rconf, byte, memsize, conf8x96, superpet;
      |                                  ^
pet/../../../vice/src/pet/petmemsnapshot.c:238:19: warning: ‘byte’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  238 |     peti.kbd_type = byte;
      |                   ^
pet/../../../vice/src/pet/petmemsnapshot.c:208:28: note: ‘byte’ was declared here
  208 |     uint8_t config, rconf, byte, memsize, conf8x96, superpet;
      |                            ^
pet/../../../vice/src/pet/petmemsnapshot.c:208:13: warning: ‘config’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  208 |     uint8_t config, rconf, byte, memsize, conf8x96, superpet;
      |             ^
pet/../../../vice/src/pet/pet-snapshot.c: In function ‘pet_snapshot_read’:
tapeport/../../../vice/src/tapeport/tapeport.c:658:9: warning: ‘MEM[(int *)&tmp_tapeport_device + 4B]’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  658 |         tapeport_set_device(TAPEPORT_PORT_2, tmp_tapeport_device[TAPEPORT_PORT_2]);
      |         ^
tapeport/../../../vice/src/tapeport/tapeport.c:623:9: note: ‘MEM[(int *)&tmp_tapeport_device + 4B]’ was declared here
  623 |     int tmp_tapeport_device[2];
      |         ^
pet/../../../vice/src/piacore.c:450:13: warning: ‘byte’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  450 |     uint8_t byte;
      |             ^
pet/../../../vice/src/piacore.c:450:13: warning: ‘byte’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  450 |     uint8_t byte;
      |             ^
pet/../../../vice/src/piacore.c:450:13: warning: ‘byte’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  450 |     uint8_t byte;
      |             ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c: In function ‘vice_opengl_on_ui_frame_clock’:
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:538:9: warning: ‘last_frame_uniform’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  538 |         glUniform1i(last_frame_uniform, 0);
      |         ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:490:12: note: ‘last_frame_uniform’ was declared here
  490 |     GLuint last_frame_uniform;
      |            ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c: In function ‘vice_opengl_on_ui_frame_clock’:
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:538:9: warning: ‘last_frame_uniform’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  538 |         glUniform1i(last_frame_uniform, 0);
      |         ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:490:12: note: ‘last_frame_uniform’ was declared here
  490 |     GLuint last_frame_uniform;
      |            ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc: In function ‘vte_terminal_accessible_update_private_data_if_needed’:
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:336:34: warning: ‘ccol’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  336 |             ((attrs.row == crow) && (attrs.column < ccol))) {
      |                                  ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:202:10: note: ‘ccol’ was declared here
  202 |     long ccol, crow;
      |          ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:335:32: warning: ‘crow’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  335 |         if ((attrs.row < crow) ||
      |                                ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:202:16: note: ‘crow’ was declared here
  202 |     long ccol, crow;
      |                ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc: In member function ‘_ZN18VteTerminalPrivate11ensure_fontEv.part.0’:
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5823:16: warning: ‘cell_width’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5823 |     cell_width = MAX(cell_width, 1);
      |                ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5890:17: note: ‘cell_width’ was declared here
 5890 |             int cell_width, cell_height;
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5824:17: warning: ‘cell_height’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5824 |     cell_height = MAX(cell_height, 2);
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5890:29: note: ‘cell_height’ was declared here
 5890 |             int cell_width, cell_height;
      |                             ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5825:17: warning: ‘char_ascent’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5825 |     char_ascent = MAX(char_ascent, 1);
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5891:17: note: ‘char_ascent’ was declared here
 5891 |             int char_ascent, char_descent;
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5826:18: warning: ‘char_descent’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5826 |     char_descent = MAX(char_descent, 1);
      |                  ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5891:30: note: ‘char_descent’ was declared here
 5891 |             int char_ascent, char_descent;
      |                              ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc: In function ‘vte_terminal_accessible_update_private_data_if_needed’:
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:336:34: warning: ‘ccol’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  336 |             ((attrs.row == crow) && (attrs.column < ccol))) {
      |                                  ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:202:10: note: ‘ccol’ was declared here
  202 |     long ccol, crow;
      |          ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:335:32: warning: ‘crow’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  335 |         if ((attrs.row < crow) ||
      |                                ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:202:16: note: ‘crow’ was declared here
  202 |     long ccol, crow;
      |                ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc: In member function ‘_ZN18VteTerminalPrivate11ensure_fontEv.part.0’:
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5823:16: warning: ‘cell_width’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5823 |     cell_width = MAX(cell_width, 1);
      |                ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5890:17: note: ‘cell_width’ was declared here
 5890 |             int cell_width, cell_height;
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5824:17: warning: ‘cell_height’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5824 |     cell_height = MAX(cell_height, 2);
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5890:29: note: ‘cell_height’ was declared here
 5890 |             int cell_width, cell_height;
      |                             ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5825:17: warning: ‘char_ascent’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5825 |     char_ascent = MAX(char_ascent, 1);
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5891:17: note: ‘char_ascent’ was declared here
 5891 |             int char_ascent, char_descent;
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5826:18: warning: ‘char_descent’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5826 |     char_descent = MAX(char_descent, 1);
      |                  ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5891:30: note: ‘char_descent’ was declared here
 5891 |             int char_ascent, char_descent;
      |                              ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c: In function ‘create_shader_program.constprop’:
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:780:12: warning: ‘fragment_shader’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  780 |     frag = create_shader(GL_FRAGMENT_SHADER, fragment_shader);
      |            ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:732:11: note: ‘fragment_shader’ was declared here
  732 |     char *fragment_shader;
      |           ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:779:12: warning: ‘vertex_shader’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  779 |     vert = create_shader(GL_VERTEX_SHADER, vertex_shader);
      |            ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:731:11: note: ‘vertex_shader’ was declared here
  731 |     char *vertex_shader;
      |           ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c: In function ‘create_shader_program.constprop’:
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:780:12: warning: ‘fragment_shader’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  780 |     frag = create_shader(GL_FRAGMENT_SHADER, fragment_shader);
      |            ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:732:11: note: ‘fragment_shader’ was declared here
  732 |     char *fragment_shader;
      |           ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:779:12: warning: ‘vertex_shader’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  779 |     vert = create_shader(GL_VERTEX_SHADER, vertex_shader);
      |            ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:731:11: note: ‘vertex_shader’ was declared here
  731 |     char *vertex_shader;
      |           ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c: In function ‘vice_opengl_on_ui_frame_clock’:
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:538:9: warning: ‘last_frame_uniform’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  538 |         glUniform1i(last_frame_uniform, 0);
      |         ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:490:12: note: ‘last_frame_uniform’ was declared here
  490 |     GLuint last_frame_uniform;
      |            ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c: In function ‘vice_opengl_on_ui_frame_clock’:
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:538:9: warning: ‘last_frame_uniform’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  538 |         glUniform1i(last_frame_uniform, 0);
      |         ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:490:12: note: ‘last_frame_uniform’ was declared here
  490 |     GLuint last_frame_uniform;
      |            ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c: In function ‘vice_opengl_on_ui_frame_clock’:
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:538:9: warning: ‘last_frame_uniform’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  538 |         glUniform1i(last_frame_uniform, 0);
      |         ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:490:12: note: ‘last_frame_uniform’ was declared here
  490 |     GLuint last_frame_uniform;
      |            ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc: In function ‘vte_terminal_accessible_update_private_data_if_needed’:
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:336:34: warning: ‘ccol’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  336 |             ((attrs.row == crow) && (attrs.column < ccol))) {
      |                                  ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:202:10: note: ‘ccol’ was declared here
  202 |     long ccol, crow;
      |          ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:335:32: warning: ‘crow’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  335 |         if ((attrs.row < crow) ||
      |                                ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:202:16: note: ‘crow’ was declared here
  202 |     long ccol, crow;
      |                ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc: In function ‘vte_terminal_accessible_update_private_data_if_needed’:
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:336:34: warning: ‘ccol’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  336 |             ((attrs.row == crow) && (attrs.column < ccol))) {
      |                                  ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:202:10: note: ‘ccol’ was declared here
  202 |     long ccol, crow;
      |          ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:335:32: warning: ‘crow’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  335 |         if ((attrs.row < crow) ||
      |                                ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:202:16: note: ‘crow’ was declared here
  202 |     long ccol, crow;
      |                ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc: In member function ‘_ZN18VteTerminalPrivate11ensure_fontEv.part.0’:
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5823:16: warning: ‘cell_width’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5823 |     cell_width = MAX(cell_width, 1);
      |                ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5890:17: note: ‘cell_width’ was declared here
 5890 |             int cell_width, cell_height;
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5824:17: warning: ‘cell_height’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5824 |     cell_height = MAX(cell_height, 2);
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5890:29: note: ‘cell_height’ was declared here
 5890 |             int cell_width, cell_height;
      |                             ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5825:17: warning: ‘char_ascent’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5825 |     char_ascent = MAX(char_ascent, 1);
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5891:17: note: ‘char_ascent’ was declared here
 5891 |             int char_ascent, char_descent;
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5826:18: warning: ‘char_descent’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5826 |     char_descent = MAX(char_descent, 1);
      |                  ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5891:30: note: ‘char_descent’ was declared here
 5891 |             int char_ascent, char_descent;
      |                              ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc: In member function ‘_ZN18VteTerminalPrivate11ensure_fontEv.part.0’:
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5823:16: warning: ‘cell_width’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5823 |     cell_width = MAX(cell_width, 1);
      |                ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5890:17: note: ‘cell_width’ was declared here
 5890 |             int cell_width, cell_height;
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5824:17: warning: ‘cell_height’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5824 |     cell_height = MAX(cell_height, 2);
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5890:29: note: ‘cell_height’ was declared here
 5890 |             int cell_width, cell_height;
      |                             ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5825:17: warning: ‘char_ascent’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5825 |     char_ascent = MAX(char_ascent, 1);
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5891:17: note: ‘char_ascent’ was declared here
 5891 |             int char_ascent, char_descent;
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5826:18: warning: ‘char_descent’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5826 |     char_descent = MAX(char_descent, 1);
      |                  ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5891:30: note: ‘char_descent’ was declared here
 5891 |             int char_ascent, char_descent;
      |                              ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc: In function ‘vte_terminal_accessible_update_private_data_if_needed’:
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:336:34: warning: ‘ccol’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  336 |             ((attrs.row == crow) && (attrs.column < ccol))) {
      |                                  ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:202:10: note: ‘ccol’ was declared here
  202 |     long ccol, crow;
      |          ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:335:32: warning: ‘crow’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  335 |         if ((attrs.row < crow) ||
      |                                ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:202:16: note: ‘crow’ was declared here
  202 |     long ccol, crow;
      |                ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc: In member function ‘_ZN18VteTerminalPrivate11ensure_fontEv.part.0’:
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5823:16: warning: ‘cell_width’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5823 |     cell_width = MAX(cell_width, 1);
      |                ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5890:17: note: ‘cell_width’ was declared here
 5890 |             int cell_width, cell_height;
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5824:17: warning: ‘cell_height’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5824 |     cell_height = MAX(cell_height, 2);
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5890:29: note: ‘cell_height’ was declared here
 5890 |             int cell_width, cell_height;
      |                             ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5825:17: warning: ‘char_ascent’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5825 |     char_ascent = MAX(char_ascent, 1);
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5891:17: note: ‘char_ascent’ was declared here
 5891 |             int char_ascent, char_descent;
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5826:18: warning: ‘char_descent’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5826 |     char_descent = MAX(char_descent, 1);
      |                  ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5891:30: note: ‘char_descent’ was declared here
 5891 |             int char_ascent, char_descent;
      |                              ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c: In function ‘create_shader_program.constprop’:
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:780:12: warning: ‘fragment_shader’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  780 |     frag = create_shader(GL_FRAGMENT_SHADER, fragment_shader);
      |            ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:732:11: note: ‘fragment_shader’ was declared here
  732 |     char *fragment_shader;
      |           ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:779:12: warning: ‘vertex_shader’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  779 |     vert = create_shader(GL_VERTEX_SHADER, vertex_shader);
      |            ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:731:11: note: ‘vertex_shader’ was declared here
  731 |     char *vertex_shader;
      |           ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c: In function ‘create_shader_program.constprop’:
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:780:12: warning: ‘fragment_shader’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  780 |     frag = create_shader(GL_FRAGMENT_SHADER, fragment_shader);
      |            ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:732:11: note: ‘fragment_shader’ was declared here
  732 |     char *fragment_shader;
      |           ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:779:12: warning: ‘vertex_shader’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  779 |     vert = create_shader(GL_VERTEX_SHADER, vertex_shader);
      |            ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:731:11: note: ‘vertex_shader’ was declared here
  731 |     char *vertex_shader;
      |           ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c: In function ‘create_shader_program.constprop’:
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:780:12: warning: ‘fragment_shader’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  780 |     frag = create_shader(GL_FRAGMENT_SHADER, fragment_shader);
      |            ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:732:11: note: ‘fragment_shader’ was declared here
  732 |     char *fragment_shader;
      |           ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:779:12: warning: ‘vertex_shader’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  779 |     vert = create_shader(GL_VERTEX_SHADER, vertex_shader);
      |            ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:731:11: note: ‘vertex_shader’ was declared here
  731 |     char *vertex_shader;
      |           ^
cbm2/../../../vice/src/cbm2/cbm5x0-snapshot.c: In function ‘cbm2_snapshot_read’:
tapeport/../../../vice/src/tapeport/tapeport.c:658:9: warning: ‘MEM[(int *)&tmp_tapeport_device + 4B]’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  658 |         tapeport_set_device(TAPEPORT_PORT_2, tmp_tapeport_device[TAPEPORT_PORT_2]);
      |         ^
tapeport/../../../vice/src/tapeport/tapeport.c:623:9: note: ‘MEM[(int *)&tmp_tapeport_device + 4B]’ was declared here
  623 |     int tmp_tapeport_device[2];
      |         ^
cbm2/../../../vice/src/cbm2/cbm2memsnapshot.c:372:13: warning: ‘config’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  372 |     uint8_t config;
      |             ^
cbm2/../../../vice/src/cbm2/cbm2memsnapshot.c:159:21: warning: ‘hwconfig’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  159 |     uint8_t config, hwconfig;
      |                     ^
cbm2/../../../vice/src/cbm2/cbm2memsnapshot.c:159:13: warning: ‘config’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  159 |     uint8_t config, hwconfig;
      |             ^
cbm2/../../../vice/src/cbm2/cbm2memsnapshot.c:175:13: warning: ‘byte’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  175 |     memsize = ((int)byte) & 0xff;
      |             ^
cbm2/../../../vice/src/cbm2/cbm2memsnapshot.c:157:13: note: ‘byte’ was declared here
  157 |     uint8_t byte, vmajor, vminor;
      |             ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c: In function ‘vice_opengl_on_ui_frame_clock’:
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:538:9: warning: ‘last_frame_uniform’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  538 |         glUniform1i(last_frame_uniform, 0);
      |         ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:490:12: note: ‘last_frame_uniform’ was declared here
  490 |     GLuint last_frame_uniform;
      |            ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc: In function ‘vte_terminal_accessible_update_private_data_if_needed’:
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:336:34: warning: ‘ccol’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  336 |             ((attrs.row == crow) && (attrs.column < ccol))) {
      |                                  ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:202:10: note: ‘ccol’ was declared here
  202 |     long ccol, crow;
      |          ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:335:32: warning: ‘crow’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  335 |         if ((attrs.row < crow) ||
      |                                ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vteaccess.cc:202:16: note: ‘crow’ was declared here
  202 |     long ccol, crow;
      |                ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc: In member function ‘_ZN18VteTerminalPrivate11ensure_fontEv.part.0’:
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5823:16: warning: ‘cell_width’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5823 |     cell_width = MAX(cell_width, 1);
      |                ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5890:17: note: ‘cell_width’ was declared here
 5890 |             int cell_width, cell_height;
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5824:17: warning: ‘cell_height’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5824 |     cell_height = MAX(cell_height, 2);
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5890:29: note: ‘cell_height’ was declared here
 5890 |             int cell_width, cell_height;
      |                             ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5825:17: warning: ‘char_ascent’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5825 |     char_ascent = MAX(char_ascent, 1);
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5891:17: note: ‘char_ascent’ was declared here
 5891 |             int char_ascent, char_descent;
      |                 ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5826:18: warning: ‘char_descent’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 5826 |     char_descent = MAX(char_descent, 1);
      |                  ^
arch/gtk3/novte/../../../../../vice/src/arch/gtk3/novte/vte.cc:5891:30: note: ‘char_descent’ was declared here
 5891 |             int char_ascent, char_descent;
      |                              ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c: In function ‘create_shader_program.constprop’:
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:780:12: warning: ‘fragment_shader’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  780 |     frag = create_shader(GL_FRAGMENT_SHADER, fragment_shader);
      |            ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:732:11: note: ‘fragment_shader’ was declared here
  732 |     char *fragment_shader;
      |           ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:779:12: warning: ‘vertex_shader’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  779 |     vert = create_shader(GL_VERTEX_SHADER, vertex_shader);
      |            ^
arch/gtk3/../../../../vice/src/arch/gtk3/opengl_renderer.c:731:11: note: ‘vertex_shader’ was declared here
  731 |     char *vertex_shader;
      |           ^
Making all in build
...
  • Compyx, Win7 x64 Gtk3, r40182, GCC 10.3.0
...
Making all in joystickdrv
../../../vice/src/joystickdrv/joystick_win32_directinput.c: In function 'joystick_di5_update':
../../../vice/src/joystickdrv/joystick_win32_directinput.c:223:11: warning: unused variable 'apos' [-Wunused-variable]
  223 |     DWORD apos;
      |           ^~~~
../../../vice/src/joystickdrv/joystick_win32_directinput.c:222:10: warning: unused variable 'amax' [-Wunused-variable]
  222 |     UINT amax;
      |          ^~~~
../../../vice/src/joystickdrv/joystick_win32_directinput.c:221:10: warning: unused variable 'amin' [-Wunused-variable]
  221 |     UINT amin;
      |          ^~~~
Making all in sounddrv
Making all in mididrv
../../../vice/src/mididrv/midi-win32-drv.c: In function 'message_len':
../../../vice/src/mididrv/midi-win32-drv.c:173:13: warning: this statement may fall through [-Wimplicit-fallthrough=]
  173 |             switch (msg) {
      |             ^~~~~~
../../../vice/src/mididrv/midi-win32-drv.c:198:9: note: here
  198 |         default: /* running status */
      |         ^~~~~~~
Making all in socketdrv
Making all in hwsiddrv
../../../vice/src/hwsiddrv/cw-win32-pci.c: In function 'cw_pci_open':
../../../vice/src/hwsiddrv/cw-win32-pci.c:334:19: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'int (*)(WORD,  DWORD *, BYTE)' {aka 'int (*)(short unsigned int,  long unsigned int *, unsigned char)'} [-Wcast-function-type]
  334 |         inp32fp = (inpfuncPtr)GetProcAddress(hLib, "GetPortVal");
      |                   ^
../../../vice/src/hwsiddrv/cw-win32-pci.c:336:23: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'int (*)(WORD,  DWORD,  BYTE)' {aka 'int (*)(short unsigned int,  long unsigned int,  unsigned char)'} [-Wcast-function-type]
  336 |             oup32fp = (oupfuncPtr)GetProcAddress(hLib, "SetPortVal");
      |                       ^
../../../vice/src/hwsiddrv/cw-win32-pci.c:338:28: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'int (*)(void)' [-Wcast-function-type]
  338 |                 init32fp = (initfuncPtr)GetProcAddress(hLib, "InitializeWinIo");
      |                            ^
../../../vice/src/hwsiddrv/hs-win32-dll.c: In function 'init_interface':
../../../vice/src/hwsiddrv/hs-win32-dll.c:119:31: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'BYTE (*)(void)' {aka 'unsigned char (*)(void)'} [-Wcast-function-type]
  119 |             GetHardSIDCount = (GetHardSIDCount_t)GetProcAddress(dll, "GetHardSIDCount");
      |                               ^
../../../vice/src/hwsiddrv/hs-win32-dll.c:121:32: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'void (*)(BOOL)' {aka 'void (*)(int)'} [-Wcast-function-type]
  121 |             MuteHardSID_Line = (MuteHardSID_Line_t)GetProcAddress(dll, "MuteHardSID_Line");
      |                                ^
../../../vice/src/hwsiddrv/hs-win32-dll.c:122:31: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'BYTE (*)(BYTE,  BYTE)' {aka 'unsigned char (*)(unsigned char,  unsigned char)'} [-Wcast-function-type]
  122 |             ReadFromHardSID = (ReadFromHardSID_t)GetProcAddress(dll, "ReadFromHardSID");
      |                               ^
../../../vice/src/hwsiddrv/hs-win32-dll.c:123:24: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'void (*)(BOOL)' {aka 'void (*)(int)'} [-Wcast-function-type]
  123 |             SetDebug = (SetDebug_t)GetProcAddress(dll, "SetDebug");
      |                        ^
../../../vice/src/hwsiddrv/hs-win32-dll.c:124:30: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'void (*)(BYTE,  BYTE,  BYTE)' {aka 'void (*)(unsigned char,  unsigned char,  unsigned char)'} [-Wcast-function-type]
  124 |             WriteToHardSID = (WriteToHardSID_t)GetProcAddress(dll, "WriteToHardSID");
      |                              ^
../../../vice/src/hwsiddrv/hs-win32-dll.c:127:29: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'void (*)(BYTE)' {aka 'void (*)(unsigned char)'} [-Wcast-function-type]
  127 |             HardSID_Reset = (HardSID_Reset_t)GetProcAddress(dll, "HardSID_Reset");
      |                             ^
../../../vice/src/hwsiddrv/hs-win32-dll.c:128:28: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'BOOL (*)(BYTE)' {aka 'int (*)(unsigned char)'} [-Wcast-function-type]
  128 |             HardSID_Lock = (HardSID_Lock_t)GetProcAddress(dll, "HardSID_Lock");
      |                            ^
../../../vice/src/hwsiddrv/hs-win32-dll.c:129:33: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'void (*)(BYTE)' {aka 'void (*)(unsigned char)'} [-Wcast-function-type]
  129 |             HardSID_AbortPlay = (HardSID_AbortPlay_t)GetProcAddress(dll, "HardSID_Flush");
      |                                 ^
../../../vice/src/hwsiddrv/hs-win32-dll.c:130:29: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'void (*)(BYTE)' {aka 'void (*)(unsigned char)'} [-Wcast-function-type]
  130 |             HardSID_Flush = (HardSID_Flush_t)GetProcAddress(dll, "HardSID_SoftFlush");
      |                             ^
../../../vice/src/hwsiddrv/hs-win32-dll.c:131:29: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'void (*)(BYTE,  WORD,  BYTE,  BYTE)' {aka 'void (*)(unsigned char,  short unsigned int,  unsigned char,  unsigned char)'} [-Wcast-function-type]
  131 |             HardSID_Write = (HardSID_Write_t)GetProcAddress(dll, "HardSID_Write");
      |                             ^
../../../vice/src/hwsiddrv/hs-win32-dll.c:132:29: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'void (*)(BYTE,  WORD)' {aka 'void (*)(unsigned char,  short unsigned int)'} [-Wcast-function-type]
  132 |             HardSID_Delay = (HardSID_Delay_t)GetProcAddress(dll, "HardSID_Delay");
      |                             ^
../../../vice/src/hwsiddrv/hs-win32-dll.c: In function 'hs_dll_open':
../../../vice/src/hwsiddrv/hs-win32-dll.c:210:44: warning: cast between incompatible function types from 'void (*)(struct HWND__ *, UINT,  UINT,  DWORD)' {aka 'void (*)(struct HWND__ *, unsigned int,  unsigned int,  long unsigned int)'} to 'void (*)(struct HWND__ *, UINT,  UINT_PTR,  DWORD)' {aka 'void (*)(struct HWND__ *, unsigned int,  long long unsigned int,  long unsigned int)'} [-Wcast-function-type]
  210 |         ftimer = SetTimer(NULL, ftimer, 1, (TIMERPROC) ftimerproc);
      |                                            ^
../../../vice/src/hwsiddrv/hs-win32-isa.c: In function 'hs_isa_open':
../../../vice/src/hwsiddrv/hs-win32-isa.c:318:30: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'short int (*)(short int)' [-Wcast-function-type]
  318 |             inpout_inp32fp = (inpout_inpfuncPtr)GetProcAddress(hLib, "Inp32");
      |                              ^
../../../vice/src/hwsiddrv/hs-win32-isa.c:320:34: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'void (*)(short int,  short int)' [-Wcast-function-type]
  320 |                 inpout_oup32fp = (inpout_oupfuncPtr)GetProcAddress(hLib, "Out32");
      |                                  ^
../../../vice/src/hwsiddrv/hs-win32-isa.c:327:29: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'int (*)(WORD,  DWORD *, BYTE)' {aka 'int (*)(short unsigned int,  long unsigned int *, unsigned char)'} [-Wcast-function-type]
  327 |             winio_inp32fp = (winio_inpfuncPtr)GetProcAddress(hLib, "GetPortVal");
      |                             ^
../../../vice/src/hwsiddrv/hs-win32-isa.c:329:33: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'int (*)(WORD,  DWORD,  BYTE)' {aka 'int (*)(short unsigned int,  long unsigned int,  unsigned char)'} [-Wcast-function-type]
  329 |                 winio_oup32fp = (winio_oupfuncPtr)GetProcAddress(hLib, "SetPortVal");
      |                                 ^
../../../vice/src/hwsiddrv/hs-win32-isa.c:331:32: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'int (*)(void)' [-Wcast-function-type]
  331 |                     init32fp = (initfuncPtr)GetProcAddress(hLib, "InitializeWinIo");
      |                                ^
../../../vice/src/hwsiddrv/hs-win32-pci.c: In function 'hs_pci_open':
../../../vice/src/hwsiddrv/hs-win32-pci.c:369:23: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'int (*)(WORD,  DWORD *, BYTE)' {aka 'int (*)(short unsigned int,  long unsigned int *, unsigned char)'} [-Wcast-function-type]
  369 |             inp32fp = (inpfuncPtr)GetProcAddress(hLib, "GetPortVal");
      |                       ^
../../../vice/src/hwsiddrv/hs-win32-pci.c:371:27: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'int (*)(WORD,  DWORD,  BYTE)' {aka 'int (*)(short unsigned int,  long unsigned int,  unsigned char)'} [-Wcast-function-type]
  371 |                 oup32fp = (oupfuncPtr)GetProcAddress(hLib, "SetPortVal");
      |                           ^
../../../vice/src/hwsiddrv/hs-win32-pci.c:373:32: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'int (*)(void)' [-Wcast-function-type]
  373 |                     init32fp = (initfuncPtr)GetProcAddress(hLib, "InitializeWinIo");
      |                                ^
../../../vice/src/hwsiddrv/ps-win32-dll.c: In function 'parsid_GetAddressLptPortInTheMemory':
../../../vice/src/hwsiddrv/ps-win32-dll.c:275:21: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'BOOL (*)(DWORD,  const void *, void *, DWORD,  DWORD *)' {aka 'int (*)(long unsigned int,  const void *, void *, long unsigned int,  long unsigned int *)'} [-Wcast-function-type]
  275 |     myProcPointer = (PROCTYPE_Toolhelp32ReadProcessMemory)GetProcAddress(hDLL, "Toolhelp32ReadProcessMemory");
      |                     ^
../../../vice/src/hwsiddrv/ps-win32-dll.c: In function 'ps_dll_open':
../../../vice/src/hwsiddrv/ps-win32-dll.c:481:26: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'short int (*)(short int)' [-Wcast-function-type]
  481 |         inpout_inp32fp = (inpout_inpfuncPtr)GetProcAddress(hLib, "Inp32");
      |                          ^
../../../vice/src/hwsiddrv/ps-win32-dll.c:483:30: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'void (*)(short int,  short int)' [-Wcast-function-type]
  483 |             inpout_oup32fp = (inpout_oupfuncPtr)GetProcAddress(hLib, "Out32");
      |                              ^
../../../vice/src/hwsiddrv/ps-win32-dll.c:495:25: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'int (*)(WORD,  DWORD *, BYTE)' {aka 'int (*)(short unsigned int,  long unsigned int *, unsigned char)'} [-Wcast-function-type]
  495 |         winio_inp32fp = (winio_inpfuncPtr)GetProcAddress(hLib, "GetPortVal");
      |                         ^
../../../vice/src/hwsiddrv/ps-win32-dll.c:497:29: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'int (*)(WORD,  DWORD,  BYTE)' {aka 'int (*)(short unsigned int,  long unsigned int,  unsigned char)'} [-Wcast-function-type]
  497 |             winio_oup32fp = (winio_oupfuncPtr)GetProcAddress(hLib, "SetPortVal");
      |                             ^
../../../vice/src/hwsiddrv/ps-win32-dll.c:499:28: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'int (*)(void)' [-Wcast-function-type]
  499 |                 init32fp = (initfuncPtr)GetProcAddress(hLib, "InitializeWinIo");
      |                            ^
../../../vice/src/hwsiddrv/ps-win32-io.c: In function 'parsid_GetAddressLptPortInTheMemory':
../../../vice/src/hwsiddrv/ps-win32-io.c:230:21: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'BOOL (*)(DWORD,  const void *, void *, DWORD,  DWORD *)' {aka 'int (*)(long unsigned int,  const void *, void *, long unsigned int,  long unsigned int *)'} [-Wcast-function-type]
  230 |     myProcPointer = (PROCTYPE_Toolhelp32ReadProcessMemory)GetProcAddress(hDLL, "Toolhelp32ReadProcessMemory");
      |                     ^
../../../vice/src/hwsiddrv/ssi2001-win32-drv.c: In function 'ssi2001_drv_open':
../../../vice/src/hwsiddrv/ssi2001-win32-drv.c:258:30: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'short int (*)(short int)' [-Wcast-function-type]
  258 |             inpout_inp32fp = (inpout_inpfuncPtr)GetProcAddress(hLib, "Inp32");
      |                              ^
../../../vice/src/hwsiddrv/ssi2001-win32-drv.c:260:34: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'void (*)(short int,  short int)' [-Wcast-function-type]
  260 |                 inpout_oup32fp = (inpout_oupfuncPtr)GetProcAddress(hLib, "Out32");
      |                                  ^
../../../vice/src/hwsiddrv/ssi2001-win32-drv.c:267:29: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'int (*)(WORD,  DWORD *, BYTE)' {aka 'int (*)(short unsigned int,  long unsigned int *, unsigned char)'} [-Wcast-function-type]
  267 |             winio_inp32fp = (winio_inpfuncPtr)GetProcAddress(hLib, "GetPortVal");
      |                             ^
../../../vice/src/hwsiddrv/ssi2001-win32-drv.c:269:33: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'int (*)(WORD,  DWORD,  BYTE)' {aka 'int (*)(short unsigned int,  long unsigned int,  unsigned char)'} [-Wcast-function-type]
  269 |                 winio_oup32fp = (winio_oupfuncPtr)GetProcAddress(hLib, "SetPortVal");
      |                                 ^
../../../vice/src/hwsiddrv/ssi2001-win32-drv.c:271:32: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'int (*)(void)' [-Wcast-function-type]
  271 |                     init32fp = (initfuncPtr)GetProcAddress(hLib, "InitializeWinIo");
      |                                ^
Making all in iodrv
<snip>
Making all in cart
../../../../vice/src/c64/cart/magicvoice.c: In function 'magicvoice_mmu_translate':
../../../../vice/src/c64/cart/magicvoice.c:1269:27: warning: array subscript -49152 is outside array bounds of 'uint8_t[16384]' {aka 'unsigned char[16384]'} [-Warray-bounds]
 1269 |                     *base = (uint8_t *)(mv_rom - (uint8_t *)0xc000);
      |                     ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/c64/cart/magicvoice.c:132:16: note: while referencing 'mv_rom'
  132 | static uint8_t mv_rom[MV_ROM_SIZE];
      |                ^~~~~~
../../../../vice/src/c64/cart/magicvoice.c:1289:27: warning: array subscript -40960 is outside array bounds of 'uint8_t[16384]' {aka 'unsigned char[16384]'} [-Warray-bounds]
 1289 |                     *base = (uint8_t *)(mv_rom - (uint8_t *)0xa000);
      |                     ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/c64/cart/magicvoice.c:132:16: note: while referencing 'mv_rom'
  132 | static uint8_t mv_rom[MV_ROM_SIZE];
      |                ^~~~~~
../../../vice/src/c64/vsidmem.c: In function 'mem_initialize_memory':
../../../vice/src/c64/vsidmem.c:532:33: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  532 |         mem_read_base_tab[1][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../vice/src/c64/vsidmem.c:81:9: note: while referencing 'mem_chargen_rom'
   81 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
../../../vice/src/c64/vsidmem.c:533:33: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  533 |         mem_read_base_tab[2][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../vice/src/c64/vsidmem.c:81:9: note: while referencing 'mem_chargen_rom'
   81 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
../../../vice/src/c64/vsidmem.c:534:33: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  534 |         mem_read_base_tab[3][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../vice/src/c64/vsidmem.c:81:9: note: while referencing 'mem_chargen_rom'
   81 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
../../../vice/src/c64/vsidmem.c:535:33: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  535 |         mem_read_base_tab[9][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../vice/src/c64/vsidmem.c:81:9: note: while referencing 'mem_chargen_rom'
   81 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
../../../vice/src/c64/vsidmem.c:536:34: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  536 |         mem_read_base_tab[10][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../vice/src/c64/vsidmem.c:81:9: note: while referencing 'mem_chargen_rom'
   81 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
../../../vice/src/c64/vsidmem.c:537:34: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  537 |         mem_read_base_tab[11][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../vice/src/c64/vsidmem.c:81:9: note: while referencing 'mem_chargen_rom'
   81 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
../../../vice/src/c64/vsidmem.c:538:34: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  538 |         mem_read_base_tab[25][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../vice/src/c64/vsidmem.c:81:9: note: while referencing 'mem_chargen_rom'
   81 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
../../../vice/src/c64/vsidmem.c:539:34: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  539 |         mem_read_base_tab[26][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../vice/src/c64/vsidmem.c:81:9: note: while referencing 'mem_chargen_rom'
   81 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
../../../vice/src/c64/vsidmem.c:540:34: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  540 |         mem_read_base_tab[27][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../vice/src/c64/vsidmem.c:81:9: note: while referencing 'mem_chargen_rom'
   81 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
../../../vice/src/c64/c64mem.c: In function 'mem_initialize_memory':
../../../vice/src/c64/c64mem.c:769:33: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  769 |         mem_read_base_tab[1][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../vice/src/c64/c64mem.c:87:9: note: while referencing 'mem_chargen_rom'
   87 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
../../../vice/src/c64/c64mem.c:770:33: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  770 |         mem_read_base_tab[2][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../vice/src/c64/c64mem.c:87:9: note: while referencing 'mem_chargen_rom'
   87 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
../../../vice/src/c64/c64mem.c:771:33: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  771 |         mem_read_base_tab[3][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../vice/src/c64/c64mem.c:87:9: note: while referencing 'mem_chargen_rom'
   87 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
../../../vice/src/c64/c64mem.c:772:33: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  772 |         mem_read_base_tab[9][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../vice/src/c64/c64mem.c:87:9: note: while referencing 'mem_chargen_rom'
   87 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
../../../vice/src/c64/c64mem.c:773:34: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  773 |         mem_read_base_tab[10][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../vice/src/c64/c64mem.c:87:9: note: while referencing 'mem_chargen_rom'
   87 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
../../../vice/src/c64/c64mem.c:774:34: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  774 |         mem_read_base_tab[11][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../vice/src/c64/c64mem.c:87:9: note: while referencing 'mem_chargen_rom'
   87 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
../../../vice/src/c64/c64mem.c:775:34: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  775 |         mem_read_base_tab[26][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../vice/src/c64/c64mem.c:87:9: note: while referencing 'mem_chargen_rom'
   87 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
../../../vice/src/c64/c64mem.c:776:34: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  776 |         mem_read_base_tab[27][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../vice/src/c64/c64mem.c:87:9: note: while referencing 'mem_chargen_rom'
   87 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
../../../vice/src/c64/c64memsc.c: In function 'mem_initialize_memory':
../../../vice/src/c64/c64memsc.c:718:33: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  718 |         mem_read_base_tab[1][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../vice/src/c64/c64memsc.c:90:9: note: while referencing 'mem_chargen_rom'
   90 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
../../../vice/src/c64/c64memsc.c:719:33: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  719 |         mem_read_base_tab[2][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../vice/src/c64/c64memsc.c:90:9: note: while referencing 'mem_chargen_rom'
   90 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
../../../vice/src/c64/c64memsc.c:720:33: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  720 |         mem_read_base_tab[3][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../vice/src/c64/c64memsc.c:90:9: note: while referencing 'mem_chargen_rom'
   90 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
../../../vice/src/c64/c64memsc.c:721:33: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  721 |         mem_read_base_tab[9][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../vice/src/c64/c64memsc.c:90:9: note: while referencing 'mem_chargen_rom'
   90 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
../../../vice/src/c64/c64memsc.c:722:34: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  722 |         mem_read_base_tab[10][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../vice/src/c64/c64memsc.c:90:9: note: while referencing 'mem_chargen_rom'
   90 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
../../../vice/src/c64/c64memsc.c:723:34: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  723 |         mem_read_base_tab[11][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../vice/src/c64/c64memsc.c:90:9: note: while referencing 'mem_chargen_rom'
   90 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
../../../vice/src/c64/c64memsc.c:724:34: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  724 |         mem_read_base_tab[26][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../vice/src/c64/c64memsc.c:90:9: note: while referencing 'mem_chargen_rom'
   90 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
../../../vice/src/c64/c64memsc.c:725:34: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  725 |         mem_read_base_tab[27][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../vice/src/c64/c64memsc.c:90:9: note: while referencing 'mem_chargen_rom'
   90 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
Making all in scpu64
Making all in c64dtv
../../../vice/src/c64dtv/c64dtvcpu.c:537:2: warning: #warning "CPUMEMHISTORY implementation for x64dtv is incomplete" [-Wcpp]
  537 | #warning "CPUMEMHISTORY implementation for x64dtv is incomplete"
      |  ^~~~~~~
Making all in c128
../../../vice/src/c128/c128cpu.c:123:2: warning: #warning "CPUMEMHISTORY implementation for x128 is incomplete" [-Wcpp]
  123 | #warning "CPUMEMHISTORY implementation for x128 is incomplete"
      |  ^~~~~~~
Making all in vic20
Making all in cart
Making all in pet
../../../vice/src/pet/petcpu.c:69:2: warning: #warning "CPUMEMHISTORY implementation for xpet is incomplete" [-Wcpp]
   69 | #warning "CPUMEMHISTORY implementation for xpet is incomplete"
      |  ^~~~~~~
Making all in plus4
Making all in cart
../../../vice/src/plus4/plus4cpu.c:40:2: warning: #warning "CPUMEMHISTORY implementation for xplus4 is incomplete" [-Wcpp]
   40 | #warning "CPUMEMHISTORY implementation for xplus4 is incomplete"
      |  ^~~~~~~
Making all in cbm2
Making all in cart
../../../vice/src/cbm2/cbm2cpu.c:68:2: warning: #warning "CPUMEMHISTORY implementation for xcbm2 is incomplete" [-Wcpp]
   68 | #warning "CPUMEMHISTORY implementation for xcbm2 is incomplete"
      |  ^~~~~~~
Making all in arch
Making all in shared
In file included from ../../../../vice/src/arch/shared/rawnetarch.c:68:
../../../../vice/src/arch/shared/rawnetarch_win32.c: In function 'EthernetPcapLoadLibrary':
../../../../vice/src/arch/shared/rawnetarch_win32.c:131:18: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'pcap_t * (*)(const char *, int,  int,  int,  char *)' {aka 'struct pcap * (*)(const char *, int,  int,  int,  char *)'} [-Wcast-function-type]
  131 |     p_##_name_ = (_name_##_t) GetProcAddress(pcap_library, #_name_);     \
      |                  ^
../../../../vice/src/arch/shared/rawnetarch_win32.c:148:9: note: in expansion of macro 'GET_PROC_ADDRESS_AND_TEST'
  148 |         GET_PROC_ADDRESS_AND_TEST(pcap_open_live);
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/rawnetarch_win32.c:131:18: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'int (*)(pcap_t *, int,  void (*)(u_char *, const struct pcap_pkthdr *, const u_char *), u_char *)' {aka 'int (*)(struct pcap *, int,  void (*)(unsigned char *, const struct pcap_pkthdr *, const unsigned char *), unsigned char *)'} [-Wcast-function-type]
  131 |     p_##_name_ = (_name_##_t) GetProcAddress(pcap_library, #_name_);     \
      |                  ^
../../../../vice/src/arch/shared/rawnetarch_win32.c:149:9: note: in expansion of macro 'GET_PROC_ADDRESS_AND_TEST'
  149 |         GET_PROC_ADDRESS_AND_TEST(pcap_dispatch);
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/rawnetarch_win32.c:131:18: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'int (*)(pcap_t *, int,  char *)' {aka 'int (*)(struct pcap *, int,  char *)'} [-Wcast-function-type]
  131 |     p_##_name_ = (_name_##_t) GetProcAddress(pcap_library, #_name_);     \
      |                  ^
../../../../vice/src/arch/shared/rawnetarch_win32.c:150:9: note: in expansion of macro 'GET_PROC_ADDRESS_AND_TEST'
  150 |         GET_PROC_ADDRESS_AND_TEST(pcap_setnonblock);
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/rawnetarch_win32.c:131:18: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'int (*)(pcap_if_t **, char *)' {aka 'int (*)(struct pcap_if **, char *)'} [-Wcast-function-type]
  131 |     p_##_name_ = (_name_##_t) GetProcAddress(pcap_library, #_name_);     \
      |                  ^
../../../../vice/src/arch/shared/rawnetarch_win32.c:151:9: note: in expansion of macro 'GET_PROC_ADDRESS_AND_TEST'
  151 |         GET_PROC_ADDRESS_AND_TEST(pcap_findalldevs);
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/rawnetarch_win32.c:131:18: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'void (*)(pcap_if_t *)' {aka 'void (*)(struct pcap_if *)'} [-Wcast-function-type]
  131 |     p_##_name_ = (_name_##_t) GetProcAddress(pcap_library, #_name_);     \
      |                  ^
../../../../vice/src/arch/shared/rawnetarch_win32.c:152:9: note: in expansion of macro 'GET_PROC_ADDRESS_AND_TEST'
  152 |         GET_PROC_ADDRESS_AND_TEST(pcap_freealldevs);
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/rawnetarch_win32.c:131:18: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'int (*)(pcap_t *, u_char *, int)' {aka 'int (*)(struct pcap *, unsigned char *, int)'} [-Wcast-function-type]
  131 |     p_##_name_ = (_name_##_t) GetProcAddress(pcap_library, #_name_);     \
      |                  ^
../../../../vice/src/arch/shared/rawnetarch_win32.c:153:9: note: in expansion of macro 'GET_PROC_ADDRESS_AND_TEST'
  153 |         GET_PROC_ADDRESS_AND_TEST(pcap_sendpacket);
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/rawnetarch_win32.c:131:18: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'int (*)(pcap_t *)' {aka 'int (*)(struct pcap *)'} [-Wcast-function-type]
  131 |     p_##_name_ = (_name_##_t) GetProcAddress(pcap_library, #_name_);     \
      |                  ^
../../../../vice/src/arch/shared/rawnetarch_win32.c:154:9: note: in expansion of macro 'GET_PROC_ADDRESS_AND_TEST'
  154 |         GET_PROC_ADDRESS_AND_TEST(pcap_datalink);
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/rawnetarch_win32.c:131:18: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'char * (*)(char *)' [-Wcast-function-type]
  131 |     p_##_name_ = (_name_##_t) GetProcAddress(pcap_library, #_name_);     \
      |                  ^
../../../../vice/src/arch/shared/rawnetarch_win32.c:155:9: note: in expansion of macro 'GET_PROC_ADDRESS_AND_TEST'
  155 |         GET_PROC_ADDRESS_AND_TEST(pcap_lookupdev);
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~
Making all in gtk3
...


  • Compyx, Debian x64 Gtk3, r39941 (after adding -Wmissing-prototypes)
Making all in src
Making all in resid
ar: `u' modifier ignored since `D' is the default (see `U')
Making all in resid-dtv
ar: `u' modifier ignored since `D' is the default (see `U')
Making all in samplerdrv
Making all in joyport
Making all in sounddrv
Making all in mididrv
Making all in socketdrv
Making all in hwsiddrv
Making all in iodrv
Making all in drive
Making all in iec
Making all in c64exp
Making all in plus4exp
../../../../vice/src/drive/iec/cmdhd.c:144:6: warning: no previous prototype for ‘my_debug_iec_drv_write’ [-Wmissing-prototypes]
 void my_debug_iec_drv_write(unsigned int data)
      ^~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/drive/iec/cmdhd.c:162:6: warning: no previous prototype for ‘my_debug_iec_drv_read’ [-Wmissing-prototypes]
 void my_debug_iec_drv_read(unsigned int data)
      ^~~~~~~~~~~~~~~~~~~~~
Making all in iec128dcr
Making all in iecieee
Making all in ieee
Making all in tcbm
Making all in vdrive
../../../vice/src/vdrive/vdrive-bam.c:349:5: warning: no previous prototype for ‘vdrive_bam_alloc_add_interleave’ [-Wmissing-prototypes]
 int vdrive_bam_alloc_add_interleave(vdrive_t *vdrive,
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Making all in fsdevice
Making all in diskimage
Making all in iecbus
Making all in serial
Making all in parallel
Making all in tape
Making all in imagecontents
Making all in fileio
Making all in video
Making all in raster
Making all in vicii
Making all in viciisc
Making all in viciivsid
Making all in vdc
Making all in crtc
Making all in gfxoutputdrv
Making all in printerdrv
Making all in rs232drv
Making all in sid
Making all in monitor
../../../vice/src/monitor/monitor.c:818:11: warning: no previous prototype for ‘mon_get_current_bank_index’ [-Wmissing-prototypes]
 const int mon_get_current_bank_index(MEMSPACE mem)
           ^~~~~~~~~~~~~~~~~~~~~~~~~~
../../../vice/src/monitor/monitor_binary.c:372:6: warning: no previous prototype for ‘monitor_binary_response_register_info’ [-Wmissing-prototypes]
 void monitor_binary_response_register_info(uint32_t request_id, MEMSPACE memspace)
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Making all in core
../../../vice/src/core/scsi.c:242:6: warning: no previous prototype for ‘scsi_format_sector0’ [-Wmissing-prototypes]
 void scsi_format_sector0(struct scsi_context_s *context)
      ^~~~~~~~~~~~~~~~~~~
Making all in rtc
Making all in userport
Making all in tapeport
Making all in diag
Making all in c64
Making all in cart
../../../vice/src/c64/vsidstubs.c:481:19: warning: no previous prototype for ‘diskcontents_block_read’ [-Wmissing-prototypes]
 image_contents_t *diskcontents_block_read(struct vdrive_s *vdrive, int part)
                   ^~~~~~~~~~~~~~~~~~~~~~~
../../../vice/src/c64/vsidstubs.c:553:5: warning: no previous prototype for ‘fsdevice_limit_namelength’ [-Wmissing-prototypes]
 int fsdevice_limit_namelength(vdrive_t *vdrive, uint8_t *name)
     ^~~~~~~~~~~~~~~~~~~~~~~~~
../../../vice/src/c64/c64memsc.c:943:6: warning: no previous prototype for ‘poke_bank_io’ [-Wmissing-prototypes]
 void poke_bank_io(uint16_t addr, uint8_t byte)
      ^~~~~~~~~~~~
Making all in scpu64
Making all in c64dtv
../../../vice/src/c64dtv/c64dtvcpu.c:537:2: warning: #warning "CPUMEMHISTORY implementation for x64dtv is incomplete" [-Wcpp]
 #warning "CPUMEMHISTORY implementation for x64dtv is incomplete"
  ^~~~~~~
Making all in c128
../../../vice/src/c128/c128cpu.c:123:2: warning: #warning "CPUMEMHISTORY implementation for x128 is incomplete" [-Wcpp]
 #warning "CPUMEMHISTORY implementation for x128 is incomplete"
  ^~~~~~~
Making all in vic20
Making all in cart
Making all in pet
../../../vice/src/pet/petcpu.c:69:2: warning: #warning "CPUMEMHISTORY implementation for xpet is incomplete" [-Wcpp]
 #warning "CPUMEMHISTORY implementation for xpet is incomplete"
  ^~~~~~~
Making all in plus4
Making all in cart
../../../../vice/src/plus4/cart/plus4cart.c:534:5: warning: no previous prototype for ‘cart_bin_attach’ [-Wmissing-prototypes]
 int cart_bin_attach(int type, const char *filename, uint8_t *rawcart)
     ^~~~~~~~~~~~~~~
../../../vice/src/plus4/plus4cpu.c:40:2: warning: #warning "CPUMEMHISTORY implementation for xplus4 is incomplete" [-Wcpp]
 #warning "CPUMEMHISTORY implementation for xplus4 is incomplete"
  ^~~~~~~
Making all in cbm2
../../../vice/src/cbm2/cbm2cpu.c:68:2: warning: #warning "CPUMEMHISTORY implementation for xcbm2 is incomplete" [-Wcpp]
 #warning "CPUMEMHISTORY implementation for xcbm2 is incomplete"
  ^~~~~~~
Making all in arch
Making all in shared
../../../../vice/src/arch/shared/archdep_exit.c:68:6: warning: no previous prototype for ‘archdep_is_exiting’ [-Wmissing-prototypes]
 bool archdep_is_exiting(void) {
      ^~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/archdep_is_haiku.c:54:5: warning: no previous prototype for ‘archdep_is_haiku’ [-Wmissing-prototypes]
 int archdep_is_haiku(void)
     ^~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/archdep_is_windows_nt.c:60:5: warning: no previous prototype for ‘archdep_is_windows_nt’ [-Wmissing-prototypes]
 int archdep_is_windows_nt(void)
     ^~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/archdep_is_macos_bindist.c:34:5: warning: no previous prototype for ‘archdep_is_macos_bindist’ [-Wmissing-prototypes]
 int archdep_is_macos_bindist(void) {
     ^~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/archdep_rtc_get_centisecond.c:53:5: warning: no previous prototype for ‘archdep_rtc_get_centisecond’ [-Wmissing-prototypes]
 int archdep_rtc_get_centisecond(void)
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/rawnetarch_unix.c:114:5: warning: no previous prototype for ‘rawnet_arch_pcap_enumadapter_open’ [-Wmissing-prototypes]
 int rawnet_arch_pcap_enumadapter_open(void)
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/rawnetarch_unix.c:148:5: warning: no previous prototype for ‘rawnet_arch_pcap_enumadapter’ [-Wmissing-prototypes]
 int rawnet_arch_pcap_enumadapter(char **ppname, char **ppdescription)
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/rawnetarch_unix.c:176:5: warning: no previous prototype for ‘rawnet_arch_pcap_enumadapter_close’ [-Wmissing-prototypes]
 int rawnet_arch_pcap_enumadapter_close(void)
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/rawnetarch_unix.c:228:6: warning: no previous prototype for ‘rawnet_arch_pcap_pre_reset’ [-Wmissing-prototypes]
 void rawnet_arch_pcap_pre_reset(void)
      ^~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/rawnetarch_unix.c:232:6: warning: no previous prototype for ‘rawnet_arch_pcap_post_reset’ [-Wmissing-prototypes]
 void rawnet_arch_pcap_post_reset(void)
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/rawnetarch_unix.c:236:5: warning: no previous prototype for ‘rawnet_arch_pcap_activate’ [-Wmissing-prototypes]
 int rawnet_arch_pcap_activate(const char *interface_name)
     ^~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/rawnetarch_unix.c:244:6: warning: no previous prototype for ‘rawnet_arch_pcap_deactivate’ [-Wmissing-prototypes]
 void rawnet_arch_pcap_deactivate( void )
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/rawnetarch_unix.c:248:6: warning: no previous prototype for ‘rawnet_arch_pcap_set_mac’ [-Wmissing-prototypes]
 void rawnet_arch_pcap_set_mac( const uint8_t mac[6] )
      ^~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/rawnetarch_unix.c:252:6: warning: no previous prototype for ‘rawnet_arch_pcap_set_hashfilter’ [-Wmissing-prototypes]
 void rawnet_arch_pcap_set_hashfilter(const uint32_t hash_mask[2])
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/rawnetarch_unix.c:263:6: warning: no previous prototype for ‘rawnet_arch_pcap_recv_ctl’ [-Wmissing-prototypes]
 void rawnet_arch_pcap_recv_ctl(int bBroadcast, int bIA, int bMulticast, int bCorrect, int bPromiscuous, int bIAHash)
      ^~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/rawnetarch_unix.c:267:6: warning: no previous prototype for ‘rawnet_arch_pcap_line_ctl’ [-Wmissing-prototypes]
 void rawnet_arch_pcap_line_ctl(int bEnableTransmitter, int bEnableReceiver )
      ^~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/rawnetarch_unix.c:443:6: warning: no previous prototype for ‘rawnet_arch_pcap_transmit’ [-Wmissing-prototypes]
 void rawnet_arch_pcap_transmit(int force, int onecoll, int inhibit_crc,
      ^~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/rawnetarch_unix.c:489:5: warning: no previous prototype for ‘rawnet_arch_pcap_receive’ [-Wmissing-prototypes]
 int rawnet_arch_pcap_receive(uint8_t *pbuffer, int *plen, int  *phashed,
     ^~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/rawnetarch_unix.c:546:7: warning: no previous prototype for ‘rawnet_arch_pcap_get_standard_interface’ [-Wmissing-prototypes]
 char *rawnet_arch_pcap_get_standard_interface(void)
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/rawnetarch_tuntap.c:68:5: warning: no previous prototype for ‘rawnet_arch_tuntap_enumadapter_open’ [-Wmissing-prototypes]
 int rawnet_arch_tuntap_enumadapter_open(void)
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/rawnetarch_tuntap.c:91:5: warning: no previous prototype for ‘rawnet_arch_tuntap_enumadapter’ [-Wmissing-prototypes]
 int rawnet_arch_tuntap_enumadapter(char **ppname, char **ppdescription)
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/rawnetarch_tuntap.c:108:5: warning: no previous prototype for ‘rawnet_arch_tuntap_enumadapter_close’ [-Wmissing-prototypes]
 int rawnet_arch_tuntap_enumadapter_close(void)
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/rawnetarch_tuntap.c:149:6: warning: no previous prototype for ‘rawnet_arch_tuntap_pre_reset’ [-Wmissing-prototypes]
 void rawnet_arch_tuntap_pre_reset(void)
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/rawnetarch_tuntap.c:153:6: warning: no previous prototype for ‘rawnet_arch_tuntap_post_reset’ [-Wmissing-prototypes]
 void rawnet_arch_tuntap_post_reset(void)
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/rawnetarch_tuntap.c:157:5: warning: no previous prototype for ‘rawnet_arch_tuntap_activate’ [-Wmissing-prototypes]
 int rawnet_arch_tuntap_activate(const char *interface_name)
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/rawnetarch_tuntap.c:165:6: warning: no previous prototype for ‘rawnet_arch_tuntap_deactivate’ [-Wmissing-prototypes]
 void rawnet_arch_tuntap_deactivate(void)
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/rawnetarch_tuntap.c:171:6: warning: no previous prototype for ‘rawnet_arch_tuntap_set_mac’ [-Wmissing-prototypes]
 void rawnet_arch_tuntap_set_mac(const uint8_t mac[6])
      ^~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/rawnetarch_tuntap.c:175:6: warning: no previous prototype for ‘rawnet_arch_tuntap_set_hashfilter’ [-Wmissing-prototypes]
 void rawnet_arch_tuntap_set_hashfilter(const uint32_t hash_mask[2])
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/rawnetarch_tuntap.c:186:6: warning: no previous prototype for ‘rawnet_arch_tuntap_recv_ctl’ [-Wmissing-prototypes]
 void rawnet_arch_tuntap_recv_ctl(int bBroadcast, int bIA, int bMulticast, int bCorrect, int bPromiscuous, int bIAHash)
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/rawnetarch_tuntap.c:190:6: warning: no previous prototype for ‘rawnet_arch_tuntap_line_ctl’ [-Wmissing-prototypes]
 void rawnet_arch_tuntap_line_ctl(int bEnableTransmitter, int bEnableReceiver )
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/rawnetarch_tuntap.c:203:6: warning: no previous prototype for ‘rawnet_arch_tuntap_transmit’ [-Wmissing-prototypes]
 void rawnet_arch_tuntap_transmit(int force, int onecoll, int inhibit_crc,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/rawnetarch_tuntap.c:253:5: warning: no previous prototype for ‘rawnet_arch_tuntap_receive’ [-Wmissing-prototypes]
 int rawnet_arch_tuntap_receive(uint8_t *pbuffer, int *plen, int  *phashed,
     ^~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/shared/rawnetarch_tuntap.c:311:7: warning: no previous prototype for ‘rawnet_arch_tuntap_get_standard_interface’ [-Wmissing-prototypes]
 char *rawnet_arch_tuntap_get_standard_interface(void)
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Making all in gtk3
Making all in data
Making all in macos
Making all in unix
Making all in win32
Making all in novte
Making all in widgets
Making all in base
../../../../../../vice/src/arch/gtk3/widgets/base/resourcecheckbutton.c:340:10: warning: no previous prototype for ‘vice_gtk3_resource_check_button_apply’ [-Wmissing-prototypes]
 gboolean vice_gtk3_resource_check_button_apply(GtkWidget *widget)
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../../vice/src/arch/gtk3/widgets/dirmenupopup.c:140:6: warning: no previous prototype for ‘dir_item_apply_style’ [-Wmissing-prototypes]
 void dir_item_apply_style(GtkWidget *item)
      ^~~~~~~~~~~~~~~~~~~~
../../../../../vice/src/arch/gtk3/widgets/petramawidget.c:67:12: warning: no previous prototype for ‘pet_rama_widget_create’ [-Wmissing-prototypes]
 GtkWidget *pet_rama_widget_create(void)
            ^~~~~~~~~~~~~~~~~~~~~~
../../../../../vice/src/arch/gtk3/widgets/petramawidget.c:92:6: warning: no previous prototype for ‘pet_rama_widget_set_callback’ [-Wmissing-prototypes]
 void pet_rama_widget_set_callback(GtkWidget *widget,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../../vice/src/arch/gtk3/widgets/petramawidget.c:103:6: warning: no previous prototype for ‘pet_rama_widget_sync’ [-Wmissing-prototypes]
 void pet_rama_widget_sync(GtkWidget *widget)
      ^~~~~~~~~~~~~~~~~~~~
../../../../../vice/src/arch/gtk3/widgets/petram9widget.c:66:12: warning: no previous prototype for ‘pet_ram9_widget_create’ [-Wmissing-prototypes]
 GtkWidget *pet_ram9_widget_create(void)
            ^~~~~~~~~~~~~~~~~~~~~~
../../../../../vice/src/arch/gtk3/widgets/petram9widget.c:90:6: warning: no previous prototype for ‘pet_ram9_widget_set_callback’ [-Wmissing-prototypes]
 void pet_ram9_widget_set_callback(GtkWidget *widget,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../../vice/src/arch/gtk3/widgets/petram9widget.c:101:6: warning: no previous prototype for ‘pet_ram9_widget_sync’ [-Wmissing-prototypes]
 void pet_ram9_widget_sync(GtkWidget *widget)
      ^~~~~~~~~~~~~~~~~~~~
../../../../../vice/src/arch/gtk3/widgets/settings_fsdevice.c:65:12: warning: no previous prototype for ‘create_stack_child_widget’ [-Wmissing-prototypes]
 GtkWidget *create_stack_child_widget(int unit)
            ^~~~~~~~~~~~~~~~~~~~~~~~~
../../../../../vice/src/arch/gtk3/widgets/settings_host_display.c:152:12: warning: no previous prototype for ‘settings_host_display_widget_create’ [-Wmissing-prototypes]
 GtkWidget *settings_host_display_widget_create(GtkWidget *widget)
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../../vice/src/arch/gtk3/widgets/sidcartwidget.c:220:12: warning: no previous prototype for ‘create_sidcart_joy_widget’ [-Wmissing-prototypes]
 GtkWidget *create_sidcart_joy_widget(void)
            ^~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/gtk3/ui.c:1872:10: warning: no previous prototype for ‘ui_jam_dialog_impl’ [-Wmissing-prototypes]
 gboolean ui_jam_dialog_impl(gpointer user_data)
          ^~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/gtk3/ui.c:1979:10: warning: no previous prototype for ‘ui_extendimage_dialog_impl’ [-Wmissing-prototypes]
 gboolean ui_extendimage_dialog_impl(gpointer user_data)
          ^~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/gtk3/uisettings.c:2792:10: warning: no previous prototype for ‘ui_settings_dialog_create’ [-Wmissing-prototypes]
 gboolean ui_settings_dialog_create(GtkWidget *widget, gpointer user_data)
          ^~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/gtk3/uisettings.c:2933:10: warning: no previous prototype for ‘ui_settings_dialog_create_and_activate_node_impl’ [-Wmissing-prototypes]
 gboolean ui_settings_dialog_create_and_activate_node_impl(gpointer user_data)
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../vice/src/arch/gtk3/vice_gtk3_locking.c:37:6: warning: no previous prototype for ‘vice_gtk3_lock’ [-Wmissing-prototypes]
 void vice_gtk3_lock(gpointer data, GClosure *closure)
      ^~~~~~~~~~~~~~
../../../../vice/src/arch/gtk3/vice_gtk3_locking.c:46:6: warning: no previous prototype for ‘vice_gtk3_unlock’ [-Wmissing-prototypes]
 void vice_gtk3_unlock(gpointer data, GClosure *closure)
      ^~~~~~~~~~~~~~~~
Making all in lib
Making all in p64
Making all in linenoise-ng
Making all in hvsc
Making all in datasette
../../../vice/src/datasette/datasette-sound.c:55:6: warning: no previous prototype for ‘datasette_sound_set_halfwaves’ [-Wmissing-prototypes]
 void datasette_sound_set_halfwaves(char halfwaves)
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../vice/src/datasette/datasette-sound.c:60:6: warning: no previous prototype for ‘datasette_sound_add_to_circular_buffer’ [-Wmissing-prototypes]
 void datasette_sound_add_to_circular_buffer(CLOCK gap)
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../vice/src/datasette/datasette-sound.c:200:6: warning: no previous prototype for ‘datasette_sound_init’ [-Wmissing-prototypes]
 void datasette_sound_init(void)
      ^~~~~~~~~~~~~~~~~~~~
Making all in tools
Making all in cartconv
Making all in petcat
../../vice/src/c1541.c:228:18: warning: no previous prototype for ‘file_system_get_vdrive’ [-Wmissing-prototypes]
 struct vdrive_s *file_system_get_vdrive(unsigned int unit)
                  ^~~~~~~~~~~~~~~~~~~~~~
../../vice/src/c1541-stubs.c:47:6: warning: no previous prototype for ‘cartridge_detach_image’ [-Wmissing-prototypes]
 void cartridge_detach_image(int type)
      ^~~~~~~~~~~~~~~~~~~~~~
../../vice/src/c1541-stubs.c:52:6: warning: no previous prototype for ‘cartridge_unset_default’ [-Wmissing-prototypes]
 void cartridge_unset_default(void)
      ^~~~~~~~~~~~~~~~~~~~~~~
../../vice/src/c1541-stubs.c:61:5: warning: no previous prototype for ‘network_connected’ [-Wmissing-prototypes]
 int network_connected(void)
     ^~~~~~~~~~~~~~~~~
../../vice/src/c1541-stubs.c:66:5: warning: no previous prototype for ‘network_get_mode’ [-Wmissing-prototypes]
 int network_get_mode(void)
     ^~~~~~~~~~~~~~~~
../../vice/src/c1541-stubs.c:75:6: warning: no previous prototype for ‘network_event_record’ [-Wmissing-prototypes]
 void network_event_record(unsigned int type, void *data, unsigned int size)
      ^~~~~~~~~~~~~~~~~~~~
../../vice/src/c1541-stubs.c:86:6: warning: no previous prototype for ‘ui_error’ [-Wmissing-prototypes]
 void ui_error(const char *format, ...)
      ^~~~~~~~
../../vice/src/c1541-stubs.c:91:6: warning: no previous prototype for ‘main_exit’ [-Wmissing-prototypes]
 void main_exit(void)
      ^~~~~~~~~
../../vice/src/c1541-stubs.c:96:6: warning: no previous prototype for ‘mainlock_is_vice_thread’ [-Wmissing-prototypes]
 bool mainlock_is_vice_thread(void)
      ^~~~~~~~~~~~~~~~~~~~~~~
../../vice/src/c1541-stubs.c:102:6: warning: no previous prototype for ‘mainlock_initiate_shutdown’ [-Wmissing-prototypes]
 void mainlock_initiate_shutdown(void)
      ^~~~~~~~~~~~~~~~~~~~~~~~~~
../../vice/src/c1541-stubs.c:107:6: warning: no previous prototype for ‘enable_text’ [-Wmissing-prototypes]
 void enable_text(void)
      ^~~~~~~~~~~
../../vice/src/c1541-stubs.c:111:6: warning: no previous prototype for ‘disable_text’ [-Wmissing-prototypes]
 void disable_text(void)
      ^~~~~~~~~~~~
../../vice/src/c1541-stubs.c:115:5: warning: no previous prototype for ‘machine_bus_device_attach’ [-Wmissing-prototypes]
 int machine_bus_device_attach(unsigned int device, const char *name,
     ^~~~~~~~~~~~~~~~~~~~~~~~~
../../vice/src/c1541-stubs.c:153:6: warning: no previous prototype for ‘ui_error_string’ [-Wmissing-prototypes]
 void ui_error_string(const char *text)
      ^~~~~~~~~~~~~~~
../../vice/src/c1541-stubs.c:157:6: warning: no previous prototype for ‘vsync_suspend_speed_eval’ [-Wmissing-prototypes]
 void vsync_suspend_speed_eval(void)
      ^~~~~~~~~~~~~~~~~~~~~~~~
../../vice/src/c1541-stubs.c:166:5: warning: no previous prototype for ‘machine_bus_lib_directory’ [-Wmissing-prototypes]
 int machine_bus_lib_directory(unsigned int unit, const char *pattern, uint8_t **buf)
     ^~~~~~~~~~~~~~~~~~~~~~~~~
../../vice/src/c1541-stubs.c:171:5: warning: no previous prototype for ‘machine_bus_lib_read_sector’ [-Wmissing-prototypes]
 int machine_bus_lib_read_sector(unsigned int unit, unsigned int track, unsigned int sector, uint8_t *buf)
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../../vice/src/c1541-stubs.c:176:5: warning: no previous prototype for ‘machine_bus_lib_write_sector’ [-Wmissing-prototypes]
 int machine_bus_lib_write_sector(unsigned int unit, unsigned int track, unsigned int sector, uint8_t *buf)
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../vice/src/c1541-stubs.c:181:14: warning: no previous prototype for ‘machine_bus_device_type_get’ [-Wmissing-prototypes]
 unsigned int machine_bus_device_type_get(unsigned int unit)
              ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../../vice/src/c1541-stubs.c:186:5: warning: no previous prototype for ‘machine_drive_rom_check_loaded’ [-Wmissing-prototypes]
 int machine_drive_rom_check_loaded(unsigned int type)
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../vice/src/c1541-stubs.c:191:6: warning: no previous prototype for ‘machine_drive_flush’ [-Wmissing-prototypes]
 void machine_drive_flush(void)
      ^~~~~~~~~~~~~~~~~~~
../../vice/src/c1541-stubs.c:213:7: warning: no previous prototype for ‘kbd_get_menu_keyname’ [-Wmissing-prototypes]
 char *kbd_get_menu_keyname(void)
       ^~~~~~~~~~~~~~~~~~~~
Making all in build
...
  • Strobe, MSYS2 x64 Gtk3, r38482
magicvoice.c: In function 'magicvoice_mmu_translate':
magicvoice.c:1269:27: warning: array subscript -49152 is outside array bounds of 'uint8_t[16384]' {aka 'unsigned char[16384]'} [-Warray-bounds]
 1269 |                     *base = (uint8_t *)(mv_rom - (uint8_t *)0xc000);
      |                     ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
magicvoice.c:132:16: note: while referencing 'mv_rom'
  132 | static uint8_t mv_rom[MV_ROM_SIZE];
      |                ^~~~~~
magicvoice.c:1289:27: warning: array subscript -40960 is outside array bounds of 'uint8_t[16384]' {aka 'unsigned char[16384]'} [-Warray-bounds]
 1289 |                     *base = (uint8_t *)(mv_rom - (uint8_t *)0xa000);
      |                     ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
magicvoice.c:132:16: note: while referencing 'mv_rom'
  132 | static uint8_t mv_rom[MV_ROM_SIZE];
      |                ^~~~~~

....

vsidmem.c: In function 'mem_initialize_memory':
vsidmem.c:532:33: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  532 |         mem_read_base_tab[1][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vsidmem.c:81:9: note: while referencing 'mem_chargen_rom'
   81 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
vsidmem.c:533:33: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  533 |         mem_read_base_tab[2][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vsidmem.c:81:9: note: while referencing 'mem_chargen_rom'
   81 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
vsidmem.c:534:33: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  534 |         mem_read_base_tab[3][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vsidmem.c:81:9: note: while referencing 'mem_chargen_rom'
   81 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
vsidmem.c:535:33: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  535 |         mem_read_base_tab[9][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vsidmem.c:81:9: note: while referencing 'mem_chargen_rom'
   81 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
vsidmem.c:536:34: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  536 |         mem_read_base_tab[10][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vsidmem.c:81:9: note: while referencing 'mem_chargen_rom'
   81 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
vsidmem.c:537:34: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  537 |         mem_read_base_tab[11][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vsidmem.c:81:9: note: while referencing 'mem_chargen_rom'
   81 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
vsidmem.c:538:34: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  538 |         mem_read_base_tab[25][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vsidmem.c:81:9: note: while referencing 'mem_chargen_rom'
   81 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
vsidmem.c:539:34: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  539 |         mem_read_base_tab[26][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vsidmem.c:81:9: note: while referencing 'mem_chargen_rom'
   81 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
vsidmem.c:540:34: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  540 |         mem_read_base_tab[27][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vsidmem.c:81:9: note: while referencing 'mem_chargen_rom'
   81 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~

....

c64mem.c: In function 'mem_initialize_memory':
c64mem.c:769:33: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  769 |         mem_read_base_tab[1][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
c64mem.c:87:9: note: while referencing 'mem_chargen_rom'
   87 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
c64mem.c:770:33: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  770 |         mem_read_base_tab[2][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
c64mem.c:87:9: note: while referencing 'mem_chargen_rom'
   87 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
c64mem.c:771:33: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  771 |         mem_read_base_tab[3][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
c64mem.c:87:9: note: while referencing 'mem_chargen_rom'
   87 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
c64mem.c:772:33: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  772 |         mem_read_base_tab[9][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
c64mem.c:87:9: note: while referencing 'mem_chargen_rom'
   87 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
c64mem.c:773:34: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  773 |         mem_read_base_tab[10][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
c64mem.c:87:9: note: while referencing 'mem_chargen_rom'
   87 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
c64mem.c:774:34: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  774 |         mem_read_base_tab[11][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
c64mem.c:87:9: note: while referencing 'mem_chargen_rom'
   87 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
c64mem.c:775:34: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  775 |         mem_read_base_tab[26][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
c64mem.c:87:9: note: while referencing 'mem_chargen_rom'
   87 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
c64mem.c:776:34: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  776 |         mem_read_base_tab[27][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
c64mem.c:87:9: note: while referencing 'mem_chargen_rom'
   87 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~

....

c64memsc.c: In function 'mem_initialize_memory':
c64memsc.c:718:33: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  718 |         mem_read_base_tab[1][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
c64memsc.c:90:9: note: while referencing 'mem_chargen_rom'
   90 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
c64memsc.c:719:33: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  719 |         mem_read_base_tab[2][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
c64memsc.c:90:9: note: while referencing 'mem_chargen_rom'
   90 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
c64memsc.c:720:33: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  720 |         mem_read_base_tab[3][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
c64memsc.c:90:9: note: while referencing 'mem_chargen_rom'
   90 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
c64memsc.c:721:33: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  721 |         mem_read_base_tab[9][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
c64memsc.c:90:9: note: while referencing 'mem_chargen_rom'
   90 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
c64memsc.c:722:34: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  722 |         mem_read_base_tab[10][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
c64memsc.c:90:9: note: while referencing 'mem_chargen_rom'
   90 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
c64memsc.c:723:34: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  723 |         mem_read_base_tab[11][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
c64memsc.c:90:9: note: while referencing 'mem_chargen_rom'
   90 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
c64memsc.c:724:34: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  724 |         mem_read_base_tab[26][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
c64memsc.c:90:9: note: while referencing 'mem_chargen_rom'
   90 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~
c64memsc.c:725:34: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
  725 |         mem_read_base_tab[27][i] = (uint8_t *)(mem_chargen_rom - (uint8_t *)0xd000);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
c64memsc.c:90:9: note: while referencing 'mem_chargen_rom'
   90 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
      |         ^~~~~~~~~~~~~~~

NOTE remaining warnings are expected as Compyx describes below

c64dtvcpu.c:537:2: warning: #warning "CPUMEMHISTORY implementation for x64dtv is incomplete" [-Wcpp]
  537 | #warning "CPUMEMHISTORY implementation for x64dtv is incomplete"
      |  ^~~~~~~

c128cpu.c:123:2: warning: #warning "CPUMEMHISTORY implementation for x128 is incomplete" [-Wcpp]
  123 | #warning "CPUMEMHISTORY implementation for x128 is incomplete"
      |  ^~~~~~~

petcpu.c:69:2: warning: #warning "CPUMEMHISTORY implementation for xpet is incomplete" [-Wcpp]
   69 | #warning "CPUMEMHISTORY implementation for xpet is incomplete"
      |  ^~~~~~~

plus4cpu.c:40:2: warning: #warning "CPUMEMHISTORY implementation for xplus4 is incomplete" [-Wcpp]
   40 | #warning "CPUMEMHISTORY implementation for xplus4 is incomplete"
      |  ^~~~~~~

cbm2cpu.c:68:2: warning: #warning "CPUMEMHISTORY implementation for xcbm2 is incomplete" [-Wcpp]
   68 | #warning "CPUMEMHISTORY implementation for xcbm2 is incomplete"
      |  ^~~~~~~

This is normal behaviour when configuring with --enable-cpuhistory, serves as a reminder to us that CPU history recording hasn't been properly implemented for those machines. (Compyx, 2019-11-19)

clang

Other diagnostic tools

IWYU - include-what-you-use

IWYU (https://github.com/include-what-you-use/include-what-you-use) is a tool that scans a codebase and reports on #include's that are used, might be missing and may not be needed. It should also report on forward declarations and maybe suggest using those (haven't figured that out yet).

It requires clang/llvm and building the actual tool from source using CMake. The instructions could be better and some stuff doesn't work quite right when following the instructions, but it can built and used (TODO: add instructions on how to properly build and use it (the instructions on copying clang's include/ are wrong and few deps on Debian are missing)).

Currently it has some false positives when using it on Gtk3-VICE: especially when it scans any Gtk3 code, it outputs a lot of extra #include's that aren't required, just #include'ing <gtk/gtk.h> will pull in all of the Glib, GIO, GObject, Atk, Pango, Cairo headers our Gtk3 UI requires.

As an example, here's a run on Gtk3-VICE on Linux which was configured with:

$ ../vice/configure --enable-native-gtk3ui --enable-debug-gtk3ui --enable-debug --enable-ethernet --with-pulse --with-alsa --with-jpeg --with-png --with-gif --enable-x64

The resulting report is 1.7MB of plain text, so I put it on my DropBox: https://www.dropbox.com/s/rr0v8nz3xyx8dn7/iwyu-clang6-vice-r36405.log?dl=0