Warnings: Difference between revisions

From vice-emu
Jump to navigation Jump to search
(4 intermediate revisions by 2 users not shown)
Line 3: Line 3:
== GCC ==
== GCC ==


* Strobe, MSYS2 x64 Gtk3, r37189
* Strobe, MSYS2 x64 Gtk3, r38482
 
<pre>
Making all in 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
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
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
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
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/shared
</pre>
 
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)
 
* Compyx, MSYS2 x64, Gtk3, r37554M (updated Gtk3 to 3.24.14, GDK to 2.24.3, GLib to 2.64.1)
 
<pre>
make[6]: Entering directory '/home/compyx/vice-trunk/win64-build/src/arch/gtk3/novte'
  CXX      debug.o
  CXX      iso2022.o
  CXX      keymap.o
  CXX      matcher.o
  CXX      ring.o
  CXX      table.o
  CXX      vte.o
  CXX      vteaccess.o
  CXX      vteconv.o
  CXX      vtedraw.o
  CXX      vtegtk.o
  CXX      vterowdata.o
  CXX      vteseq.o
  CXX      vtestream.o
In file included from C:/msys64/mingw64/lib/glib-2.0/include/glibconfig.h:9,
                from C:/msys64/mingw64/include/glib-2.0/glib/gtypes.h:32,
                from C:/msys64/mingw64/include/glib-2.0/glib/galloca.h:32,
                from C:/msys64/mingw64/include/glib-2.0/glib.h:30,
                from ../../../../../vice/src/arch/gtk3/novte/vtegtk.cc:42:
../../../../../vice/src/arch/gtk3/novte/vtegtk.cc: In function 'void vte_terminal_set_color_background(NoVteTerminal*, const GdkRGBA*)':
C:/msys64/mingw64/include/glib-2.0/glib/gmacros.h:928:4: warning: nonnull argument 'background' compared to NULL [-Wnonnull-compare]
  928 |    if (expr)                                    \
      |    ^~
C:/msys64/mingw64/include/glib-2.0/glib/gmacros.h:934:43: note: in expansion of macro '_G_BOOLEAN_EXPR'
  934 | #define G_LIKELY(expr) (__builtin_expect (_G_BOOLEAN_EXPR(expr), 1))
      |                                          ^~~~~~~~~~~~~~~
C:/msys64/mingw64/include/glib-2.0/glib/gmessages.h:624:9: note: in expansion of macro 'G_LIKELY'
  624 |    if (G_LIKELY (expr)) \
      |        ^~~~~~~~
../../../../../vice/src/arch/gtk3/novte/vtegtk.cc:2333:5: note: in expansion of macro 'g_return_if_fail'
2333 |    g_return_if_fail(background != NULL);
      |    ^~~~~~~~~~~~~~~~
../../../../../vice/src/arch/gtk3/novte/vtegtk.cc: In function 'void vte_terminal_get_geometry_hints(NoVteTerminal*, GdkGeometry*, int, int)':
C:/msys64/mingw64/include/glib-2.0/glib/gmacros.h:928:4: warning: nonnull argument 'hints' compared to NULL [-Wnonnull-compare]
  928 |    if (expr)                                    \
      |    ^~
C:/msys64/mingw64/include/glib-2.0/glib/gmacros.h:934:43: note: in expansion of macro '_G_BOOLEAN_EXPR'
  934 | #define G_LIKELY(expr) (__builtin_expect (_G_BOOLEAN_EXPR(expr), 1))
      |                                          ^~~~~~~~~~~~~~~
C:/msys64/mingw64/include/glib-2.0/glib/gmessages.h:624:9: note: in expansion of macro 'G_LIKELY'
  624 |    if (G_LIKELY (expr)) \
      |        ^~~~~~~~
../../../../../vice/src/arch/gtk3/novte/vtegtk.cc:2901:5: note: in expansion of macro 'g_return_if_fail'
2901 |    g_return_if_fail(hints != NULL);
      |    ^~~~~~~~~~~~~~~~
</pre>
 
* Compyx, msys2 x64, gcc 10.1.0, trunk r37979


<pre>
<pre>
Line 100: Line 19:
   132 | static uint8_t mv_rom[MV_ROM_SIZE];
   132 | static uint8_t mv_rom[MV_ROM_SIZE];
       |                ^~~~~~
       |                ^~~~~~
....
vsidmem.c: In function 'mem_initialize_memory':
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]
vsidmem.c:532:33: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
Line 155: Line 77:
   81 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
   81 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
       |        ^~~~~~~~~~~~~~~
       |        ^~~~~~~~~~~~~~~
....
c64mem.c: In function 'mem_initialize_memory':
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]
c64mem.c:769:33: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
Line 204: Line 129:
   87 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
   87 | uint8_t mem_chargen_rom[C64_CHARGEN_ROM_SIZE];
       |        ^~~~~~~~~~~~~~~
       |        ^~~~~~~~~~~~~~~
....
c64memsc.c: In function 'mem_initialize_memory':
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]
c64memsc.c:718:33: warning: array subscript -53248 is outside array bounds of 'uint8_t[4096]' {aka 'unsigned char[4096]'} [-Warray-bounds]
Line 254: Line 182:
       |        ^~~~~~~~~~~~~~~
       |        ^~~~~~~~~~~~~~~
</pre>
</pre>
 
NOTE remaining warnings are expected as Compyx describes below
== clang ==
 
* compyx (x86, Linux/Debian, 64bit, clang 10.0.1, Gtk3) VICE trunk r38146
 
Configure line:
<pre>./configure CC=clang-10 CXX=clang++-10 LD=lld-10 --enable-native-gtk3ui --enable-debug-gtk3ui --enable-debug --enable-ethernet --enable-cpuhistory --enable-x64 --enable-realdevice --enable-external-ffmpeg --with-alsa --with-pulse --with-gif --with-jpeg --with-png --enable-arch=yes --program-suffix=-gtk3 --enable-new8580filter</pre>
 
<b>(Warning: 1400+ lines)</b>
<pre>
<pre>
Making all in src
c64dtvcpu.c:537:2: warning: #warning "CPUMEMHISTORY implementation for x64dtv is incomplete" [-Wcpp]
generating svnversion.h
  537 | #warning "CPUMEMHISTORY implementation for x64dtv is incomplete"
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
/home/compyx/vice-trunk/vice/src/samplerdrv/file_drv.c:2095:21: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
        file_size = ftell(sample_file);
                  ~ ^~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/samplerdrv/file_drv.c:2105:38: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
            sound_cycles_per_frame = machine_get_cycles_per_frame();
                                  ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/samplerdrv/file_drv.c:2106:68: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
            sound_frames_per_sec = machine_get_cycles_per_second() / sound_cycles_per_frame;
                                ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
3 warnings generated.
Making all in joyport
Making all in sounddrv
Making all in mididrv
/home/compyx/vice-trunk/vice/src/mididrv/midi-unix-drv.c:408:16: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    alsa_err = snd_midi_event_decode(midi_event_parser, buf, sizeof(buf), ev);
            ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.
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
Making all in iec128dcr
Making all in iecieee
Making all in ieee
Making all in tcbm
/home/compyx/vice-trunk/vice/src/drive/rotation.c:195:38: warning: implicit conversion loses integer precision: 'unsigned long' to 'uint32_t' (aka 'unsigned int') [-Wshorten-64-to-32]
        rotation[dnr].accum = drive->snap_accum;
                            ~ ~~~~~~~^~~~~~~~~~
1 warning generated.
Making all in vdrive
/home/compyx/vice-trunk/vice/src/vdrive/vdrive-command.c:304:18: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
        *p[ip] = strtol(bp, &bp, 10);
              ~ ^~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/vdrive/vdrive-command.c:1195:22: warning: implicit conversion loses integer precision: 'unsigned long' to 'int' [-Wshorten-64-to-32]
            length = strlen(message);
                  ~ ^~~~~~~~~~~~~~~
2 warnings generated.
Making all in fsdevice
/home/compyx/vice-trunk/vice/src/fsdevice/fsdevice-flush.c:306:16: warning: implicit conversion loses integer precision: 'unsigned long' to 'unsigned int' [-Wshorten-64-to-32]
    length = 6 + ((realarg != NULL) ? strlen(realarg) : 0); /* FIXME */
          ~ ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/fsdevice/fsdevice-flush.c:318:16: warning: implicit conversion loses integer precision: 'unsigned long' to 'unsigned int' [-Wshorten-64-to-32]
    length = 6 + ((realarg != NULL) ? strlen(realarg) : 0); /* FIXME */
          ~ ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/fsdevice/fsdevice-flush.c:330:16: warning: implicit conversion loses integer precision: 'unsigned long' to 'unsigned int' [-Wshorten-64-to-32]
    length = 5 + ((realarg != NULL) ? strlen(realarg) : 0); /* FIXME */
          ~ ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/fsdevice/fsdevice-open.c:79:9: warning: implicit conversion loses integer precision: 'unsigned long' to 'int' [-Wshorten-64-to-32]
    n = strlen((char*)p);
      ~ ^~~~~~~~~~~~~~~~
1 warning generated.
3 warnings generated.
Making all in diskimage
/home/compyx/vice-trunk/vice/src/diskimage/fsimage-gcr.c:236:19: warning: implicit conversion loses integer precision: 'unsigned long' to 'int' [-Wshorten-64-to-32]
            res = fwrite(padding, gap, 1, fsimage->fd);
                ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/diskimage/fsimage-gcr.c:245:39: warning: implicit conversion loses integer precision: 'long' to 'uint32_t' (aka 'unsigned int') [-Wshorten-64-to-32]
            util_dword_to_le_buf(buf, offset);
            ~~~~~~~~~~~~~~~~~~~~      ^~~~~~
/home/compyx/vice-trunk/vice/src/diskimage/fsimage-p64.c:60:13: warning: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32]
    lSize = util_file_length(fsimage->fd);
          ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/diskimage/fsimage-probe.c:136:35: warning: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32]
        fsimage->error_info.len = checkimage_blocks;
                                ~ ^~~~~~~~~~~~~~~~~
1 warning generated.
2 warnings generated.
1 warning generated.
Making all in iecbus
Making all in serial
/home/compyx/vice-trunk/vice/src/serial/serial-iec-device.c:364:34: warning: implicit conversion loses integer precision: 'long' to 'CLOCK' (aka 'unsigned int') [-Wshorten-64-to-32]
        iec->timeout = clk_value + US2CYCLES(100);
                    ~ ~~~~~~~~~~^~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/serial/serial-iec-device.c:486:46: warning: implicit conversion loses integer precision: 'long' to 'CLOCK' (aka 'unsigned int') [-Wshorten-64-to-32]
                    iec->timeout = clk_value + US2CYCLES(200);
                                ~ ~~~~~~~~~~^~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/serial/serial-iec-device.c:506:46: warning: implicit conversion loses integer precision: 'long' to 'CLOCK' (aka 'unsigned int') [-Wshorten-64-to-32]
                    iec->timeout = clk_value + US2CYCLES(60);
                                ~ ~~~~~~~~~~^~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/serial/serial-iec-device.c:637:46: warning: implicit conversion loses integer precision: 'long' to 'CLOCK' (aka 'unsigned int') [-Wshorten-64-to-32]
                    iec->timeout = clk_value + US2CYCLES(80);
                                ~ ~~~~~~~~~~^~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/serial/serial-iec-device.c:720:46: warning: implicit conversion loses integer precision: 'long' to 'CLOCK' (aka 'unsigned int') [-Wshorten-64-to-32]
                    iec->timeout = clk_value + US2CYCLES(60);
                                ~ ~~~~~~~~~~^~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/serial/serial-iec-device.c:748:46: warning: implicit conversion loses integer precision: 'long' to 'CLOCK' (aka 'unsigned int') [-Wshorten-64-to-32]
                    iec->timeout = clk_value + US2CYCLES(60);
                                ~ ~~~~~~~~~~^~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/serial/serial-iec-device.c:759:46: warning: implicit conversion loses integer precision: 'long' to 'CLOCK' (aka 'unsigned int') [-Wshorten-64-to-32]
                    iec->timeout = clk_value + US2CYCLES(1000);
                                ~ ~~~~~~~~~~^~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/serial/serial-iec-device.c:799:46: warning: implicit conversion loses integer precision: 'long' to 'CLOCK' (aka 'unsigned int') [-Wshorten-64-to-32]
                    iec->timeout = clk_value + US2CYCLES(100);
                                ~ ~~~~~~~~~~^~~~~~~~~~~~~~~~
8 warnings generated.
Making all in parallel
Making all in tape
/home/compyx/vice-trunk/vice/src/tape/tape-snapshot.c:100:19: warning: implicit conversion loses integer precision: 'long' to 'uint32_t' (aka 'unsigned int') [-Wshorten-64-to-32]
    if (SMW_DW(m, tap_size)) {
        ~~~~~~    ^~~~~~~~/home/compyx/vice-trunk/vice/src/tape/tap.c
:1106:16: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    startCBM = ftell(tap->fd);
            ~ ^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/tape/tap.c:1117:24/home/compyx/vice-trunk/vice/src/tape/tape-snapshot.c: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
        int startpos = ftell(tap->fd);:169:23: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
    SMR_BA(m, buffer, tap_size);
            ~~~~~~~~  ^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/tape/tap.c
    ~~~~~~            ^~~~~~~~
:1207:32: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
                    startCBM = pos[i + 1];
                            ~ ^~~~~~~~~~
/home/compyx/vice-trunk/vice/src/tape/tap.c:1223:35: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
                        startTT = pos[i + 1];
                                ~ ^~~~~~~~~~
/home/compyx/vice-trunk/vice/src/tape/tap.c:1231:35: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
                        startTT = pos[i];
                                ~ ^~~~~~
/home/compyx/vice-trunk/vice/src/tape/tap.c:1236:35: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
                        startTT = pos[i + 1];
                                ~ ^~~~~~~~~~
/home/compyx/vice-trunk/vice/src/tape/tap.c:1309:47: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
            tap->current_file_seek_position = fpos;
                                            ~ ^~~~
/home/compyx/vice-trunk/vice/src/tape/t64.c:452:12: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    return amount;
    ~~~~~~ ^~~~~~
2 warnings generated.
1 warning generated.
7 warnings generated.
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
/home/compyx/vice-trunk/vice/src/monitor/mon_parse.y:1187:15: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
      return strtol(num, NULL, 16);
      ~~~~~~ ^~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/monitor/mon_parse.y:1191:15: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
      return strtol(num, NULL, 10);
      ~~~~~~ ^~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/monitor/mon_parse.y:1195:15: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
      return strtol(num, NULL, 8);
      ~~~~~~ ^~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/monitor/mon_parse.y:1198:11: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
  return strtol(num, NULL, 2);
  ~~~~~~ ^~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/monitor/mon_parse.y:1226:24: warning: implicit conversion loses integer precision: 'long' to 'MON_ADDR' (aka 'unsigned int') [-Wshorten-64-to-32]
            range[1] = new_addr(memspace, strtol(end, NULL, 16));
                    ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/monitor/montypes.h:210:41: note: expanded from macro 'new_addr'
#define new_addr(m, l) (LO16_TO_HI16(m) | (l))
                        ~~~~~~~~~~~~~~~~^~~~~
/home/compyx/vice-trunk/vice/src/monitor/mon_parse.y:1247:16: warning: implicit conversion loses integer precision: 'long' to 'MON_ADDR' (aka 'unsigned int') [-Wshorten-64-to-32]
    range[0] = new_addr(memspace, sa);
            ~ ^~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/monitor/montypes.h:210:41: note: expanded from macro 'new_addr'
#define new_addr(m, l) (LO16_TO_HI16(m) | (l))
                        ~~~~~~~~~~~~~~~~^~~~~
/home/compyx/vice-trunk/vice/src/monitor/mon_parse.y:799:14: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
        { yyval.i = strtol(yystack.l_mark[0].str, NULL, 10); }
                  ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/monitor/mon_parse.y:800:14: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
        { yyval.i = strtol(yystack.l_mark[0].str, NULL, 10); }
                  ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/monitor/mon_parse.y:801:14: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
        { yyval.i = strtol(yystack.l_mark[0].str, NULL, 10); }
                  ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/monitor/mon_disassemble.c:1492:49: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
        mon_inc_addr_location(&(dot_addr[mem]), bytes);
        ~~~~~~~~~~~~~~~~~~~~~                  ^~~~~
/home/compyx/vice-trunk/vice/src/monitor/mon_memory.c:55:11: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    len = mon_evaluate_address_range(&start_addr, &end_addr, TRUE, -1);
        ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/monitor/mon_memory.c:88:11: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    len = mon_evaluate_address_range(&start_addr, &end_addr, TRUE, -1);
        ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/monitor/mon_memory.c:119:11: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    len = mon_evaluate_address_range(&start_addr, &end_addr, FALSE,
        ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/monitor/mon_memory.c:157:11: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    len = mon_evaluate_address_range(&start_addr, &end_addr, TRUE, -1);
        ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/monitor/mon_memory.c:300:11: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
    len = mon_evaluate_address_range(&start_addr, &end_addr, FALSE,
        ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/monitor/mon_memory.c:397:11: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
    len = mon_evaluate_address_range(&start_addr, &end_addr, FALSE,
        ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
9 warnings generated.
6 warnings generated.
1 warning generated.
/home/compyx/vice-trunk/vice/src/monitor/monitor.c:520:45: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
            mon_inc_addr_location(end_addr, len);
            ~~~~~~~~~~~~~~~~~~~~~          ^~~
/home/compyx/vice-trunk/vice/src/monitor/mon_lex.l:575:14: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
{ yylval.i = strtol(yytext+1, NULL, 2); return B_NUMBER; }
          ~ ^~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/monitor/mon_lex.l:576:14: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
{ yylval.i = strtol(yytext+1, NULL, 8); return O_NUMBER; }
          ~ ^~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/monitor/mon_lex.l:578:14: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
{ yylval.i = strtol(yytext+1, NULL, 10); return D_NUMBER; }
          ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/monitor/mon_lex.l:581:14: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
{ yylval.i = strtol(yytext+1, NULL, 16); return H_NUMBER; }
          ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/monitor/mon_lex.l:582:14: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
{ yylval.i = strtol(yytext, NULL, 16); return H_NUMBER; }
          ~ ^~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/monitor/monitor.c:1318:11: warning: implicit conversion loses integer precision: 'unsigned long' to 'int' [-Wshorten-64-to-32]
    val = strtoul(param, NULL, 0);
        ~ ^~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/monitor/monitor.c:1525:22: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
        bank = (addr >> 12);
            ~  ~~~~~^~~~~
/home/compyx/vice-trunk/vice/src/monitor/mon_util.c:88:15: warning: implicit conversion loses integer precision: 'unsigned long' to 'int' [-Wshorten-64-to-32]
        len = strlen(buffer);
            ~ ^~~~~~~~~~~~~~
1 warning generated.
5 warnings generated.
3 warnings generated.
Making all in core
/home/compyx/vice-trunk/vice/src/core/ata.c:1428:19: warning: implicit conversion loses integer precision: 'long' to 'uint32_t' (aka 'unsigned int') [-Wshorten-64-to-32]
    SMW_DW(m, pos / drv->sector_size);
    ~~~~~~    ~~~~^~~~~~~~~~~~~~~~~~
1 warning generated.
Making all in rtc
/home/compyx/vice-trunk/vice/src/rtc/rtc.c:63:51: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    return (uint8_t)((bcd) ? int_to_bcd(t.tv_usec / 10000) : t.tv_usec / 10000);
                            ~~~~~~~~~~ ~~~~~~~~~~^~~~~~~
1 warning generated.
Making all in userport
Making all in tapeport
/home/compyx/vice-trunk/vice/src/tapeport/tapecart.c:1329:68: warning: implicit conversion loses integer precision: 'unsigned long' to 'unsigned int' [-Wshorten-64-to-32]
            transmit_1bit(0, (uint8_t *)idstring, strlen(idstring) + 1,
            ~~~~~~~~~~~~~                        ~~~~~~~~~~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/tapeport/tapecart.c:1506:53: warning: implicit conversion loses integer precision: 'long' to 'CLOCK' (aka 'unsigned int') [-Wshorten-64-to-32]
        alarm_set(tapecart_logic_alarm, maincpu_clk + delay);
        ~~~~~~~~~                      ~~~~~~~~~~~~^~~~~~~
/home/compyx/vice-trunk/vice/src/tapeport/tapecart.c:1523:35: warning: implicit conversion loses integer precision: 'long' to 'CLOCK' (aka 'unsigned int') [-Wshorten-64-to-32]
                      maincpu_clk + machine_get_cycles_per_second() / 1000);
                      ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/tapeport/tapecart.c:1569:51: warning: implicit conversion loses integer precision: 'long' to 'CLOCK' (aka 'unsigned int') [-Wshorten-64-to-32]
                                      maincpu_clk + machine_get_cycles_per_second() / 1000);
                                      ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/tapeport/tapecart.c:1585:74: warning: implicit conversion loses integer precision: 'long' to 'CLOCK' (aka 'unsigned int') [-Wshorten-64-to-32]
                alarm_set(tapecart_logic_alarm, maincpu_clk + next_alarm - offset);
                ~~~~~~~~~                      ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
/home/compyx/vice-trunk/vice/src/tapeport/tapecart.c:1669:57: warning: implicit conversion loses integer precision: 'long' to 'CLOCK' (aka 'unsigned int') [-Wshorten-64-to-32]
            alarm_set(tapecart_logic_alarm, maincpu_clk + delta_ticks);
            ~~~~~~~~~                      ~~~~~~~~~~~~^~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/tapeport/tapecart.c:1688:57: warning: implicit conversion loses integer precision: 'long' to 'CLOCK' (aka 'unsigned int') [-Wshorten-64-to-32]
            alarm_set(tapecart_logic_alarm, maincpu_clk + delta_ticks);
            ~~~~~~~~~                      ~~~~~~~~~~~~^~~~~~~~~~~~~
7 warnings generated.
Making all in diag
Making all in c64
Making all in cart
/home/compyx/vice-trunk/vice/src/c64/cart/c64cart.c:859:38: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
    int delay = lib_unsigned_rand(1, machine_get_cycles_per_frame());
                ~~~~~~~~~~~~~~~~~    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.
/home/compyx/vice-trunk/vice/src/c64/cart/freezemachine.c:287:11: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    pos = ftell(fd);
        ~ ^~~~~~~~~
1 warning generated.
/home/compyx/vice-trunk/vice/src/c64/cart/ide64.c:420:11: warning: implicit conversion loses integer precision: 'unsigned long' to 'int' [-Wshorten-64-to-32]
    res = strlen(drive->filename);
        ~ ^~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/c64/cart/ide64.c:480:35: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
            geometry->size = size / ((drive->type == ATA_DRIVE_CD) ? 2048 : 512);
                          ~ ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/c64/cart/ide64.c:1494:39: warning: implicit conversion loses integer precision: 'long' to 'CLOCK' (aka 'unsigned int') [-Wshorten-64-to-32]
        ata_update_timing(drive->drv, machine_get_cycles_per_second());
        ~~~~~~~~~~~~~~~~~            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3 warnings generated.
/home/compyx/vice-trunk/vice/src/c64/cart/mmc64.c:1304:11: warning: implicit conversion loses integer precision: 'unsigned long' to 'int' [-Wshorten-64-to-32]
    ret = fwrite(mmc64_bios, 1, 0x2000 + mmc64_bios_offset, fd);
        ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/c64/cart/ocean.c:218:21: warning: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'unsigned int' [-Wshorten-64-to-32]
        cart_size = size;
                  ~ ^~~~
/home/compyx/vice-trunk/vice/src/c64/cart/ocean.c:244:17: warning: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'unsigned int' [-Wshorten-64-to-32]
    cart_size = rom_size;
              ~ ^~~~~~~~
1 warning generated.
2 warnings generated.
/home/compyx/vice-trunk/vice/src/c64/cart/reu.c:701:12: warning: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32]
    size = util_file_length(fd);
        ~ ^~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/c64/cart/retroreplay.c:1081:11: warning: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32]
    len = util_file_length(fd);
        ~ ^~~~~~~~~~~~~~~~~~~~
1 warning generated.
1 warning generated.
/home/compyx/vice-trunk/vice/src/c64/cart/rrnetmk3.c:419:11: warning: implicit conversion loses integer precision: 'unsigned long' to 'int' [-Wshorten-64-to-32]
    ret = fwrite(rrnetmk3_bios, 1, 0x2000 + rrnetmk3_bios_offset, fd);
        ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.
/home/compyx/vice-trunk/vice/src/c64/cart/supersnapshot4.c:340:11: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    pos = ftell(fd);
        ~ ^~~~~~~~~
1 warning generated.
/home/compyx/vice-trunk/vice/src/c64/cart/georam.c:560:12: warning: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32]
    size = util_file_length(fd);
        ~ ^~~~~~~~~~~~~~~~~~~~
1 warning generated.
/home/compyx/vice-trunk/vice/src/c64/psid.c:887:19: warning: implicit conversion loses integer precision: 'unsigned long' to 'int' [-Wshorten-64-to-32]
    mus_datalen = fread(psid->data, 1, 0xffff - MUS_DATA_MAXLEN, f);
                ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/c64/psid.c:900:29: warning: implicit conversion loses integer precision: 'unsigned long' to 'int' [-Wshorten-64-to-32]
        n = strlen(strname) - 4;
          ~ ~~~~~~~~~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/c64/vsid.c:225:31: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
    sound_init(machine_timing.cycles_per_sec, machine_timing.cycles_per_rfsh);
    ~~~~~~~~~~ ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/c64/vsid.c:225:62: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
    sound_init(machine_timing.cycles_per_sec, machine_timing.cycles_per_rfsh);
    ~~~~~~~~~~                                ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/c64/vsid.c:399:62: warning: implicit conversion loses integer precision: 'long' to 'CLOCK' (aka 'unsigned int') [-Wshorten-64-to-32]
    clk_guard_set_clk_base(maincpu_clk_guard, machine_timing.cycles_per_rfsh);
    ~~~~~~~~~~~~~~~~~~~~~~                    ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/c64/vsid.c:403:58: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    cia1_set_timing(machine_context.cia1, machine_timing.cycles_per_sec, machine_timing.power_freq);
    ~~~~~~~~~~~~~~~                      ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/c64/vsid.c:404:58: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    cia2_set_timing(machine_context.cia2, machine_timing.cycles_per_sec, machine_timing.power_freq);
    ~~~~~~~~~~~~~~~                      ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
5 warnings generated.
2 warnings generated.
/home/compyx/vice-trunk/vice/src/c64/c64.c:1097:31: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
    sound_init(machine_timing.cycles_per_sec, machine_timing.cycles_per_rfsh);
    ~~~~~~~~~~ ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/c64/c64.c:1097:62: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
    sound_init(machine_timing.cycles_per_sec, machine_timing.cycles_per_rfsh);
    ~~~~~~~~~~                                ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/c64/c64.c:1331:62: warning: implicit conversion loses integer precision: 'long' to 'CLOCK' (aka 'unsigned int') [-Wshorten-64-to-32]
    clk_guard_set_clk_base(maincpu_clk_guard, machine_timing.cycles_per_rfsh);
    ~~~~~~~~~~~~~~~~~~~~~~                    ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/c64/c64.c:1335:58: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    cia1_set_timing(machine_context.cia1, machine_timing.cycles_per_sec, machine_timing.power_freq);
    ~~~~~~~~~~~~~~~                      ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/c64/c64.c:1336:58: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    cia2_set_timing(machine_context.cia2, machine_timing.cycles_per_sec, machine_timing.power_freq);
    ~~~~~~~~~~~~~~~                      ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
5 warnings generated.
Making all in scpu64
In file included from scpu64cpu.c:431:
/home/compyx/vice-trunk/vice/src/main65816cpu.c:214:5: warning: implicit conversion loses integer precision: 'long' to 'CLOCK' (aka 'unsigned int') [-Wshorten-64-to-32]
    CPU_ADDITIONAL_RESET();
    ^~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/scpu64/scpu64cpu.c:415:119: note: expanded from macro 'CPU_ADDITIONAL_RESET'
#define CPU_ADDITIONAL_RESET() (buffer_finish = maincpu_clk, buffer_finish_half = 0, maincpu_accu = 0, maincpu_diff = machine_get_cycles_per_second())
                                                                                                                    ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/scpu64/scpu64.c:897:31: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
    sound_init(machine_timing.cycles_per_sec, machine_timing.cycles_per_rfsh);
    ~~~~~~~~~~ ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/scpu64/scpu64.c:897:62: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
    sound_init(machine_timing.cycles_per_sec, machine_timing.cycles_per_rfsh);
    ~~~~~~~~~~                                ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/scpu64/scpu64.c:1112:62: warning: implicit conversion loses integer precision: 'long' to 'CLOCK' (aka 'unsigned int') [-Wshorten-64-to-32]
    clk_guard_set_clk_base(maincpu_clk_guard, machine_timing.cycles_per_rfsh);
    ~~~~~~~~~~~~~~~~~~~~~~                    ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/scpu64/scpu64.c:1116:58: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    cia1_set_timing(machine_context.cia1, machine_timing.cycles_per_sec, machine_timing.power_freq);
    ~~~~~~~~~~~~~~~                      ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/scpu64/scpu64.c:1117:58: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    cia2_set_timing(machine_context.cia2, machine_timing.cycles_per_sec, machine_timing.power_freq);
    ~~~~~~~~~~~~~~~                      ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
5 warnings generated.
/home/compyx/vice-trunk/vice/src/scpu64/scpu64mem.c:1823:30: warning: implicit conversion loses integer precision: 'unsigned long' to 'unsigned int' [-Wshorten-64-to-32]
    mem_simm_ram_mask = size - 1;
                      ~ ~~~~~^~~
/home/compyx/vice-trunk/vice/src/scpu64/scpu64mem.c:1825:28: warning: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'unsigned int' [-Wshorten-64-to-32]
    ram_init(mem_simm_ram, size);
    ~~~~~~~~              ^~~~
2 warnings generated.
1 warning generated.
Making all in c64dtv
/home/compyx/vice-trunk/vice/src/c64dtv/c64dtvcpu.c:537:2: warning: "CPUMEMHISTORY implementation for x64dtv is incomplete" [-W#warnings]
#warning "CPUMEMHISTORY implementation for x64dtv is incomplete"
^
/home/compyx/vice-trunk/vice/src/c64dtv/c64dtv.c:691:31: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
    sound_init(machine_timing.cycles_per_sec, machine_timing.cycles_per_rfsh);
    ~~~~~~~~~~ ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/c64dtv/c64dtv.c:691:62: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
    sound_init(machine_timing.cycles_per_sec, machine_timing.cycles_per_rfsh);
    ~~~~~~~~~~                                ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/c64dtv/c64dtv.c:861:62: warning: implicit conversion loses integer precision: 'long' to 'CLOCK' (aka 'unsigned int') [-Wshorten-64-to-32]
    clk_guard_set_clk_base(maincpu_clk_guard, machine_timing.cycles_per_rfsh);
    ~~~~~~~~~~~~~~~~~~~~~~                    ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/c64dtv/c64dtv.c:864:58: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    cia1_set_timing(machine_context.cia1, machine_timing.cycles_per_sec, machine_timing.power_freq);
    ~~~~~~~~~~~~~~~                      ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/c64dtv/c64dtv.c:865:58: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    cia2_set_timing(machine_context.cia2, machine_timing.cycles_per_sec, machine_timing.power_freq);
    ~~~~~~~~~~~~~~~                      ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
5 warnings generated.
1 warning generated.
Making all in c128
/home/compyx/vice-trunk/vice/src/c128/c128.c:1131:31: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
    sound_init(machine_timing.cycles_per_sec, machine_timing.cycles_per_rfsh);
    ~~~~~~~~~~ ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/c128/c128.c:1131:62: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
    sound_init(machine_timing.cycles_per_sec, machine_timing.cycles_per_rfsh);
    ~~~~~~~~~~                                ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/c128/c128.c:1341:62: warning: implicit conversion loses integer precision: 'long' to 'CLOCK' (aka 'unsigned int') [-Wshorten-64-to-32]
    clk_guard_set_clk_base(maincpu_clk_guard, machine_timing.cycles_per_rfsh);
    ~~~~~~~~~~~~~~~~~~~~~~                    ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/c128/c128.c:1345:58: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    cia1_set_timing(machine_context.cia1, machine_timing.cycles_per_sec, machine_timing.power_freq);
    ~~~~~~~~~~~~~~~                      ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/c128/c128.c:1346:58: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    cia2_set_timing(machine_context.cia2, machine_timing.cycles_per_sec, machine_timing.power_freq);
    ~~~~~~~~~~~~~~~                      ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/c128/c128cpu.c:123:2: warning: "CPUMEMHISTORY implementation for x128 is incomplete" [-W#warnings]
#warning "CPUMEMHISTORY implementation for x128 is incomplete"
^
5 warnings generated.
1 warning generated.
Making all in vic20
Making all in cart
/home/compyx/vice-trunk/vice/src/vic20/cart/finalexpansion.c:695:21: warning: implicit conversion loses integer precision: 'unsigned long' to 'int' [-Wshorten-64-to-32]
                n = fwrite(flash_state.flash_data, (size_t)CART_ROM_SIZE, 1, fd);
                  ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/vic20/cart/ultimem.c:677:21: warning: implicit conversion loses integer precision: 'unsigned long' to 'int' [-Wshorten-64-to-32]
                n = fwrite(flash_state.flash_data, cart_rom_size, 1, fd);
                  ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/vic20/cart/ultimem.c:773:33: warning: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'unsigned int' [-Wshorten-64-to-32]
        || (SMW_BA(m, cart_ram, cart_ram_size) < 0)
            ~~~~~~              ^~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/vic20/cart/ultimem.c:774:33: warning: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'unsigned int' [-Wshorten-64-to-32]
        || (SMW_BA(m, cart_rom, cart_rom_size) < 0)) {
            ~~~~~~              ^~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/vic20/cart/ultimem.c:834:33: warning: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'unsigned int' [-Wshorten-64-to-32]
        || (SMR_BA(m, cart_ram, cart_ram_size) < 0)
            ~~~~~~              ^~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/vic20/cart/ultimem.c:835:33: warning: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'unsigned int' [-Wshorten-64-to-32]
        || (SMR_BA(m, cart_rom, cart_rom_size) < 0)) {
            ~~~~~~              ^~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/vic20/cart/vic-fp.c:370:21: warning: implicit conversion loses integer precision: 'unsigned long' to 'int' [-Wshorten-64-to-32]
                n = fwrite(flash_state.flash_data, (size_t)CART_ROM_SIZE, 1, fd);
                  ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.
/home/compyx/vice-trunk/vice/src/vic20/cart/vic20-generic.c:230:11: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
    len = ftell(fd);
        ~ ^~~~~~~~~
1 warning generated.
5 warnings generated.
1 warning generated.
/home/compyx/vice-trunk/vice/src/vic20/vic20.c:980:31: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
    sound_init(machine_timing.cycles_per_sec, machine_timing.cycles_per_rfsh);
    ~~~~~~~~~~ ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/vic20/vic20.c:980:62: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
    sound_init(machine_timing.cycles_per_sec, machine_timing.cycles_per_rfsh);
    ~~~~~~~~~~                                ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/vic20/vic20.c:1170:62: warning: implicit conversion loses integer precision: 'long' to 'CLOCK' (aka 'unsigned int') [-Wshorten-64-to-32]
    clk_guard_set_clk_base(maincpu_clk_guard, machine_timing.cycles_per_rfsh);
    ~~~~~~~~~~~~~~~~~~~~~~                    ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
3 warnings generated.
Making all in pet
/home/compyx/vice-trunk/vice/src/pet/pet.c:695:31: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
    sound_init(machine_timing.cycles_per_sec, machine_timing.cycles_per_rfsh);
    ~~~~~~~~~~ ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/pet/pet.c:695:62: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
    sound_init(machine_timing.cycles_per_sec, machine_timing.cycles_per_rfsh);
    ~~~~~~~~~~                                ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
2 warnings generated.
/home/compyx/vice-trunk/vice/src/pet/petcpu.c:69:2: warning: "CPUMEMHISTORY implementation for xpet is incomplete" [-W#warnings]
#warning "CPUMEMHISTORY implementation for xpet is incomplete"
^
1 warning generated.
Making all in plus4
/home/compyx/vice-trunk/vice/src/plus4/plus4.c:828:31: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
    sound_init(machine_timing.cycles_per_sec, machine_timing.cycles_per_rfsh);
    ~~~~~~~~~~ ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/plus4/plus4.c:828:62: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
    sound_init(machine_timing.cycles_per_sec, machine_timing.cycles_per_rfsh);
    ~~~~~~~~~~                                ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/plus4/plus4.c:1014:62: warning: implicit conversion loses integer precision: 'long' to 'CLOCK' (aka 'unsigned int') [-Wshorten-64-to-32]
    clk_guard_set_clk_base(maincpu_clk_guard, machine_timing.cycles_per_rfsh);
    ~~~~~~~~~~~~~~~~~~~~~~                    ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
3 warnings generated.
/home/compyx/vice-trunk/vice/src/plus4/plus4cpu.c:40:2: warning: "CPUMEMHISTORY implementation for xplus4 is incomplete" [-W#warnings]
#warning "CPUMEMHISTORY implementation for xplus4 is incomplete"
^
1 warning generated.
Making all in cbm2
/home/compyx/vice-trunk/vice/src/cbm2/cbm2.c:677:31: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
    sound_init(machine_timing.cycles_per_sec, machine_timing.cycles_per_rfsh);
    ~~~~~~~~~~ ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/cbm2/cbm2.c:677:62: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
    sound_init(machine_timing.cycles_per_sec, machine_timing.cycles_per_rfsh);
    ~~~~~~~~~~                                ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/cbm2/cbm2.c:906:62: warning: implicit conversion loses integer precision: 'long' to 'CLOCK' (aka 'unsigned int') [-Wshorten-64-to-32]
    clk_guard_set_clk_base(maincpu_clk_guard, machine_timing.cycles_per_rfsh);
    ~~~~~~~~~~~~~~~~~~~~~~                    ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/cbm2/cbm2.c:908:58: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    cia1_set_timing(machine_context.cia1, machine_timing.cycles_per_sec, machine_timing.power_freq);
    ~~~~~~~~~~~~~~~                      ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
4 warnings generated.
/home/compyx/vice-trunk/vice/src/cbm2/cbm2cpu.c:68:2: warning: "CPUMEMHISTORY implementation for xcbm2 is incomplete" [-W#warnings]
#warning "CPUMEMHISTORY implementation for xcbm2 is incomplete"
^
/home/compyx/vice-trunk/vice/src/cbm2/cbm5x0.c:689:31: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
    sound_init(machine_timing.cycles_per_sec, machine_timing.cycles_per_rfsh);
    ~~~~~~~~~~ ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/cbm2/cbm5x0.c:689:62: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
    sound_init(machine_timing.cycles_per_sec, machine_timing.cycles_per_rfsh);
    ~~~~~~~~~~                                ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/cbm2/cbm5x0.c:879:62: warning: implicit conversion loses integer precision: 'long' to 'CLOCK' (aka 'unsigned int') [-Wshorten-64-to-32]
    clk_guard_set_clk_base(maincpu_clk_guard, machine_timing.cycles_per_rfsh);
    ~~~~~~~~~~~~~~~~~~~~~~                    ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/cbm2/cbm5x0.c:882:58: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    cia1_set_timing(machine_context.cia1, machine_timing.cycles_per_sec, machine_timing.power_freq);
    ~~~~~~~~~~~~~~~                      ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
4 warnings generated.
1 warning generated.
Making all in arch
Making all in shared
/home/compyx/vice-trunk/vice/src/arch/shared/archdep_stat.c:61:20: warning: implicit conversion loses integer precision: '__off_t' (aka 'long') to 'unsigned int' [-Wshorten-64-to-32]
    *len = statbuf.st_size;
        ~ ~~~~~~~~^~~~~~~
1 warning generated.
Making all in gtk3
Making all in data
Making all in novte
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/iso2022.cc:173:56: warning: implicit conversion loses integer precision: 'long' to 'guint' (aka 'unsigned int') [-Wshorten-64-to-32]
    g_array_set_size(gunichars, gunichars->len + outbuf-buf);
    ~~~~~~~~~~~~~~~~            ~~~~~~~~~~~~~~~~~~~~~~~^~~~
1 warning generated.
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/table.cc:97:38: warning: implicit conversion loses integer precision: 'long' to 'guint' (aka 'unsigned int') [-Wshorten-64-to-32]
        head->stack_allocated = last - &head->stack[0];
                              ~ ~~~~~^~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/table.cc:214:64: warning: implicit conversion loses integer precision: 'gssize' (aka 'long') to 'guint' (aka 'unsigned int') [-Wshorten-64-to-32]
        table->original = (unsigned char *) g_memdup(original, original_length);
                                            ~~~~~~~~          ^~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/table.cc:245:43: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
                initial = original_length - length;
                        ~ ~~~~~~~~~~~~~~~~^~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/table.cc:249:75: warning: implicit conversion loses integer precision: 'long' to 'guint' (aka 'unsigned int') [-Wshorten-64-to-32]
                g_byte_array_append(b, (const guint8*)pattern + 2, length - 2);
                ~~~~~~~~~~~~~~~~~~~                                ~~~~~~~^~~
4 warnings generated.
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteconv.cc/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/ring.cc:1015:29: warning: implicit conversion loses integer precision: 'gulong' (aka 'unsigned long') to 'gint' (aka 'int') [-Wshorten-64-to-32]
        offset->eol_cells = column;
                          ~ ^~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/ring.cc:1059:49: warning: implicit conversion loses integer precision: 'unsigned long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                offset->fragment_cells = column - i;
                                      ~ ~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/ring.cc:1066:36: warning: implicit conversion loses integer precision: 'unsigned long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
        offset->eol_cells = column - i;
                          ~ ~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/ring.cc:1137:31: warning: implicit conversion loses integer precision: 'unsigned long' to 'unsigned int' [-Wshorten-64-to-32]
    off = offset->text_offset - records[0].text_start_offset;
        ~ ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/ring.cc:1346:39: warning: implicit conversion loses integer precision: 'gsize' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32]
                        int len = MIN(runlength, (gsize) (columns - col));
                            ~~~       ^~~~~~~~~
/usr/include/glib-2.0/glib/gmacros.h:336:36: note: expanded from macro 'MIN'
#define MIN(a, b)  (((a) < (b)) ? (a) : (b))
                                  ^
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/ring.cc:1346:50: warning: implicit conversion loses integer precision: 'gsize' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32]
                        int len = MIN(runlength, (gsize) (columns - col));
                            ~~~                  ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/glib/gmacros.h:336:42: note: expanded from macro 'MIN'
#define MIN(a, b)  (((a) < (b)) ? (a) : (b))
                                        ^
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/ring.cc:1358:43: warning: implicit conversion loses integer precision: 'gsize' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32]
                        textbuf_len = MIN(runlength, sizeof (textbuf));
                                    ~    ^~~~~~~~~
/usr/include/glib-2.0/glib/gmacros.h:336:36: note: expanded from macro 'MIN'
#define MIN(a, b)  (((a) < (b)) ? (a) : (b))
                                  ^
:261:36: warning: implicit conversion loses integer precision: 'unsigned long' to 'int' [-Wshorten-64-to-32]
        char_count = *inbytes_left / sizeof(gunichar);
                  ~ ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteconv.cc:327:21: warning: implicit conversion loses integer precision: 'gsize' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32]
        int  left = *outbytes_left;
            ~~~~  ^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/keymap.cc:755:56: warning: implicit conversion loses integer precision: 'const gssize' (aka 'const long') to 'guint' (aka 'unsigned int') [-Wshorten-64-to-32]
                                            entries[i].normal_length);
                                            ~~~~~~~~~~~^~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/keymap.cc:999:34: warning: implicit conversion loses integer precision: 'unsigned long' to 'int' [-Wshorten-64-to-32]
        offset = strlen(nnormal) - 1;
              ~ ~~~~~~~~~~~~~~~~^~~
2 warnings generated.
2 warnings generated.
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteaccess.cc:293:26: warning: implicit conversion loses integer precision: 'long' to 'guint' (aka 'unsigned int') [-Wshorten-64-to-32]
                i = next - priv->snapshot_text->str;
                  ~ ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteaccess.cc:344:32: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
        priv->snapshot_caret = caret;
                            ~ ^~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteaccess.cc:553:40: warning: implicit conversion loses integer precision: 'gsize' (aka 'unsigned long') to 'guint' (aka 'unsigned int') [-Wshorten-64-to-32]
            len = priv->snapshot_text->len;
                ~ ~~~~~~~~~~~~~~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteaccess.cc:585:17: warning: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'guint' (aka 'unsigned int') [-Wshorten-64-to-32]
            i = strlen(priv->snapshot_text->str + i);
              ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteaccess.cc:593:40: warning: implicit conversion loses integer precision: 'gsize' (aka 'unsigned long') to 'guint' (aka 'unsigned int') [-Wshorten-64-to-32]
            len = priv->snapshot_text->len;
                ~ ~~~~~~~~~~~~~~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteaccess.cc:813:36: warning: implicit conversion loses integer precision: 'gsize' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32]
        end = priv->snapshot_text->len;
            ~ ~~~~~~~~~~~~~~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteaccess.cc:1265:14: warning: implicit conversion loses integer precision: 'glong' (aka 'long') to 'gint' (aka 'int') [-Wshorten-64-to-32]
    *width = cell_width;
          ~ ^~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteaccess.cc:1266:15: warning: implicit conversion loses integer precision: 'glong' (aka 'long') to 'gint' (aka 'int') [-Wshorten-64-to-32]
    *height = cell_height;
            ~ ^~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteaccess.cc:1347:53: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
    *start_offset = offset_from_xy (priv, start_sel.col, start_sel.row);
                    ~~~~~~~~~~~~~~        ~~~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteaccess.cc:1347:68: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
    *start_offset = offset_from_xy (priv, start_sel.col, start_sel.row);
                    ~~~~~~~~~~~~~~                      ~~~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteaccess.cc:1348:49: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
    *end_offset = offset_from_xy (priv, end_sel.col, end_sel.row);
                  ~~~~~~~~~~~~~~        ~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteaccess.cc:1348:62: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
    *end_offset = offset_from_xy (priv, end_sel.col, end_sel.row);
                  ~~~~~~~~~~~~~~                    ~~~~~~~~^~~
7 warnings generated.
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:352:42: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    rect.x = column_start * m_cell_width - 1;
          ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:354:62: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    int xend = (column_start + n_columns) * m_cell_width + 1 + 1;
        ~~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:357:38: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    rect.y = row_to_pixel(row_start) - 1;
          ~ ~~~~~~~~~~~~~~~~~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:358:49: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    int yend = row_to_pixel(row_start + n_rows) + 1;
        ~~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:388:53: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
        invalidate_cells(scolumn, ecolumn - scolumn + 1, srow, erow - srow + 1);
        ~~~~~~~~~~~~~~~~          ~~~~~~~~~~~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:388:76: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
        invalidate_cells(scolumn, ecolumn - scolumn + 1, srow, erow - srow + 1);
        ~~~~~~~~~~~~~~~~                                      ~~~~~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:390:50: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
        invalidate_cells(scolumn, m_column_count - scolumn, srow, 1);
        ~~~~~~~~~~~~~~~~          ~~~~~~~~~~~~~~~^~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:391:29: warning: implicit conversion loses integer precision: 'vte::grid::column_t' (aka 'long') to 'int' [-Wshorten-64-to-32]
        invalidate_cells(0, m_column_count, srow + 1, erow - srow - 1);
        ~~~~~~~~~~~~~~~~    ^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:391:67: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
        invalidate_cells(0, m_column_count, srow + 1, erow - srow - 1);
        ~~~~~~~~~~~~~~~~                              ~~~~~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:392:37: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
        invalidate_cells(0, ecolumn + 1, erow, 1);
        ~~~~~~~~~~~~~~~~    ~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:453:25: warning: implicit conversion loses integer precision: 'vte::grid::column_t' (aka 'long') to 'int' [-Wshorten-64-to-32]
                    0, m_column_count,
                        ^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:454:27: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
                    row, count);
                          ^~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:610:40: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
                columns = MAX(columns, howmany(right, m_cell_width));
                        ~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:28:36: note: expanded from macro 'howmany'
#define howmany(x,y) (((x)+((y)-1))/(y))
                                  ^
/usr/include/glib-2.0/glib/gmacros.h:333:42: note: expanded from macro 'MAX'
#define MAX(a, b) (((a) > (b)) ? (a) : (b))
                                        ^
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:650:59: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
                _vte_draw_get_char_edges(m_draw, cell->c, columns, style, NULL, &right);
                ~~~~~~~~~~~~~~~~~~~~~~~~                  ^~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:661:34: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
        invalidate_cells(column, columns, row, 1);
        ~~~~~~~~~~~~~~~~        ^~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:873:32: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
        sx = m_selection_start.col;
          ~ ~~~~~~~~~~~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:874:32: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
        sy = m_selection_start.row;
          ~ ~~~~~~~~~~~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:875:30: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
        ex = m_selection_end.col;
          ~ ~~~~~~~~~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:876:30: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
        ey = m_selection_end.row;
          ~ ~~~~~~~~~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:1105:66: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    _vte_ring_get_hyperlink_at_position(m_screen->row_data, row, col, false, &hyperlink);
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                          ^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:1370:59: warning: implicit conversion loses integer precision: 'gsize' (aka 'unsigned long') to 'guint' (aka 'unsigned int') [-Wshorten-64-to-32]
                _vte_byte_array_append(m_outgoing, obuf2, bytes_written);
                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/buffer.h:32:102: note: expanded from macro '_vte_byte_array_append'
#define _vte_byte_array_append(B, data, length)    g_byte_array_append (B, (const guint8 *) (data), length)
                                                    ~~~~~~~~~~~~~~~~~~~                              ^~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:1423:75: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    int delta = m_screen->cursor.row - _vte_ring_next(m_screen->row_data) + 1;
        ~~~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:1453:21: warning: implicit conversion loses integer precision: 'long' to 'guint' (aka 'unsigned int') [-Wshorten-64-to-32]
        insert_rows(delta);
        ~~~~~~~~~~~ ^~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:1667:23: warning: implicit conversion loses integer precision: 'unsigned long' to 'int' [-Wshorten-64-to-32]
            int j = i - 16;
                ~  ~~^~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:1676:27: warning: implicit conversion loses integer precision: 'unsigned long' to 'int' [-Wshorten-64-to-32]
            int shade = 8 + (i - 232) * 10;
                ~~~~~  ~~^~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:1721:25: warning: implicit conversion loses integer precision: 'gsize' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32]
            reset_color(i, VTE_COLOR_SOURCE_API);
            ~~~~~~~~~~~ ^
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:1723:23: warning: implicit conversion loses integer precision: 'gsize' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32]
            set_color(i, VTE_COLOR_SOURCE_API, color);
            ~~~~~~~~~ ^
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:1928:65: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
            cell_end->attr.set_columns(cell_col->attr.columns() - (end - col));
                          ~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:2010:37: warning: implicit conversion loses integer precision: 'vte::grid::column_t' (aka 'long') to 'int' [-Wshorten-64-to-32]
                invalidate_cells(0, m_column_count, end - 2, 2);
                ~~~~~~~~~~~~~~~~    ^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:2289:38: warning: implicit conversion loses integer precision: 'vte::grid::column_t' (aka 'long') to 'int' [-Wshorten-64-to-32]
                            insert ? m_column_count : columns,
                                    ^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:2379:37: warning: implicit conversion loses integer precision: 'unsigned long' to 'guint' (aka 'unsigned int') [-Wshorten-64-to-32]
            chunk->len = chunk->len - processed;
                      ~ ~~~~~~~~~~~^~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:2488:58: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                    bbox_topleft.y = MAX(bbox_topleft.y, top_row);12 warnings generated.


                                  ~                    ^~~~~~~
c128cpu.c:123:2: warning: #warning "CPUMEMHISTORY implementation for x128 is incomplete" [-Wcpp]
/usr/include/glib-2.0/glib/gmacros.h:333:42: note: expanded from macro 'MAX'
  123 | #warning "CPUMEMHISTORY implementation for x128 is incomplete"
#define MAX(a, b)  (((a) > (b)) ? (a) : (b))
      | ^~~~~~~
                                        ^
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:2489:66: warning: implicit conversion loses integer precision: 'vte::grid::column_t' (aka 'long') to 'gint' (aka 'int') [-Wshorten-64-to-32]
                    bbox_bottomright.x = MIN(bbox_bottomright.x, m_column_count);
                                      ~                        ^~~~~~~~~~~~~~
/usr/include/glib-2.0/glib/gmacros.h:336:42: note: expanded from macro 'MIN'
#define MIN(a, b)  (((a) < (b)) ? (a) : (b))
                                        ^
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:2491:81: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                    bbox_bottomright.y = MIN(bbox_bottomright.y + 1, bottom_row + 1);
                                      ~                            ~~~~~~~~~~~^~~
/usr/include/glib-2.0/glib/gmacros.h:336:42: note: expanded from macro 'MIN'
#define MIN(a, b)  (((a) < (b)) ? (a) : (b))
                                        ^
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:2538:39: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
                        for (i = next - wbuf; i > start; i--) {
                              ~ ~~~~~^~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:2562:71: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                bbox_topleft.x = MIN(bbox_topleft.x, m_screen->cursor.col);
                              ~                    ~~~~~~~~~~~~~~~~~^~~
/usr/include/glib-2.0/glib/gmacros.h:336:42: note: expanded from macro 'MIN'
#define MIN(a, b)  (((a) < (b)) ? (a) : (b))
                                        ^
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:2563:71: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                bbox_topleft.y = MIN(bbox_topleft.y, m_screen->cursor.row);
                              ~                    ~~~~~~~~~~~~~~~~~^~~
/usr/include/glib-2.0/glib/gmacros.h:336:42: note: expanded from macro 'MIN'
#define MIN(a, b)  (((a) < (b)) ? (a) : (b))
                                        ^
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:2576:62: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                        bbox_topleft.y = MAX(bbox_topleft.y, top_row);
                                      ~                    ^~~~~~~
/usr/include/glib-2.0/glib/gmacros.h:333:42: note: expanded from macro 'MAX'
#define MAX(a, b)  (((a) > (b)) ? (a) : (b))
                                        ^
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:2577:70: warning: implicit conversion loses integer precision: 'vte::grid::column_t' (aka 'long') to 'gint' (aka 'int') [-Wshorten-64-to-32]
                        bbox_bottomright.x = MIN(bbox_bottomright.x, m_column_count);
                                          ~                        ^~~~~~~~~~~~~~
/usr/include/glib-2.0/glib/gmacros.h:336:42: note: expanded from macro 'MIN'
#define MIN(a, b)  (((a) < (b)) ? (a) : (b))
                                        ^
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:2579:85: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                        bbox_bottomright.y = MIN(bbox_bottomright.y + 1, bottom_row + 1);
                                          ~                            ~~~~~~~~~~~^~~
/usr/include/glib-2.0/glib/gmacros.h:336:42: note: expanded from macro 'MIN'
#define MIN(a, b)  (((a) < (b)) ? (a) : (b))
                                        ^
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:2589:75: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                    bbox_topleft.y = MIN(bbox_topleft.y, m_screen->cursor.row);
                                  ~                    ~~~~~~~~~~~~~~~~~^~~
/usr/include/glib-2.0/glib/gmacros.h:336:42: note: expanded from macro 'MIN'
#define MIN(a, b)  (((a) < (b)) ? (a) : (b))
                                        ^
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:2593:79: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                bbox_bottomright.x = MAX(bbox_bottomright.x, m_screen->cursor.col);
                                  ~                        ~~~~~~~~~~~~~~~~~^~~
/usr/include/glib-2.0/glib/gmacros.h:333:42: note: expanded from macro 'MAX'
#define MAX(a, b) (((a) > (b)) ? (a) : (b))
                                        ^
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:2595:79: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                bbox_bottomright.y = MAX(bbox_bottomright.y, m_screen->cursor.row);
                                  ~                        ~~~~~~~~~~~~~~~~~^~~
/usr/include/glib-2.0/glib/gmacros.h:333:42: note: expanded from macro 'MAX'
#define MAX(a, b)  (((a) > (b)) ? (a) : (b))
                                        ^
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:2645:44: warning: implicit conversion loses integer precision: 'long' to 'guint' (aka 'unsigned int') [-Wshorten-64-to-32]
        g_array_remove_range(m_pending, 0, start);
        ~~~~~~~~~~~~~~~~~~~~              ^~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:2686:46: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
        bbox_topleft.y = MAX(bbox_topleft.y, top_row);
                      ~                    ^~~~~~~
/usr/include/glib-2.0/glib/gmacros.h:333:42: note: expanded from macro 'MAX'
#define MAX(a, b)  (((a) > (b)) ? (a) : (b))
                                        ^
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:2687:54: warning: implicit conversion loses integer precision: 'vte::grid::column_t' (aka 'long') to 'gint' (aka 'int') [-Wshorten-64-to-32]
        bbox_bottomright.x = MIN(bbox_bottomright.x, m_column_count);
                          ~                        ^~~~~~~~~~~~~~
/usr/include/glib-2.0/glib/gmacros.h:336:42: note: expanded from macro 'MIN'
#define MIN(a, b)  (((a) < (b)) ? (a) : (b))
                                        ^
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:2689:69: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
        bbox_bottomright.y = MIN(bbox_bottomright.y + 1, bottom_row + 1);
                          ~                            ~~~~~~~~~~~^~~
/usr/include/glib-2.0/glib/gmacros.h:336:42: note: expanded from macro 'MIN'
#define MIN(a, b)  (((a) < (b)) ? (a) : (b))
                                        ^
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:2944:67: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    rect.x = m_screen->cursor.col * m_cell_width + m_padding.left +
          ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:2946:18: warning: implicit conversion loses integer precision: 'glong' (aka 'long') to 'int' [-Wshorten-64-to-32]
    rect.width = m_cell_width; /* FIXMEchpe: if columns > 1 ? */
              ~ ^~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:2947:49: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    rect.y = row_to_pixel(m_screen->cursor.row) + m_padding.top;
          ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:2948:19: warning: implicit conversion loses integer precision: 'glong' (aka 'long') to 'int' [-Wshorten-64-to-32]
    rect.height = m_cell_height;
                ~ ^~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:4038:45: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    bbox->x = allocation.x + m_padding.left + left * m_cell_width;
            ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:4039:44: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    bbox->y = allocation.y + m_padding.top + row_to_pixel(top);
            ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:4040:38: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    bbox->width = (right - left + 1) * m_cell_width;
                ~ ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:4041:39: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    bbox->height = (bottom - top + 1) * m_cell_height;
                ~ ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:4100:110: warning: implicit conversion loses integer precision: 'vte::grid::column_t' (aka 'long') to 'int' [-Wshorten-64-to-32]
        m_hyperlink_hover_idx = _vte_ring_get_hyperlink_at_position(m_screen->row_data, rowcol.row(), rowcol.column(), true, &m_hyperlink_hover_uri);
                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                  ~~~~~~~^~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:4225:63: warning: implicit conversion loses integer precision: 'gsize' (aka 'unsigned long') to 'gint' (aka 'int') [-Wshorten-64-to-32]
                                            m_selection[sel]->len);
                                            ~~~~~~~~~~~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:4235:45: warning: implicit conversion loses integer precision: 'gsize' (aka 'unsigned long') to 'gint' (aka 'int') [-Wshorten-64-to-32]
                                            len);
                                            ^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:4357:48: warning: implicit conversion loses integer precision: 'gsize' (aka 'unsigned long') to 'guint' (aka 'unsigned int') [-Wshorten-64-to-32]
                                &attr, string->len);
                                      ~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:4388:58: warning: implicit conversion loses integer precision: 'gsize' (aka 'unsigned long') to 'guint' (aka 'unsigned int') [-Wshorten-64-to-32]
                    g_array_set_size(attributes, string->len);
                    ~~~~~~~~~~~~~~~~            ~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:4414:58: warning: implicit conversion loses integer precision: 'gsize' (aka 'unsigned long') to 'guint' (aka 'unsigned int') [-Wshorten-64-to-32]
            vte_g_array_fill (attributes, &attr, string->len);
            ~~~~~~~~~~~~~~~~                    ~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vterowdata.cc:101:45: warning: implicit conversion loses integer precision: 'gulong' (aka 'unsigned long') to 'guint32' (aka 'unsigned int') [-Wshorten-64-to-32]
    row->cells = _vte_cells_realloc (cells, len)->cells;/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:5452:55: warning: implicit conversion loses integer precision: 'vte::view::coord_t' (aka 'long') to 'gint' (aka 'int') [-Wshorten-64-to-32]


                ~~~~~~~~~~~~~~~~~~        ^~~
petcpu.c:69:2: warning: #warning "CPUMEMHISTORY implementation for xpet is incomplete" [-Wcpp]
                                m_mouse_last_position.x,
  69 | #warning "CPUMEMHISTORY implementation for xpet is incomplete"
                                ~~~~~~~~~~~~~~~~~~~~~~^
       |  ^~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:5453:55: warning: implicit conversion loses integer precision: 'vte::view::coord_t' (aka 'long') to 'gint' (aka 'int') [-Wshorten-64-to-32]
                                m_mouse_last_position.y,
                                ~~~~~~~~~~~~~~~~~~~~~~^
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:5454:37: warning: implicit conversion loses integer precision: 'vte::view::coord_t' (aka 'long') to 'gint' (aka 'int') [-Wshorten-64-to-32]
                                pos.x, pos.y)) {
                                ~~~~^
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:5454:44: warning: implicit conversion loses integer precision: 'vte::view::coord_t' (aka 'long') to 'gint' (aka 'int') [-Wshorten-64-to-32]
                                pos.x, pos.y)) {
                                      ~~~~^
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:5876:32: warning: implicit conversion loses integer precision: 'glong' (aka 'long') to 'int' [-Wshorten-64-to-32]
        emit_char_size_changed(m_cell_width, m_cell_height);
        ~~~~~~~~~~~~~~~~~~~~~~ ^~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:5876:46: warning: implicit conversion loses integer precision: 'glong' (aka 'long') to 'int' [-Wshorten-64-to-32]
        emit_char_size_changed(m_cell_width, m_cell_height);
        ~~~~~~~~~~~~~~~~~~~~~~              ^~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:6112:69: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
            int new_ring_next = screen_->insert_delta + m_row_count - drop;
                ~~~~~~~~~~~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:6498:35: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    *minimum_width = m_cell_width * 1;
                  ~ ~~~~~~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:6499:35: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    *natural_width = m_cell_width * m_column_count;
                  ~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:6526:37: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    *minimum_height = m_cell_height * 1;
                    ~ ~~~~~~~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:6527:37: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    *natural_height = m_cell_height * m_row_count;
                    ~ ~~~~~~~~~~~~~~^~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:6790:59: warning: implicit conversion loses integer precision: 'gsize' (aka 'unsigned long') to 'gint' (aka 'int') [-Wshorten-64-to-32]
                                        m_selection[sel]->len);
                                        ~~~~~~~~~~~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:7190:43: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                                        y + m_underline_position,
                                        ~~^~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:7192:90: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                                        y + m_underline_position + m_underline_thickness - 1,
                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:7199:43: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                                        y + m_double_underline_position,
                                        ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:7201:104: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                                        y + m_double_underline_position + m_double_underline_thickness - 1,
                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:7206:73: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                                        y + m_double_underline_position + 2 * m_double_underline_thickness,
                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:7208:108: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                                        y + m_double_underline_position + 3 * m_double_underline_thickness - 1,
                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:7224:39: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                                    y + m_strikethrough_position,
                                    ~~^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:7226:94: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                                    y + m_strikethrough_position + m_strikethrough_thickness - 1,
                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:7233:39: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                                    y + m_overline_position,
                                    ~~^~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:7235:84: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                                    y + m_overline_position + m_overline_thickness - 1,
                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:7242:39: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                                    y + m_regex_underline_position,
                                    ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:7244:98: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                                    y + m_regex_underline_position + m_regex_underline_thickness - 1,
                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:7251:51: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                                                y + m_regex_underline_position,
                                                ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:7253:49: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                                                m_regex_underline_thickness,
                                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:7290:26: warning: implicit conversion loses integer precision: 'gsize' (aka 'unsigned long') to 'guint' (aka 'unsigned int') [-Wshorten-64-to-32]
        props[i].index = sumlen;
                      ~ ^~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:7624:31: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                            x + i * column_width,
                            ~~^~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:7625:29: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                            y,
                            ^
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:7626:52: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                            (j - i) * column_width + bold_offset,
                            ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:7650:51: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                                                x + i *column_width,
                                                ~~^~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:7651:49: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                                                y,
                                                ^
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:7652:58: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                                                (j - i)  * column_width,
                                                ~~~~~~~~~^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:7864:18: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    rect.x = col * m_cell_width;
          ~ ~~~~^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:7865:35: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    rect.width = (col_stop - col) * m_cell_width;
              ~ ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:7866:14: warning: implicit conversion loses integer precision: 'vte::view::coord_t' (aka 'long') to 'int' [-Wshorten-64-to-32]
    rect.y = row_to_pixel(row);
          ~ ^~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:7867:36: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    rect.height = (row_stop - row) * m_cell_height;
                ~ ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:7916:21: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                col * m_cell_width,
                ~~~~^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:7917:17: warning: implicit conversion loses integer precision: 'vte::view::coord_t' (aka 'long') to 'gint' (aka 'int') [-Wshorten-64-to-32]
                row_to_pixel(row),
                ^~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:7918:17: warning: implicit conversion loses integer precision: 'glong' (aka 'long') to 'gint' (aka 'int') [-Wshorten-64-to-32]
                m_cell_width,
                ^~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:7919:17: warning: implicit conversion loses integer precision: 'glong' (aka 'long') to 'gint' (aka 'int') [-Wshorten-64-to-32]
                m_cell_height);
                ^~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:7944:13: warning: implicit conversion loses integer precision: 'glong' (aka 'long') to 'int' [-Wshorten-64-to-32]
    width = m_cell_width;
          ~ ^~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:7945:14: warning: implicit conversion loses integer precision: 'glong' (aka 'long') to 'int' [-Wshorten-64-to-32]
    height = m_cell_height;
          ~ ^~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:7997:61: warning: implicit conversion loses integer precision: 'glong' (aka 'long') to 'int' [-Wshorten-64-to-32]
            stem_width = CLAMP (stem_width, VTE_LINE_WIDTH, m_cell_width);
                      ~                                    ^~~~~~~~~~~~
/usr/include/glib-2.0/glib/gmacros.h:342:49: note: expanded from macro 'CLAMP'
#define CLAMP(x, low, high)  (((x) > (high)) ? (high) : (((x) < (low)) ? (low) : (x)))
                                                ^~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:8000:94: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                                        x, y + m_char_padding.top, stem_width, m_char_ascent + m_char_descent,
                                                                              ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:8018:77: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
            line_height = CLAMP (line_height, VTE_LINE_WIDTH, m_char_ascent + m_char_descent);
                        ~                                    ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
/usr/include/glib-2.0/glib/gmacros.h:342:49: note: expanded from macro 'CLAMP'
#define CLAMP(x, low, high)  (((x) > (high)) ? (high) : (((x) < (low)) ? (low) : (x)))
                                                ^~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:8021:49: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
            right = item.columns * m_cell_width - m_char_padding.right;
                  ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:8031:93: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                                        x + left, y + m_cell_height - m_char_padding.bottom - line_height,
                                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:8094:15: warning: implicit conversion loses integer precision: 'gssize' (aka 'long') to 'int' [-Wshorten-64-to-32]
    columns = get_preedit_width(false);
            ~ ^~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:8095:11: warning: implicit conversion loses integer precision: 'gssize' (aka 'long') to 'int' [-Wshorten-64-to-32]
    len = get_preedit_length(false);
        ~ ^~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:8099:28: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    col = m_screen->cursor.col;
        ~ ~~~~~~~~~~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:8101:37: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
        col = MAX(0, m_column_count - columns);
            ~        ~~~~~~~~~~~~~~~^~~~~~~~~
/usr/include/glib-2.0/glib/gmacros.h:333:42: note: expanded from macro 'MAX'
#define MAX(a, b)  (((a) > (b)) ? (a) : (b))
                                        ^
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:8121:33: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                            col * width,
                            ~~~~^~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:8122:29: warning: implicit conversion loses integer precision: 'vte::view::coord_t' (aka 'long') to 'gint' (aka 'int') [-Wshorten-64-to-32]
                            row_to_pixel(m_screen->cursor.row),
                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:8123:35: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                            width * columns,
                            ~~~~~~^~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:8124:29: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                            height,
                            ^~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:8131:37: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                                    width, height);
                                    ^~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:8131:44: warning: implicit conversion loses integer precision: 'long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                                    width, height);
                                          ^~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:8147:25: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
                        width, height);
                        ^~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:8147:32: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
                        width, height);
                              ^~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:8177:23: warning: implicit conversion loses integer precision: 'vte::view::coord_t' (aka 'long') to 'int' [-Wshorten-64-to-32]
    allocated_width = get_allocated_width();
                    ~ ^~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vte.cc:8178:24: warning: implicit conversion loses integer precision: 'vte::view::coord_t' (aka 'long') to 'int' [-Wshorten-64-to-32]
    allocated_height = get_allocated_height();
                    ~ ^~~~~~~~~~~~~~~~~~~~~~
1 warning generated.
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vtegtk.cc:509:38: warning: implicit conversion loses integer precision: 'glong' (aka 'long') to 'guint' (aka 'unsigned int') [-Wshorten-64-to-32]
            g_value_set_uint (value, vte_terminal_get_scrollback_lines(terminal));
            ~~~~~~~~~~~~~~~~        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vtedraw.cc:570:10: warning: implicit conversion loses integer precision: 'unsigned long' to 'guint' (aka 'unsigned int') [-Wshorten-64-to-32]
        ^ vte_pango_context_get_fontconfig_timestamp (context);
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vtedraw.cc:680:75: warning: implicit conversion loses integer precision: 'gsize' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32]
    pango_layout_set_text (info->layout, info->string->str, info->string->len);
    ~~~~~~~~~~~~~~~~~~~~~                                  ~~~~~~~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vtegtk.cc:2913:32: warning: implicit conversion loses integer precision: 'glong' (aka 'long') to 'gint' (aka 'int') [-Wshorten-64-to-32]
    hints->width_inc  = impl->m_cell_width;
                      ~ ~~~~~~^~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vtegtk.cc:2914:32: warning: implicit conversion loses integer precision: 'glong' (aka 'long') to 'gint' (aka 'int') [-Wshorten-64-to-32]
    hints->height_inc  = impl->m_cell_height;
                      ~ ~~~~~~^~~~~~~~~~~~~
In file included from vtestream.cc:33:
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vtestream-file.h:730:12: warning: implicit conversion loses integer precision: 'uLong' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32]
    return compressBound(len);
    ~~~~~~ ^~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vtestream-file.h:745:12: warning: implicit conversion loses integer precision: 'uLongf' (aka 'unsigned long') to 'unsigned int' [-Wshorten-64-to-32]
    return dstlen_ulongf;
    ~~~~~~ ^~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vtestream-file.h:784:12: warning: implicit conversion loses integer precision: 'uLongf' (aka 'unsigned long') to 'unsigned int' [-Wshorten-64-to-32]
    return dstlen_ulongf;
    ~~~~~~ ^~~~~~~~~~~~~
2 warnings generated.
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:219:21: warning: implicit conversion loses integer precision: 'vte::parser::Params::number' (aka 'long') to 'int' [-Wshorten-64-to-32]
    int id = params.number_or_default_at(0, 0);
        ~~  ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:331:29: warning: implicit conversion loses integer precision: 'vte::grid::column_t' (aka 'long') to 'int' [-Wshorten-64-to-32]
        invalidate_cells(0, m_column_count, m_screen->cursor.row, 1);
        ~~~~~~~~~~~~~~~~    ^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:354:33: warning: implicit conversion loses integer precision: 'vte::grid::column_t' (aka 'long') to 'int' [-Wshorten-64-to-32]
            invalidate_cells(0, m_column_count, i, 1);
            ~~~~~~~~~~~~~~~~    ^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:854:52: warning: implicit conversion loses integer precision: 'vte::grid::row_t' (aka 'long') to 'guint' (aka 'unsigned int') [-Wshorten-64-to-32]
                emit_resize_window(set ? 132 : 80, m_row_count);
                ~~~~~~~~~~~~~~~~~~                ^~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:982:36: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
            if (get_tabstop(newcol % m_column_count)) {
                ~~~~~~~~~~~ ~~~~~~~^~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:1018:45: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    invalidate_cells(0, m_screen->cursor.col+1,
    ~~~~~~~~~~~~~~~~    ~~~~~~~~~~~~~~~~~~~~^~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:1076:29: warning: implicit conversion loses integer precision: 'vte::grid::column_t' (aka 'long') to 'int' [-Wshorten-64-to-32]
        invalidate_cells(0, m_column_count, i, 1);
        ~~~~~~~~~~~~~~~~    ^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:1114:59: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    invalidate_cells(m_screen->cursor.col, m_column_count - m_screen->cursor.col,
    ~~~~~~~~~~~~~~~~                      ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:1250:32: warning: implicit conversion loses integer precision: 'vte::grid::row_t' (aka 'long') to 'int' [-Wshorten-64-to-32]
    m_scrolling_region.start = start;
                            ~ ^~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:1251:30: warning: implicit conversion loses integer precision: 'vte::grid::row_t' (aka 'long') to 'int' [-Wshorten-64-to-32]
    m_scrolling_region.end = end;
                          ~ ^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:1318:39: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
            invalidate_cells(col, len - col, m_screen->cursor.row, 1);
            ~~~~~~~~~~~~~~~~      ~~~~^~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:1399:48: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
        invalidate_cells(m_screen->cursor.col, count, m_screen->cursor.row, 1);
        ~~~~~~~~~~~~~~~~                      ^~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:1539:15: warning: implicit conversion loses integer precision: 'unsigned long' to 'guint' (aka 'unsigned int') [-Wshorten-64-to-32]
        idx = strtoul (pairs[i], (char **) NULL, 10);
            ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:1595:54: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
            reset_color(value == 256 ? VTE_BOLD_FG : value, VTE_COLOR_SOURCE_ESCAPE);
            ~~~~~~~~~~~                              ^~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:1646:29: warning: implicit conversion loses integer precision: 'vte::grid::column_t' (aka 'long') to 'int' [-Wshorten-64-to-32]
        invalidate_cells(0, m_column_count, start, 2);
        ~~~~~~~~~~~~~~~~    ^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:1663:34: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    set_tabstop(m_screen->cursor.col);
    ~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:1686:29: warning: implicit conversion loses integer precision: 'vte::grid::column_t' (aka 'long') to 'int' [-Wshorten-64-to-32]
            if (get_tabstop(newcol)) {
                ~~~~~~~~~~~ ^~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:1725:41: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
            tab.attr.set_columns(newcol - col);
                    ~~~~~~~~~~~ ~~~~~~~^~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:1738:55: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
        invalidate_cells(m_screen->cursor.col, newcol - m_screen->cursor.col,
        ~~~~~~~~~~~~~~~~                      ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:1759:40: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
        clear_tabstop(m_screen->cursor.col);
        ~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:1855:24: warning: implicit conversion loses integer precision: 'long' to 'int32_t' (aka 'int') [-Wshorten-64-to-32]
                return param1;
                ~~~~~~ ^~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:1884:55: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
                        m_defaults.attr.set_underline(param1);
                                        ~~~~~~~~~~~~~ ^~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:1984:67: warning: implicit conversion loses integer precision: 'long' to 'uint32_t' (aka 'unsigned int') [-Wshorten-64-to-32]
                m_defaults.attr.set_fore(VTE_LEGACY_COLORS_OFFSET + (param - 30));
                                ~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:2040:67: warning: implicit conversion loses integer precision: 'long' to 'uint32_t' (aka 'unsigned int') [-Wshorten-64-to-32]
                m_defaults.attr.set_back(VTE_LEGACY_COLORS_OFFSET + (param - 40));
                                ~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:2066:82: warning: implicit conversion loses integer precision: 'long' to 'uint32_t' (aka 'unsigned int') [-Wshorten-64-to-32]
                m_defaults.attr.set_fore(VTE_LEGACY_COLORS_OFFSET + (param - 90) +
                                ~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:2077:83: warning: implicit conversion loses integer precision: 'long' to 'uint32_t' (aka 'unsigned int') [-Wshorten-64-to-32]
                m_defaults.attr.set_back(VTE_LEGACY_COLORS_OFFSET + (param - 100) +
                                ~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:2666:34: warning: implicit conversion loses integer precision: 'long' to 'guint' (aka 'unsigned int') [-Wshorten-64-to-32]
                emit_move_window(arg1, arg2);
                ~~~~~~~~~~~~~~~~ ^~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:2666:40: warning: implicit conversion loses integer precision: 'long' to 'guint' (aka 'unsigned int') [-Wshorten-64-to-32]
                emit_move_window(arg1, arg2);
                ~~~~~~~~~~~~~~~~       ^~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:2677:41: warning: implicit conversion loses integer precision: 'long' to 'guint' (aka 'unsigned int') [-Wshorten-64-to-32]
                emit_resize_window(arg2 / m_cell_width, arg1 / m_cell_height);
                ~~~~~~~~~~~~~~~~~~ ~~~~~^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:2677:62: warning: implicit conversion loses integer precision: 'long' to 'guint' (aka 'unsigned int') [-Wshorten-64-to-32]
                emit_resize_window(arg2 / m_cell_width, arg1 / m_cell_height);
                ~~~~~~~~~~~~~~~~~~                      ~~~~~^~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:2699:36: warning: implicit conversion loses integer precision: 'long' to 'guint' (aka 'unsigned int') [-Wshorten-64-to-32]
                emit_resize_window(arg2, arg1);
                ~~~~~~~~~~~~~~~~~~ ^~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:2699:42: warning: implicit conversion loses integer precision: 'long' to 'guint' (aka 'unsigned int') [-Wshorten-64-to-32]
                emit_resize_window(arg2, arg1);
                ~~~~~~~~~~~~~~~~~~      ^~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:2814:36: warning: implicit conversion loses integer precision: 'vte::grid::column_t' (aka 'long') to 'guint' (aka 'unsigned int') [-Wshorten-64-to-32]
                emit_resize_window(m_column_count, param);
                ~~~~~~~~~~~~~~~~~~ ^~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:2814:52: warning: implicit conversion loses integer precision: 'long' to 'guint' (aka 'unsigned int') [-Wshorten-64-to-32]
                emit_resize_window(m_column_count, param);
                ~~~~~~~~~~~~~~~~~~                ^~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:1842:24: warning: implicit conversion loses integer precision: 'long' to 'int32_t' (aka 'int') [-Wshorten-64-to-32]
                return VTE_RGB_COLOR(redbits, greenbits, bluebits, param1, param2, param3);
                ~~~~~~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vtedefines.hh:63:97: note: expanded from macro 'VTE_RGB_COLOR'
                                        ((((g) >> (8 - (gb))) & ((1U << (gb)) -  1U)) << (bb)) | \
                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:1890:34: note: in instantiation of function template specialization 'VteTerminalPrivate::parse_sgr_38_48_parameters<8, 8, 8>' requested here
                    auto color = parse_sgr_38_48_parameters<8, 8, 8>(subparams, &index, true);
                                ^
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:1855:24: warning: implicit conversion loses integer precision: 'long' to 'int32_t' (aka 'int') [-Wshorten-64-to-32]
                return param1;
                ~~~~~~ ^~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:1842:24: warning: implicit conversion loses integer precision: 'long' to 'int32_t' (aka 'int') [-Wshorten-64-to-32]
                return VTE_RGB_COLOR(redbits, greenbits, bluebits, param1, param2, param3);
                ~~~~~~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vtedefines.hh:63:97: note: expanded from macro 'VTE_RGB_COLOR'
                                        ((((g) >> (8 - (gb))) & ((1U << (gb)) - 1U)) << (bb)) | \
                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:1908:34: note: in instantiation of function template specialization 'VteTerminalPrivate::parse_sgr_38_48_parameters<4, 5, 4>' requested here
                    auto color = parse_sgr_38_48_parameters<4, 5, 4>(subparams, &index, true);
                                ^
/home/compyx/vice-trunk/vice/src/arch/gtk3/novte/vteseq.cc:31855 warning:s24 generated:.
warning: implicit conversion loses integer precision: 'long' to 'int32_t' (aka 'int') [-Wshorten-64-to-32]
                return param1;
                ~~~~~~ ^~~~~~
3 warnings generated.
38 warnings generated.
123 warnings generated.
Making all in widgets
Making all in base
/home/compyx/vice-trunk/vice/src/arch/gtk3/widgets/drivemodelwidget.c:145:11: warning: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32]
    num = i;
        ~ ^
/home/compyx/vice-trunk/vice/src/arch/gtk3/widgets/drivemodelwidget.c:161:53: warning: implicit conversion loses integer precision: 'unsigned long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
        gtk_grid_attach(GTK_GRID(grid), radio, 0, i + 1, 1, 1);
        ~~~~~~~~~~~~~~~                          ~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/widgets/drivemodelwidget.c:217:11: warning: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32]
    num = i;
        ~ ^
/home/compyx/vice-trunk/vice/src/arch/gtk3/widgets/drivemodelwidget.c:222:73: warning: implicit conversion loses integer precision: 'unsigned long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
        GtkWidget *radio = gtk_grid_get_child_at(GTK_GRID(widget), 0, i + 1);
                          ~~~~~~~~~~~~~~~~~~~~~                      ~~^~~
4 warnings generated.
/home/compyx/vice-trunk/vice/src/arch/gtk3/widgets/machinemodelwidget.c:235:73: warning: implicit conversion loses integer precision: 'unsigned long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
        GtkWidget *radio = gtk_grid_get_child_at(GTK_GRID(widget), 0, i + 2);
                          ~~~~~~~~~~~~~~~~~~~~~                      ~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/widgets/machinemodelwidget.c:245:23: warning: implicit conversion loses integer precision: 'unsigned long' to 'int' [-Wshorten-64-to-32]
            value = i + 2;
                  ~ ~~^~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/widgets/machinemodelwidget.c:247:21: warning: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32]
            value = i;
                  ~ ^
3 warnings generated.
/home/compyx/vice-trunk/vice/src/arch/gtk3/widgets/settings_io_c64_memhacks.c:226:67: warning: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'gint' (aka 'int') [-Wshorten-64-to-32]
        GtkWidget *radio = gtk_grid_get_child_at(GTK_GRID(group), i, 0);
                          ~~~~~~~~~~~~~~~~~~~~~                  ^
/home/compyx/vice-trunk/vice/src/arch/gtk3/widgets/settings_io_c64_memhacks.c:414:67: warning: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'gint' (aka 'int') [-Wshorten-64-to-32]
        GtkWidget *radio = gtk_grid_get_child_at(GTK_GRID(group), i, 0);
                          ~~~~~~~~~~~~~~~~~~~~~                  ^
2 warnings generated.
/home/compyx/vice-trunk/vice/src/arch/gtk3/joy-unix.c:393:30: warning: implicit conversion loses integer precision: 'ssize_t' (aka 'long') to 'int' [-Wshorten-64-to-32]
                int status = read(ajoyfd[i], &js, JS_RETURN);
                    ~~~~~~  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/joy-unix.c:482:26: warning: implicit conversion loses integer precision: 'ssize_t' (aka 'long') to 'int' [-Wshorten-64-to-32]
                status = read(ajoyfd[ajoyport], &js, JS_RETURN);
                      ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2 warnings generated.
/home/compyx/vice-trunk/vice/src/arch/gtk3/linenoise.c:281:24: warning: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32]
                return len;
                ~~~~~~ ^~~
1 warning generated.
/home/compyx/vice-trunk/vice/src/arch/gtk3/uiedit.c:76:23: warning: implicit conversion loses integer precision: 'unsigned long' to 'gint' (aka 'int') [-Wshorten-64-to-32]
                text, strlen(text));
                      ^~~~~~~~~~~~
1 warning generated.
/home/compyx/vice-trunk/vice/src/arch/gtk3/uimon.c:167:65: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
    output_buffer_required_size = fixed.output_buffer_used_size + length;
                                ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/uimon.c:194:16: warning: implicit conversion loses integer precision: 'glong' (aka 'long') to 'int' [-Wshorten-64-to-32]
        return vte_terminal_get_column_count(VTE_TERMINAL(t->term));
        ~~~~~~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/uimon.c:40:39: note: expanded from macro 'vte_terminal_get_column_count'
#define vte_terminal_get_column_count novte_terminal_get_column_count
                                      ^
/home/compyx/vice-trunk/vice/src/arch/gtk3/uimon.c:484:14: warning: implicit conversion loses integer precision: 'glong' (aka 'long') to 'int' [-Wshorten-64-to-32]
    cwidth = vte_terminal_get_char_width (VTE_TERMINAL(fixed.term));
          ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/uimon.c:45:37: note: expanded from macro 'vte_terminal_get_char_width'
#define vte_terminal_get_char_width novte_terminal_get_char_width
                                    ^
/home/compyx/vice-trunk/vice/src/arch/gtk3/uimon.c:485:15: warning: implicit conversion loses integer precision: 'glong' (aka 'long') to 'int' [-Wshorten-64-to-32]
    cheight = vte_terminal_get_char_height (VTE_TERMINAL(fixed.term));
            ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/uimon.c:46:38: note: expanded from macro 'vte_terminal_get_char_height'
#define vte_terminal_get_char_height novte_terminal_get_char_height
                                    ^
/home/compyx/vice-trunk/vice/src/arch/gtk3/uimon.c:587:27: warning: implicit conversion loses integer precision: 'glong' (aka 'long') to 'gint' (aka 'int') [-Wshorten-64-to-32]
        hints.width_inc = vte_terminal_get_char_width (VTE_TERMINAL(fixed.term));
                        ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/uimon.c:45:37: note: expanded from macro 'vte_terminal_get_char_width'
#define vte_terminal_get_char_width novte_terminal_get_char_width
                                    ^
/home/compyx/vice-trunk/vice/src/arch/gtk3/uimon.c:588:28: warning: implicit conversion loses integer precision: 'glong' (aka 'long') to 'gint' (aka 'int') [-Wshorten-64-to-32]
        hints.height_inc = vte_terminal_get_char_height (VTE_TERMINAL(fixed.term));
                        ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/arch/gtk3/uimon.c:46:38: note: expanded from macro 'vte_terminal_get_char_height'
#define vte_terminal_get_char_height novte_terminal_get_char_height
                                    ^
6 warnings generated.
Making all in lib
Making all in p64
Making all in linenoise-ng
/home/compyx/vice-trunk/vice/src/lib/linenoise-ng/linenoise.cpp:488:10: warning: implicit conversion loses integer precision: 'ssize_t' (aka 'long') to 'int' [-Wshorten-64-to-32]
  return write(fd, text8.get(), count8);
  ~~~~~~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/lib/linenoise-ng/linenoise.cpp:1919:17: warning: implicit conversion loses integer precision: 'ssize_t' (aka 'long') to 'int' [-Wshorten-64-to-32]
      int ret = read(0, keys, 10);
          ~~~  ^~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/lib/linenoise-ng/linenoise.cpp:3488:13: warning: implicit conversion loses integer precision: 'ssize_t' (aka 'long') to 'int' [-Wshorten-64-to-32]
    nread = read(STDIN_FILENO, &c, 1);
          ~ ^~~~~~~~~~~~~~~~~~~~~~~~~
3 warnings generated.
Making all in hvsc
Making all in datasette
/home/compyx/vice-trunk/vice/src/datasette/datasette.c:512:49: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
    current_image->current_file_seek_position = remember_file_seek_position;
                                              ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/datasette/datasette.c:692:42: warning: implicit conversion loses integer precision: 'long' to 'CLOCK' (aka 'unsigned int') [-Wshorten-64-to-32]
        datasette_long_gap_elapsed = gap - datasette_long_gap_elapsed;
                                  ~ ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/datasette/datasette.c:708:42: warning: implicit conversion loses integer precision: 'long' to 'CLOCK' (aka 'unsigned int') [-Wshorten-64-to-32]
        datasette_long_gap_pending = gap - DATASETTE_MAX_GAP;
                                  ~ ~~~~^~~~~~~~~~~~~~~~~~~
3 warnings generated.
/home/compyx/vice-trunk/vice/src/autostart.c:1195:95: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
        autostart_initial_delay_cycles += lib_unsigned_rand(1, machine_get_cycles_per_frame() * 10);
                                          ~~~~~~~~~~~~~~~~~    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
/home/compyx/vice-trunk/vice/src/charset.c:315:11: warning: implicit conversion loses integer precision: 'unsigned long' to 'int' [-Wshorten-64-to-32]
    len = strlen((const char *)in);
        ~ ^~~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.
1 warning generated.
/home/compyx/vice-trunk/vice/src/event.c:401:49: warning: implicit conversion loses integer precision: 'long' to 'CLOCK' (aka 'unsigned int') [-Wshorten-64-to-32]
        next_timestamp_clk = next_timestamp_clk + machine_get_cycles_per_second();
                          ~ ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/debug.c:458:29: warning: implicit conversion loses integer precision: 'unsigned long' to 'int' [-Wshorten-64-to-32]
        debug_buffer_size = fread(debug_buffer, sizeof(char), DEBUG_HISTORY_MAXFILESIZE, debug_file);
                          ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.
1 warning generated.
/home/compyx/vice-trunk/vice/src/kbdbuf.c:338:51: warning: implicit conversion loses integer precision: 'long' to 'CLOCK' (aka 'unsigned int') [-Wshorten-64-to-32]
            kbdbuf_flush_alarm_time = maincpu_clk + machine_get_cycles_per_frame();
                                    ~ ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/kbdbuf.c:339:61: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
            kbdbuf_flush_alarm_time += lib_unsigned_rand(1, machine_get_cycles_per_frame());
                                      ~~~~~~~~~~~~~~~~~    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2 warnings generated.
/home/compyx/vice-trunk/vice/src/keyboard.c:235:45: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
    alarm_set(keyboard_alarm, maincpu_clk + KEYBOARD_RAND());
                                            ^~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/keyboard.c:72:46: note: expanded from macro 'KEYBOARD_RAND'
#define KEYBOARD_RAND() lib_unsigned_rand(1, machine_get_cycles_per_frame())
                        ~~~~~~~~~~~~~~~~~    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/keyboard.c:549:48: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
        alarm_set(restore_alarm, maincpu_clk + KEYBOARD_RAND());
                                              ^~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/keyboard.c:72:46: note: expanded from macro 'KEYBOARD_RAND'
#define KEYBOARD_RAND() lib_unsigned_rand(1, machine_get_cycles_per_frame())
                        ~~~~~~~~~~~~~~~~~    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/keyboard.c:563:52: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
            alarm_set(restore_alarm, maincpu_clk + KEYBOARD_RAND());
                                                  ^~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/keyboard.c:72:46: note: expanded from macro 'KEYBOARD_RAND'
#define KEYBOARD_RAND() lib_unsigned_rand(1, machine_get_cycles_per_frame())
                        ~~~~~~~~~~~~~~~~~    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/keyboard.c:580:56: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
                alarm_set(restore_alarm, maincpu_clk + KEYBOARD_RAND());
                                                      ^~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/keyboard.c:72:46: note: expanded from macro 'KEYBOARD_RAND'
#define KEYBOARD_RAND() lib_unsigned_rand(1, machine_get_cycles_per_frame())
                        ~~~~~~~~~~~~~~~~~    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/keyboard.c:683:27: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
            CLOCK delay = KEYBOARD_RAND();
                          ^~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/keyboard.c:72:46: note: expanded from macro 'KEYBOARD_RAND'
#define KEYBOARD_RAND() lib_unsigned_rand(1, machine_get_cycles_per_frame())
                        ~~~~~~~~~~~~~~~~~    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/keyboard.c:687:53: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
            alarm_set(keyboard_alarm, maincpu_clk + KEYBOARD_RAND());
                                                    ^~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/keyboard.c:72:46: note: expanded from macro 'KEYBOARD_RAND'
#define KEYBOARD_RAND() lib_unsigned_rand(1, machine_get_cycles_per_frame())
                        ~~~~~~~~~~~~~~~~~    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/keyboard.c:859:27: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
            CLOCK delay = KEYBOARD_RAND();
                          ^~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/keyboard.c:72:46: note: expanded from macro 'KEYBOARD_RAND'
#define KEYBOARD_RAND() lib_unsigned_rand(1, machine_get_cycles_per_frame())
                        ~~~~~~~~~~~~~~~~~    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/keyboard.c:863:53: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
            alarm_set(keyboard_alarm, maincpu_clk + KEYBOARD_RAND());
                                                    ^~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/keyboard.c:72:46: note: expanded from macro 'KEYBOARD_RAND'
#define KEYBOARD_RAND() lib_unsigned_rand(1, machine_get_cycles_per_frame())
                        ~~~~~~~~~~~~~~~~~    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/keyboard.c:1211:47: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
        joykeys[JOYSTICK_KEYSET_IDX_A][col] = sym;
                                            ~ ^~~
/home/compyx/vice-trunk/vice/src/keyboard.c:1215:47: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
        joykeys[JOYSTICK_KEYSET_IDX_B][col] = sym;
                                            ~ ^~~
/home/compyx/vice-trunk/vice/src/keyboard.c:1253:15: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
        row = strtol(p, NULL, 10);
            ~ ^~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/rawfile.c:154:28: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
    unsigned int old_pos = ftell(info->fd);
                ~~~~~~~  ^~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/rawfile.c:157:12: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
    size = ftell(info->fd);
        ~ ^~~~~~~~~~~~~~~
2 warnings generated.
/home/compyx/vice-trunk/vice/src/snapshot.c:588:30: warning: implicit conversion loses integer precision: 'long' to 'uint32_t' (aka 'unsigned int') [-Wshorten-64-to-32]
    m->size = ftell(s->file) - m->offset;
            ~ ~~~~~~~~~~~~~~~^~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/socket.c:973:11: warning: implicit conversion loses integer precision: 'ssize_t' (aka 'long') to 'int' [-Wshorten-64-to-32]
    ret = send(sockfd->sockfd, buffer, buffer_length, flags);
        ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/compyx/vice-trunk/vice/src/socket.c:1012:11: warning: implicit conversion loses integer precision: 'ssize_t' (aka 'long') to 'int' [-Wshorten-64-to-32]
    ret = recv(sockfd->sockfd, buffer, buffer_length, flags);
        ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2 warnings generated.
1 warning generated.
/home/compyx/vice-trunk/vice/src/sysfile.c:242:16: warning: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32]
        return rsize;
        ~~~~~~ ^~~~~
/home/compyx/vice-trunk/vice/src/sound.c:1532:22: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
    cycles_per_sec = clock_rate;
                  ~ ^~~~~~~~~~
/home/compyx/vice-trunk/vice/src/sound.c:1533:23: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
    cycles_per_rfsh = ticks_per_frame;
                    ~ ^~~~~~~~~~~~~~~
1 warning generated.
11 warnings generated.
/home/compyx/vice-trunk/vice/src/zfile.c:487:51: warning: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32]
                    && is_valid_extension(tmp, l, nameoffset)) {
                      ~~~~~~~~~~~~~~~~~~        ^~~~~~~~~~
2 warnings generated.
/home/compyx/vice-trunk/vice/src/c1541.c:4580:37: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]
                rel_record_length = strtol(lenptr, &endptr, 10);
                                  ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.
1 warning generated.
Making all in build
Making all in android
Making all in beos
Making all in mingw
Making all in data
Making all in C64
Making all in C64DTV
Making all in C128
Making all in VIC20
Making all in PET
Making all in PLUS4
Making all in CBM-II
Making all in SCPU64
Making all in DRIVES
Making all in PRINTER
Making all in common
Making all in doc
Making all in building
Making all in html
Making all in readmes
</pre>


* gpz (x86, Linux/Gentoo, 64bit, clang 5.0.1, GTK3) (3.2 tarball)
plus4cpu.c:40:2: warning: #warning "CPUMEMHISTORY implementation for xplus4 is incomplete" [-Wcpp]
  40 | #warning "CPUMEMHISTORY implementation for xplus4 is incomplete"
      |  ^~~~~~~


CC=clang CXX=clang LD=clang ./configure --enable-native-tools --enable-arch=native --prefix=/usr/games/ --enable-parsid --with-midas --with-resid --with-xaw3d --with-arts --with-x --enable-native-gtk3ui --enable-ethernet --with-pulse --with-sdlsound --enable-fullscreen --enable-cpuhistory --enable-static-ffmpeg
cbm2cpu.c:68:2: warning: #warning "CPUMEMHISTORY implementation for xcbm2 is incomplete" [-Wcpp]
 
  68 | #warning "CPUMEMHISTORY implementation for xcbm2 is incomplete"
note: here compiling using clang breaks in either ffmpeg or resid
      | ^~~~~~~
 
<pre>
Making all in gfxoutputdrv
ffmpegdrv.c:126:36: warning: missing field 'next_pts' initializer [-Wmissing-field-initializers]
static OutputStream audio_st = { 0 };
                                  ^
ffmpegdrv.c:139:36: warning: missing field 'next_pts' initializer [-Wmissing-field-initializers]
static OutputStream video_st = { 0 };
                                  ^
ffmpegdrv.c:512:24: warning: missing field 'pts' initializer [-Wmissing-field-initializers]
    AVPacket pkt = { 0 };
                      ^
ffmpegdrv.c:981:28: warning: missing field 'pts' initializer [-Wmissing-field-initializers]
        AVPacket pkt = { 0 };
                          ^
 
Making all in base
keysetdialog.c:98:44: warning: suggest braces around initialization of subobject [-Wmissing-braces]
static GtkWidget *keyset_buttons[3][3] = { NULL };
                                          ^~~~
                                          {  }                                                                                                                                                   
/usr/lib64/llvm/5/bin/../../../../lib/clang/5.0.1/include/stddef.h:105:16: note: expanded from macro 'NULL'
# define NULL ((void*)0)
              ^~~~~~~~~~
1 warning generated.
videopalettewidget.c:90:9: warning: unused variable 'index' [-Wunused-variable]
    int index = gtk_combo_box_get_active(combo);
        ^
1 warning generated.
ui.c:427:24: warning: unused variable 'tmp' [-Wunused-variable]
                gchar *tmp = g_filename_from_uri(files[i], NULL, NULL);
                      ^
1 warning generated.
uinetplay_new.c:88:9: warning: unused variable 'state' [-Wunused-variable]
    int state = gtk_switch_get_active(widget);
        ^
 
Making all in ffmpeg
In file included from info.c:34:
./infocontrib.h:293:8: warning: illegal character encoding in string literal [-Winvalid-source-encoding]
" Andr<E9> Fachat <fachat@physik.tu-chemnitz.de>\n"
      ^~~~
./infocontrib.h:343:12: warning: illegal character encoding in string literal [-Winvalid-source-encoding]
"  Paul Dub<E9> \n"
          ^~~~
./infocontrib.h:444:8: warning: illegal character encoding in string literal [-Winvalid-source-encoding]
" Istv<E1>n F<E1>bi<E1>n\n"
      ^~~~  ~~~~  ~~~~
./infocontrib.h:532:11: warning: illegal character encoding in string literal [-Winvalid-source-encoding]
"  Frank K<F6>nig <frank_koenig@t-online.de>\n"
          ^~~~
./infocontrib.h:571:11: warning: illegal character encoding in string literal [-Winvalid-source-encoding]
" Marko M<E4>kel<E4> <msmakela@gmail.com>\n"
          ^~~~  ~~~~
./infocontrib.h:622:10: warning: illegal character encoding in string literal [-Winvalid-source-encoding]
"  Lasse <D6><F6>rni <loorni@mail.student.oulu.fi>\n"
        ^~~~~~~~
./infocontrib.h:655:14: warning: illegal character encoding in string literal [-Winvalid-source-encoding]
"  Pablo Rold<E1>n <pdroldan@yahoo.com>\n"
            ^~~~
./infocontrib.h:799:19: warning: illegal character encoding in string literal [-Winvalid-source-encoding]
"  Peternel, Per H<E5>kan Sundell and David Horrocks for writing\n"
                  ^~~~
./infocontrib.h:841:25: warning: illegal character encoding in string literal [-Winvalid-source-encoding]
    { "1996-2001", "Andr<E9> Fachat", "Andr<E9> Fachat <fachat@physik.tu-chemnitz.de>" },
                        ^~~~
./infocontrib.h:841:41: warning: illegal character encoding in string literal [-Winvalid-source-encoding]
    { "1996-2001", "Andr<E9> Fachat", "Andr<E9> Fachat <fachat@physik.tu-chemnitz.de>" },
                                          ^~~~
./infocontrib.h:862:29: warning: illegal character encoding in string literal [-Winvalid-source-encoding]
    { "2004-2017", "Paul Dub<E9>", "French", "Paul Dub<E9> " },
                            ^~~~
./infocontrib.h:862:52: warning: illegal character encoding in string literal [-Winvalid-source-encoding]
    { "2004-2017", "Paul Dub<E9>", "French", "Paul Dub<E9> " },
                                                      ^~~~
12 warnings generated.
 
===== This was fixed in r35671 =====
zfile.c:490:17: warning: logical not is only applied to the left hand side of this comparison [-Wlogical-not-parentheses]
                !strcasecmp(tmp + l - len, search) != 0) {
                ^                                  ~~
zfile.c:490:17: note: add parentheses after the '!' to evaluate the comparison first
                !strcasecmp(tmp + l - len, search) != 0) {
                ^
                (                                    )                                                                                                                                           
zfile.c:490:17: note: add parentheses around left hand side expression to silence this warning
                !strcasecmp(tmp + l - len, search) != 0) {
                ^
                (                                )                                                                                                                                                 
1 warning generated.
===== End =====
</pre>
</pre>


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)


* cpx (x86_64 Linux/Debian, Gtk3, clang 7.0.1), rev 37193
== clang ==
 
<pre>
Making all in cart
ethernetcart.c:153:51: warning: code will never be executed [-Wunreachable-code]
            ethernetcart_device.io_source_valid = 0;
                                                  ^
1 warning generated.
</pre>


== Other diagnostic tools ==
== Other diagnostic tools ==

Revision as of 19:53, 26 September 2020

GCC

  • 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