D: [iurt_root_command] chroot
warning: Found bdb_ro Packages database while attempting sqlite backend: using bdb_ro backend.
Installing /home/iurt/rpmbuild/SRPMS/scummvm-2.2.0-2.mga9.src.rpm
Building target platforms: aarch64
Building for target aarch64
Executing(%prep): /bin/sh -e /home/iurt/rpmbuild/tmp/rpm-tmp.ym5pZn
+ umask 022
+ cd /home/iurt/rpmbuild/BUILD
+ '[' 1 -eq 1 ']'
+ '[' 1 -eq 1 ']'
+ '[' 1 -eq 1 ']'
+ cd /home/iurt/rpmbuild/BUILD
+ rm -rf scummvm-2.2.0
+ /usr/bin/xz -dc /home/iurt/rpmbuild/SOURCES/scummvm-2.2.0.tar.xz
+ /usr/bin/tar -xof -
+ STATUS=0
+ '[' 0 -ne 0 ']'
+ cd scummvm-2.2.0
+ /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w .
+ /usr/bin/cat /home/iurt/rpmbuild/SOURCES/scummvm-2.1.1-ftbfs-use-bfd-linker-on-x86.patch
+ /usr/bin/patch -p1 -s --fuzz=0 --no-backup-if-mismatch -f
+ /usr/bin/cat /home/iurt/rpmbuild/SOURCES/0001-FLUIDSYNTH-Make-FluidSynth-logging-less-noisy-by-def.patch
+ /usr/bin/patch -p1 -s --fuzz=0 --no-backup-if-mismatch -f
+ /usr/bin/cat /home/iurt/rpmbuild/SOURCES/0001-FLUIDSYNTH-Swapped-debug-levels-for-FLUID_WARN-and-F.patch
+ /usr/bin/patch -p1 -s --fuzz=0 --no-backup-if-mismatch -f
+ /usr/bin/cat /home/iurt/rpmbuild/SOURCES/0001-FLUIDSYNTH-Fix-build.patch
+ /usr/bin/patch -p1 -s --fuzz=0 --no-backup-if-mismatch -f
+ /usr/bin/cat /home/iurt/rpmbuild/SOURCES/0001-AUDIO-Fix-compilation-with-Fluidsynth2.patch
+ /usr/bin/patch -p1 -s --fuzz=0 --no-backup-if-mismatch -f
+ /usr/bin/cat /home/iurt/rpmbuild/SOURCES/0001-FLUIDSYNTH-Simplify-FluidSynth-version-check.patch
+ /usr/bin/patch -p1 -s --fuzz=0 --no-backup-if-mismatch -f
+ /usr/bin/cat /home/iurt/rpmbuild/SOURCES/0001-FLUIDSYNTH-Fix-compilation-with-Fluidsynth-2.2.patch
+ /usr/bin/patch -p1 -s --fuzz=0 --no-backup-if-mismatch -f
+ /usr/bin/cat /home/iurt/rpmbuild/SOURCES/0001-SDL-build-fix-for-various-non-x86-architectures.patch
+ /usr/bin/patch -p1 -s --fuzz=0 --no-backup-if-mismatch -f
+ RPM_EC=0
++ jobs -p
+ exit 0
Executing(%build): /bin/sh -e /home/iurt/rpmbuild/tmp/rpm-tmp.hrKDsL
+ umask 022
+ cd /home/iurt/rpmbuild/BUILD
+ cd scummvm-2.2.0
+ '[' 1 -eq 1 ']'
+ '[' 1 -eq 1 ']'
+ export CONFIGURE_NO_HOST=true
+ CONFIGURE_NO_HOST=true
+ CFLAGS='-O2 -g -pipe -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector --param=ssp-buffer-size=4 -fasynchronous-unwind-tables'
+ export CFLAGS
+ CXXFLAGS='-O2 -g -pipe -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector --param=ssp-buffer-size=4 -fasynchronous-unwind-tables'
+ export CXXFLAGS
+ FFLAGS='-O2 -g -pipe -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector --param=ssp-buffer-size=4 -fasynchronous-unwind-tables '
+ export FFLAGS
+ FCFLAGS='-O2 -g -pipe -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector --param=ssp-buffer-size=4 -fasynchronous-unwind-tables '
+ export FCFLAGS
+ LDFLAGS=' -Wl,--as-needed -Wl,--no-undefined -Wl,-z,relro -Wl,-O1 -Wl,--build-id -Wl,--enable-new-dtags'
+ export LDFLAGS
+ CONFIGURE_TOP=.
+ '[' 1 = 1 ']'
++ find . -name config.guess -o -name config.sub
+ for i in $(find ${CONFIGURE_TOP} -name config.guess -o -name config.sub)
++ basename ./config.sub
+ '[' -f /usr/lib/rpm/mageia/config.sub ']'
++ basename ./config.sub
+ cp -af /usr/lib/rpm/mageia/config.sub ./config.sub
+ for i in $(find ${CONFIGURE_TOP} -name config.guess -o -name config.sub)
++ basename ./config.guess
+ '[' -f /usr/lib/rpm/mageia/config.guess ']'
++ basename ./config.guess
+ cp -af /usr/lib/rpm/mageia/config.guess ./config.guess
+ /usr/lib/rpm/mageia/force-as-needed-for-shared-lib-in-libtool
Forcing -Wl,--as-needed in configure/libtool to workaround libtool bug (cf http://lists.gnu.org/archive/html/libtool-patches/2004-06/msg00002.html)
+ /usr/lib/rpm/mageia/drop-ld-no-undefined-for-shared-lib-modules-in-libtool
+ /usr/lib/rpm/mageia/fix-libtool-ltmain-from-overlinking
+ /usr/lib/rpm/mageia/fix-libtool-from-moving-options-after-libs .
+ /usr/lib/rpm/mageia/fix-dlsearch-path-in-libtool-for-multilib . lib64
+ ./configure --host=aarch64-mageia-linux-gnu --build=aarch64-mageia-linux-gnu --program-prefix= --disable-dependency-tracking --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib64 --libexecdir=/usr/libexec --localstatedir=/var --sharedstatedir=/var/lib --mandir=/usr/share/man --infodir=/usr/share/info --bindir=/usr/games --datadir=/usr/share/scummvm --enable-all-engines --enable-c++11 --enable-release --enable-freetype2 --enable-text-console --with-freetype2-prefix=/usr
Running ScummVM configure...
Ignoring --host option!
Looking for C++ compiler... g++
Checking for compiler version... 11, ok
Building as C++11... yes
Checking best debug mode... -g + var tracking
Checking for whether C++ compiler accepts -Wglobal-constructors... no
Checking for whether C++ compiler accepts -Wno-undefined-var-template... no
Checking for whether C++ compiler accepts -Wno-pragma-pack... no
Checking endianness... little
Checking 64-bitness... yes
Type with 1 byte... char
Type with 2 bytes... short
Type with 4 bytes... int
Type with 8 bytes... long
Alignment required... yes
Checking host CPU architecture... aarch64
Checking hosttype... linux-gnu
Checking for pkg-config... yes
Looking for sdl-config... /usr/bin/sdl2-config
Checking for SDL... yes
Checking for SDL_Net... no
Checking if host is POSIX compliant... yes
Checking if posix_spawn is supported... yes
Checking whether to have a verbose build... no
Checking whether building plugins was requested... no
Checking for Ogg... yes
Checking for TTS libraries... yes
Checking for Vorbis... yes
Checking for Tremor... no (Vorbis/Tremor support is mutually exclusive)
Checking for OPL2LPT... no
Checking for FLAC >= 1.0.1... yes
Checking for MAD... yes
Checking for ALSA >= 0.9... yes
Checking for libjpeg >= v6b... yes
Checking for PNG >= 1.2.8... yes
Checking for libtheoradec >= 1.0... no
Checking for libfaad... no
Checking for SEQ MIDI... yes
Checking for sndio... no
Checking for TiMidity... yes
Checking for zlib... yes
Checking for libmpeg2 >= 0.4.0... yes
Checking for liba52... no
Looking for curl-config... /usr/bin/curl-config
Checking for libcurl... yes
Cloud integration... servers
Checking for FluidSynth... yes
Checking for readline... yes
Checking for libunity... no
Checking for gtk... yes
Checking for FreeType2... yes
Checking for OpenGL... yes (runtime detection)
Checking whether iconv.h is present... yes
Checking whether iconv needs linking against libiconv... no
Checking signature of iconv... iconv_t, char **, size_t *, char **, size_t *
Checking for iconv... yes
Checking for Linux CD-ROM... yes
Checking for FriBidi... yes
Test C++11 compatibility during compilation... no
Checking for Discord RPC... no
Building translation support... yes (with runtime language detection)
Building taskbar integration support... no
Building system dialogs support... gtk
Building text-to-speech support... speech dispatcher
Building Bink video support... yes
Building updates support... no
Enabling Address Sanitizer... no
Enabling Thread Sanitizer... no
Backend... sdl (2.0.14), 16bit color, high resolution, savegame timestamp, HQ scalers, MT-32 emulator, Lua, Nuked OPL emulator, text console, cloud
WARNING: Disabling engine Broken Sword 2.5 because the following dependencies are unmet: libtheoradec

Engines (builtin):
    SCUMM [all games]
    Access 
    ADL 
    AGI 
    AGOS [all games]
    Lord Avalot d'Argent 
    Beavis and Butthead in Virtual Stupidity 
    Blade Runner 
    CGE 
    CGE2 
    Chewy: Esc from F5 
    Cinematique evo 1 
    Magic Composer 
    Cinematique evo 2 
    Lost Eden 
    Cryo Omni3D games [all games]
    Macromedia Director 
    Dungeon Master 
    Dragon History 
    Blazing Dragons 
    Drascula: The Vampire Strikes Back 
    Dreamweb 
    Full Pipe 
    Glk Interactive Fiction games 
    UFOs 
    Gobli*ns 
    The Griffon Legend 
    Groovie [all games]
    Hyperspace Delivery Boy! 
    Hopkins FBI 
    Hugo Trilogy 
    Illusions Engine 
    Kingdom: The Far Reaches 
    Kyra [all games]
    Labyrinth of Time 
    The Last Express 
    Lilliput 
    Lure of the Temptress 
    MacVenture 
    MADE 
    MADS 
    Mohawk [all games]
    Mortevielle 
    Mutation of JB 
    Neverhood 
    Parallaction 
    The Journeyman Project: Pegasus Prime 
    Red Comrades 
    Pink Panther 
    Plumbers Don't Wear Ties 
    The Prince and The Coward 
    Flight of the Amazon Queen 
    SAGA [all games]
    SCI [all games]
    The Lost Files of Sherlock Holmes 
    Beneath a Steel Sky 
    Sludge 
    Star Trek 25th Anniversary/Judgment Rites 
    Mission Supernova 
    Broken Sword 
    Broken Sword II 
    Teen Agent 
    TestBed: the Testing framework 
    Tinsel 
    Starship Titanic 
    3 Skulls of the Toltecs 
    Tony Tough and the Night of Roasted Moths 
    Toonstruck 
    Touche: The Adventures of the Fifth Musketeer 
    TsAGE 
    Bud Tucker in Double Trouble 
    Ultima 
    Voyeur 
    WAGE 
    Wintermute [all games]
    World of Xeen 
    Z-Vision 

Engines Skipped:
    Broken Sword 2.5 

WARNING: This ScummVM build contains the following UNSTABLE engines:
    Lord Avalot d'Argent 
    Chewy: Esc from F5 
    Lost Eden 
    Macromedia Director 
    Dungeon Master 
    Groovie [Groovie 2 games]
    Kingdom: The Far Reaches 
    The Last Express 
    Lilliput 
    MacVenture 
    Mohawk [Where in Time is Carmen Sandiego?]
    Mutation of JB 
    Red Comrades 
    Pink Panther 
    SAGA [SAGA 2 games]
    Sludge 
    Star Trek 25th Anniversary/Judgment Rites 
    TestBed: the Testing framework 
    WAGE 


Creating config.h
Creating config.mk
Creating engines/engines.mk
Creating engines/plugins_table.h
+ /usr/bin/make -O -j8 V=1 VERBOSE=1
/bin/sh: line 1: git: command not found
    C++      base/test_new_standards.o
    C++      backends/platform/sdl/sdl-window.o
    C++      backends/platform/sdl/posix/posix-main.o
    C++      backends/platform/sdl/posix/posix.o
    C++      engines/scumm/base-costume.o
    C++      base/main.o
    C++      engines/scumm/bomp.o
    C++      backends/platform/sdl/sdl.o
    C++      engines/scumm/cdda.o
    C++      engines/scumm/camera.o
    C++      engines/scumm/charset-fontdata.o
    C++      engines/scumm/boxes.o
    C++      base/plugins.o
    C++      engines/scumm/akos.o
    C++      engines/scumm/cursor.o
    C++      engines/scumm/actor.o
    C++      engines/scumm/charset.o
engines/scumm/charset.cpp: In member function 'virtual void Scumm::CharsetRendererNut::setCurID(int32)':
engines/scumm/charset.cpp:1233:40: warning: '%d' directive writing between 1 and 11 bytes into a region of size 7 [-Wformat-overflow=]
 1233 |                 sprintf(fontname, "font%d.nut", id);
      |                                        ^~
engines/scumm/charset.cpp:1233:35: note: directive argument in the range [-2147483648, 4]
 1233 |                 sprintf(fontname, "font%d.nut", id);
      |                                   ^~~~~~~~~~~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/scumm/charset.h:26,
                 from engines/scumm/charset.cpp:24:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 10 and 20 bytes into a destination of size 11
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
    C++      engines/scumm/debugger.o
    C++      base/commandLine.o
    C++      engines/scumm/costume.o
    C++      engines/scumm/dialogs.o
    C++      engines/scumm/file_nes.o
    C++      engines/scumm/gfx_towns.o
    C++      engines/scumm/file.o
    C++      engines/scumm/he/script_v70he.o
    C++      engines/scumm/he/resource_he.o
    C++      engines/scumm/he/script_v60he.o
    C++      engines/scumm/detection.o
    C++      engines/scumm/he/sound_he.o
    C++      engines/scumm/imuse/imuse_part.o
    C++      engines/scumm/imuse/sysex_samnmax.o
    C++      engines/scumm/imuse/sysex_scumm.o
    C++      engines/scumm/imuse/instrument.o
    C++      engines/scumm/imuse/imuse_player.o
engines/scumm/imuse/imuse_player.cpp: In member function 'virtual void Scumm::Player::sysEx(const byte*, uint16)':
engines/scumm/imuse/imuse_player.cpp:411:79: warning: '__builtin___snprintf_chk' output truncated before the last format character [-Wformat-truncation=]
  411 |                         snprintf((char *)&buf[a * 3], 3 * sizeof(char), " %02X", p[a]);
      |                                                                               ^
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./common/util.h:26,
                 from engines/scumm/imuse/imuse_player.cpp:25:
/usr/include/bits/stdio2.h:71:35: note: '__builtin___snprintf_chk' output 4 bytes into a destination of size 3
   71 |   return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   72 |                                    __glibc_objsize (__s), __fmt,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   73 |                                    __va_arg_pack ());
      |                                    ~~~~~~~~~~~~~~~~~
    C++      engines/scumm/imuse/imuse.o
    C++      engines/scumm/help.o
    C++      engines/scumm/midiparser_ro.o
    C++      engines/scumm/imuse/drivers/fmtowns.o
    C++      engines/scumm/imuse/drivers/mac_m68k.o
    C++      engines/scumm/imuse/drivers/amiga.o
    C++      engines/scumm/imuse/drivers/pcspk.o
    C++      engines/scumm/gfx.o
    C++      engines/scumm/input.o
    C++      engines/scumm/players/player_apple2.o
    C++      engines/scumm/players/player_he.o
    C++      engines/scumm/players/player_ad.o
    C++      engines/scumm/players/player_mac.o
    C++      engines/scumm/players/player_mod.o
    C++      engines/scumm/palette.o
    C++      engines/scumm/players/player_pce.o
    C++      engines/scumm/object.o
    C++      engines/scumm/players/player_v2.o
    C++      engines/scumm/players/player_v1.o
    C++      engines/scumm/players/player_nes.o
    C++      engines/scumm/players/player_v2base.o
    C++      engines/scumm/players/player_sid.o
    C++      engines/scumm/players/player_towns.o
    C++      engines/scumm/players/player_v3m.o
    C++      engines/scumm/players/player_v3a.o
    C++      engines/scumm/players/player_v2cms.o
    C++      engines/scumm/players/player_v4a.o
    C++      engines/scumm/players/player_v5m.o
    C++      engines/scumm/resource_v3.o
    C++      engines/scumm/resource_v2.o
    C++      engines/scumm/resource_v4.o
    C++      engines/scumm/script_v3.o
    C++      engines/scumm/room.o
    C++      engines/scumm/script_v4.o
    C++      engines/scumm/players/player_v2a.o
    C++      engines/scumm/resource.o
    C++      engines/scumm/script.o
    C++      engines/scumm/saveload.o
engines/scumm/saveload.cpp: In member function 'void Scumm::ScummEngine::loadResourceOLD(Common::Serializer&, Scumm::ResType, Scumm::ResId)':
engines/scumm/saveload.cpp:1669:24: warning: 'tmp' may be used uninitialized [-Wmaybe-uninitialized]
 1669 |                 uint16 tmp;
      |                        ^~~
engines/scumm/saveload.cpp:1665:16: warning: 'size' may be used uninitialized [-Wmaybe-uninitialized]
 1665 |         uint32 size;
      |                ^~~~
engines/scumm/saveload.cpp: In member function 'void Scumm::ScummEngine::loadResource(Common::Serializer&, Scumm::ResType, Scumm::ResId)':
engines/scumm/saveload.cpp:1717:24: warning: 'size' may be used uninitialized [-Wmaybe-uninitialized]
 1717 |                 uint32 size;
      |                        ^~~~
engines/scumm/saveload.cpp:1729:24: warning: 'size' may be used uninitialized [-Wmaybe-uninitialized]
 1729 |                 uint32 size;
      |                        ^~~~
engines/scumm/saveload.cpp: In member function 'virtual void Scumm::ScummEngine::saveLoadWithSerializer(Common::Serializer&)':
engines/scumm/saveload.cpp:1433:23: warning: 'tmp' may be used uninitialized in this function [-Wmaybe-uninitialized]
 1433 |                 uint8 tmp;
      |                       ^~~
engines/scumm/saveload.cpp:1233:15: warning: 'idx' may be used uninitialized in this function [-Wmaybe-uninitialized]
 1233 |         ResId idx;
      |               ^~~
engines/scumm/saveload.cpp:1255:32: warning: 'tmp' may be used uninitialized in this function [-Wmaybe-uninitialized]
 1255 |                         uint16 tmp;
      |                                ^~~
    C++      engines/scumm/sound.o
    C++      engines/scumm/util.o
    C++      engines/scumm/usage_bits.o
    C++      engines/scumm/string.o
    C++      engines/scumm/vars.o
    C++      engines/scumm/nut_renderer.o
    C++      engines/scumm/scumm.o
engines/scumm/scumm.cpp: In constructor 'Scumm::ScummEngine::ScummEngine(OSystem*, const Scumm::DetectorResult&)':
engines/scumm/scumm.cpp:248:15: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct Scumm::VirtScreen'; use assignment or value-initialization instead [-Wclass-memaccess]
  248 |         memset(_virtscr, 0, sizeof(_virtscr));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./engines/scumm/scumm.h:42,
                 from ./engines/scumm/actor.h:29,
                 from ./engines/scumm/base-costume.h:27,
                 from ./engines/scumm/akos.h:26,
                 from engines/scumm/scumm.cpp:36:
./engines/scumm/gfx.h:101:8: note: 'struct Scumm::VirtScreen' declared here
  101 | struct VirtScreen : Graphics::Surface {
      |        ^~~~~~~~~~
engines/scumm/scumm.cpp: In constructor 'Scumm::ScummEngine_v6::ScummEngine_v6(OSystem*, const Scumm::DetectorResult&)':
engines/scumm/scumm.cpp:785:15: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct Scumm::ScummEngine_v6::BlastObject'; use assignment or value-initialization instead [-Wclass-memaccess]
  785 |         memset(_blastObjectQueue, 0, sizeof(_blastObjectQueue));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./engines/scumm/he/intern_he.h:26,
                 from engines/scumm/scumm.cpp:50:
./engines/scumm/scumm_v6.h:60:16: note: 'struct Scumm::ScummEngine_v6::BlastObject' declared here
   60 |         struct BlastObject {
      |                ^~~~~~~~~~~
engines/scumm/scumm.cpp:787:15: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct Scumm::ScummEngine_v6::BlastText'; use assignment or value-initialization instead [-Wclass-memaccess]
  787 |         memset(_blastTextQueue, 0, sizeof(_blastTextQueue));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./engines/scumm/he/intern_he.h:26,
                 from engines/scumm/scumm.cpp:50:
./engines/scumm/scumm_v6.h:71:16: note: 'struct Scumm::ScummEngine_v6::BlastText' declared here
   71 |         struct BlastText : TextObject {
      |                ^~~~~~~~~
engines/scumm/scumm.cpp: In constructor 'Scumm::ScummEngine_v71he::ScummEngine_v71he(OSystem*, const Scumm::DetectorResult&)':
engines/scumm/scumm.cpp:871:15: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct Scumm::AuxBlock'; use assignment or value-initialization instead [-Wclass-memaccess]
  871 |         memset(_auxBlocks, 0, sizeof(_auxBlocks));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./engines/scumm/he/intern_he.h:31,
                 from engines/scumm/scumm.cpp:50:
./engines/scumm/actor_he.h:31:8: note: 'struct Scumm::AuxBlock' declared here
   31 | struct AuxBlock {
      |        ^~~~~~~~
    C++      engines/scumm/verbs.o
    C++      engines/scumm/script_v6.o
    C++      engines/scumm/imuse_digi/dimuse_bndmgr.o
    C++      engines/scumm/imuse_digi/dimuse_codecs.o
    C++      engines/scumm/imuse_digi/dimuse_music.o
    C++      engines/scumm/imuse_digi/dimuse.o
    C++      engines/scumm/script_v0.o
    C++      engines/scumm/imuse_digi/dimuse_tables.o
    C++      engines/scumm/imuse_digi/dimuse_script.o
    C++      engines/scumm/imuse_digi/dimuse_track.o
    C++      engines/scumm/imuse_digi/dimuse_sndmgr.o
engines/scumm/imuse_digi/dimuse_sndmgr.cpp: In member function 'int32 Scumm::ImuseDigiSndMgr::getDataFromRegion(Scumm::ImuseDigiSndMgr::SoundDesc*, int, byte**, int32, int32)':
engines/scumm/imuse_digi/dimuse_sndmgr.cpp:667:42: warning: '%03d' directive writing between 3 and 10 bytes into a region of size between 8 and 22 [-Wformat-overflow=]
  667 |                 sprintf(fileName, "%s_reg%03d", soundDesc->name, region);
      |                                          ^~~~
engines/scumm/imuse_digi/dimuse_sndmgr.cpp:667:35: note: directive argument in the range [0, 2147483647]
  667 |                 sprintf(fileName, "%s_reg%03d", soundDesc->name, region);
      |                                   ^~~~~~~~~~~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from engines/scumm/imuse_digi/dimuse_sndmgr.cpp:24:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 8 and 29 bytes into a destination of size 26
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
engines/scumm/imuse_digi/dimuse_sndmgr.cpp:675:50: warning: '%03d' directive writing between 3 and 10 bytes into a region of size between 8 and 22 [-Wformat-overflow=]
  675 |                         sprintf(fileName, "%s_reg%03d.fla", soundDesc->name, region);
      |                                                  ^~~~
engines/scumm/imuse_digi/dimuse_sndmgr.cpp:675:43: note: directive argument in the range [0, 2147483647]
  675 |                         sprintf(fileName, "%s_reg%03d.fla", soundDesc->name, region);
      |                                           ^~~~~~~~~~~~~~~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from engines/scumm/imuse_digi/dimuse_sndmgr.cpp:24:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 12 and 33 bytes into a destination of size 26
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
engines/scumm/imuse_digi/dimuse_sndmgr.cpp:685:58: warning: '%03d' directive writing between 3 and 10 bytes into a region of size between 8 and 22 [-Wformat-overflow=]
  685 |                                 sprintf(fileName, "%s_reg%03d.ogg", soundDesc->name, region);
      |                                                          ^~~~
engines/scumm/imuse_digi/dimuse_sndmgr.cpp:685:51: note: directive argument in the range [0, 2147483647]
  685 |                                 sprintf(fileName, "%s_reg%03d.ogg", soundDesc->name, region);
      |                                                   ^~~~~~~~~~~~~~~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from engines/scumm/imuse_digi/dimuse_sndmgr.cpp:24:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 12 and 33 bytes into a destination of size 26
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
engines/scumm/imuse_digi/dimuse_sndmgr.cpp:696:58: warning: '%03d' directive writing between 3 and 10 bytes into a region of size between 8 and 22 [-Wformat-overflow=]
  696 |                                 sprintf(fileName, "%s_reg%03d.mp3", soundDesc->name, region);
      |                                                          ^~~~
engines/scumm/imuse_digi/dimuse_sndmgr.cpp:696:51: note: directive argument in the range [0, 2147483647]
  696 |                                 sprintf(fileName, "%s_reg%03d.mp3", soundDesc->name, region);
      |                                                   ^~~~~~~~~~~~~~~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from engines/scumm/imuse_digi/dimuse_sndmgr.cpp:24:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 12 and 33 bytes into a destination of size 26
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
    C++      engines/scumm/insane/insane_ben.o
    C++      engines/scumm/insane/insane_iact.o
    C++      engines/scumm/script_v8.o
    C++      engines/scumm/script_v2.o
    C++      engines/scumm/smush/channel.o
    C++      engines/scumm/smush/codec20.o
    C++      engines/scumm/smush/codec1.o
    C++      engines/scumm/insane/insane_scenes.o
engines/scumm/insane/insane_scenes.cpp: In member function 'void Scumm::Insane::postCase16(byte*, int32, int32, int32, int32, int32)':
engines/scumm/insane/insane_scenes.cpp:1067:27: warning: '%04d' directive writing between 4 and 11 bytes into a region of size 8 [-Wformat-overflow=]
 1067 |         sprintf(buf, "^f01%04d", tmp);
      |                           ^~~~
engines/scumm/insane/insane_scenes.cpp:1067:22: note: directive argument in the range [-2147481947, 2147483647]
 1067 |         sprintf(buf, "^f01%04d", tmp);
      |                      ^~~~~~~~~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/engine.h:26,
                 from engines/scumm/insane/insane_scenes.cpp:25:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 9 and 16 bytes into a destination of size 12
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
    C++      engines/scumm/smush/saud_channel.o
    C++      engines/scumm/smush/codec37.o
    C++      engines/scumm/smush/imuse_channel.o
    C++      engines/scumm/smush/codec47.o
    C++      engines/scumm/insane/insane_enemy.o
    C++      engines/scumm/script_v5.o
    C++      engines/scumm/smush/smush_mixer.o
    C++      engines/scumm/smush/smush_font.o
    C++      engines/scumm/he/animation_he.o
    C++      engines/scumm/he/logic_he.o
    C++      engines/scumm/he/floodfill_he.o
    C++      engines/scumm/smush/smush_player.o
    C++      engines/scumm/he/cup_player_he.o
    C++      engines/scumm/he/palette_he.o
    C++      engines/scumm/he/script_v71he.o
    C++      engines/scumm/he/logic/baseball2001.o
    C++      engines/scumm/he/script_v80he.o
    C++      engines/scumm/he/logic/basketball.o
    C++      engines/scumm/he/logic/football.o
    C++      engines/scumm/he/logic/funshop.o
    C++      engines/scumm/he/sprite_he.o
    C++      engines/scumm/he/script_v90he.o
    C++      engines/scumm/he/script_v72he.o
    C++      engines/scumm/he/logic/moonbase_logic.o
    C++      engines/scumm/he/logic/puttrace.o
    C++      engines/scumm/he/moonbase/ai_defenseunit.o
    C++      engines/scumm/he/moonbase/ai_node.o
    C++      engines/scumm/insane/insane.o
In member function 'void Scumm::Insane::smush_setupSanFile(const char*, int32, int32)',
    inlined from 'void Scumm::Insane::smush_rewindCurrentSan(int, int, int)' at engines/scumm/insane/insane.cpp:878:20:
engines/scumm/insane/insane.cpp:1474:15: warning: '%s' directive argument is null [-Wformat-overflow=]
 1474 |         debugC(DEBUG_INSANE, "Insane::smush_setupSanFile(%s, %x, %d)", filename, offset, contFrame);
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    C++      engines/scumm/he/wiz_he.o
engines/scumm/he/wiz_he.cpp: In constructor 'Scumm::PolygonDrawData::PolygonDrawData(int)':
engines/scumm/he/wiz_he.cpp:1853:23: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct Common::Point'; use assignment or value-initialization instead [-Wclass-memaccess]
 1853 |                 memset(mat, 0, sizeof(mat));
      |                 ~~~~~~^~~~~~~~~~~~~~~~~~~~~
In file included from ./graphics/primitives.h:26,
                 from engines/scumm/he/wiz_he.cpp:28:
./common/rect.h:37:8: note: 'struct Common::Point' declared here
   37 | struct Point {
      |        ^~~~~
    C++      engines/scumm/he/logic/soccer.o
    C++      engines/scumm/he/moonbase/ai_types.o
    C++      engines/scumm/he/moonbase/ai_weapon.o
    C++      engines/scumm/he/moonbase/ai_traveller.o
    C++      engines/scumm/he/moonbase/ai_targetacquisition.o
    C++      engines/scumm/he/moonbase/distortion.o
    C++      engines/scumm/he/moonbase/ai_tree.o
    C++      engines/scumm/he/moonbase/moonbase.o
    C++      engines/scumm/he/moonbase/moonbase_fow.o
    C++      engines/access/animation.o
    C++      engines/scumm/he/moonbase/net_main.o
    C++      engines/access/data.o
    C++      engines/access/asurface.o
    C++      engines/access/bubble_box.o
    C++      engines/access/char.o
    C++      engines/scumm/he/moonbase/ai_main.o
    C++      engines/access/decompress.o
    C++      engines/access/debugger.o
    C++      engines/access/access.o
    C++      engines/access/events.o
    C++      engines/access/files.o
    C++      engines/access/font.o
In file included from ./common/stream.h:26,
                 from ./common/memstream.h:26,
                 from ./engines/access/asurface.h:28,
                 from ./engines/access/font.h:29,
                 from engines/access/font.cpp:23:
In member function 'uint16 Common::ReadStream::readUint16LE()',
    inlined from 'void Access::MartianFont::load(Common::SeekableReadStream&)' at engines/access/font.cpp:180:31:
./common/endian.h:383:43: warning: 'val' may be used uninitialized [-Wmaybe-uninitialized]
  383 |         #define FROM_LE_16(a) ((uint16)(a))
      |                                           ^
./common/stream.h:346:24: note: in expansion of macro 'FROM_LE_16'
  346 |                 return FROM_LE_16(val);
      |                        ^~~~~~~~~~
In file included from ./common/memstream.h:26,
                 from ./engines/access/asurface.h:28,
                 from ./engines/access/font.h:29,
                 from engines/access/font.cpp:23:
./common/stream.h: In member function 'void Access::MartianFont::load(Common::SeekableReadStream&)':
./common/stream.h:344:24: note: 'val' declared here
  344 |                 uint16 val;
      |                        ^~~
    C++      engines/access/detection.o
    C++      engines/scumm/he/script_v100he.o
    C++      engines/access/player.o
    C++      engines/access/inventory.o
    C++      engines/access/screen.o
    C++      engines/access/resources.o
    C++      engines/access/video.o
    C++      engines/access/sound.o
    C++      engines/access/amazon/amazon_player.o
    C++      engines/access/room.o
    C++      engines/access/video/movie_decoder.o
    C++      engines/access/amazon/amazon_resources.o
    C++      engines/access/amazon/amazon_room.o
    C++      engines/access/scripts.o
    C++      engines/access/martian/martian_player.o
    C++      engines/access/amazon/amazon_game.o
    C++      engines/access/martian/martian_room.o
    C++      engines/access/amazon/amazon_scripts.o
In file included from ./common/stream.h:26,
                 from ./common/savefile.h:28,
                 from ./engines/access/access.h:30,
                 from engines/access/amazon/amazon_scripts.cpp:24:
In member function 'uint16 Common::ReadStream::readUint16LE()',
    inlined from 'void Access::Amazon::AmazonScripts::cmdSetHelp()' at engines/access/amazon/amazon_scripts.cpp:503:36:
./common/endian.h:383:43: warning: 'val' may be used uninitialized [-Wmaybe-uninitialized]
  383 |         #define FROM_LE_16(a) ((uint16)(a))
      |                                           ^
./common/stream.h:346:24: note: in expansion of macro 'FROM_LE_16'
  346 |                 return FROM_LE_16(val);
      |                        ^~~~~~~~~~
In file included from ./common/savefile.h:28,
                 from ./engines/access/access.h:30,
                 from engines/access/amazon/amazon_scripts.cpp:24:
./common/stream.h: In member function 'void Access::Amazon::AmazonScripts::cmdSetHelp()':
./common/stream.h:344:24: note: 'val' declared here
  344 |                 uint16 val;
      |                        ^~~
    C++      engines/access/martian/martian_resources.o
    C++      engines/access/martian/martian_game.o
    C++      engines/access/martian/martian_scripts.o
    C++      engines/adl/adl_v3.o
    C++      engines/adl/adl_v5.o
    C++      engines/access/amazon/amazon_logic.o
    C++      engines/adl/display.o
    C++      engines/adl/console.o
    C++      engines/adl/detection.o
    C++      engines/adl/adl_v4.o
    C++      engines/adl/adl_v2.o
    C++      engines/adl/disk.o
    C++      engines/adl/hires2.o
    C++      engines/adl/sound.o
    C++      engines/adl/hires1.o
    C++      engines/agi/checks.o
    C++      engines/adl/hires5.o
    C++      engines/adl/hires6.o
    C++      engines/agi/agi.o
    C++      engines/agi/cycle.o
    C++      engines/agi/console.o
    C++      engines/adl/hires4.o
    C++      engines/agi/global.o
    C++      engines/agi/font.o
    C++      engines/agi/inv.o
    C++      engines/agi/loader_v1.o
    C++      engines/agi/loader_v2.o
    C++      engines/agi/keyboard.o
    C++      engines/agi/detection.o
    C++      engines/agi/logic.o
    C++      engines/agi/lzw.o
    C++      engines/agi/loader_v3.o
    C++      engines/adl/adl.o
    C++      engines/agi/motion.o
    C++      engines/agi/graphics.o
    C++      engines/agi/objects.o
    C++      engines/agi/opcodes.o
    C++      engines/agi/op_dbg.o
    C++      engines/agi/menu.o
    C++      engines/agi/op_test.o
    C++      engines/agi/preagi.o
    C++      engines/agi/preagi_troll.o
    C++      engines/adl/display_a2.o
    C++      engines/agi/picture.o
    C++      engines/agi/sound.o
    C++      engines/agi/op_cmd.o
    C++      engines/agi/sound_coco3.o
    C++      engines/agi/sound_pcjr.o
    C++      engines/agi/sound_sarien.o
    C++      engines/agi/preagi_winnie.o
    C++      engines/agi/saveload.o
    C++      engines/agi/sound_midi.o
    C++      engines/agi/preagi_mickey.o
    C++      engines/agi/sprite.o
    C++      engines/agi/sound_2gs.o
    C++      engines/agos/drivers/accolade/driverfile.o
    C++      engines/agi/view.o
    C++      engines/agi/wagparser.o
    C++      engines/agos/drivers/accolade/mt32.o
    C++      engines/agi/words.o
    C++      engines/agos/drivers/accolade/adlib.o
    C++      engines/agi/text.o
In file included from /usr/include/string.h:519,
                 from ./common/scummsys.h:120,
                 from ./common/array.h:26,
                 from ./common/config-manager.h:26,
                 from engines/agi/text.cpp:23:
In function 'char* strncpy(char*, const char*, size_t)',
    inlined from 'void Agi::TextMgr::promptCommandWindow(bool, uint16)' at engines/agi/text.cpp:855:11:
/usr/include/bits/string_fortified.h:95:34: warning: 'char* __builtin_strncpy(char*, const char*, long unsigned int)' specified bound 42 equals destination size [-Wstringop-truncation]
   95 |   return __builtin___strncpy_chk (__dest, __src, __len,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
   96 |                                   __glibc_objsize (__dest));
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~
    C++      engines/agi/systemui.o
engines/agi/systemui.cpp: In member function 'void Agi::SystemUI::createSavedGameDisplayText(char*, const char*, int16, bool)':
engines/agi/systemui.cpp:551:30: warning: '%02d' directive writing between 2 and 6 bytes into a region of size 3 [-Wformat-overflow=]
  551 |         sprintf(slotIdChar, "%02d", slotId);
      |                              ^~~~
engines/agi/systemui.cpp:551:29: note: directive argument in the range [-32768, 32767]
  551 |         sprintf(slotIdChar, "%02d", slotId);
      |                             ^~~~~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/agi/agi.h:26,
                 from engines/agi/systemui.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 3 and 7 bytes into a destination of size 3
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
    C++      engines/agos/drivers/simon1/adlib.o
    C++      engines/agos/charset.o
    C++      engines/agos/contain.o
    C++      engines/agos/charset-fontdata.o
    C++      engines/agos/cursor.o
    C++      engines/agos/debugger.o
    C++      engines/agos/debug.o
    C++      engines/agos/agos.o
    C++      engines/agos/draw.o
    C++      engines/agos/event.o
    C++      engines/agos/input_pn.o
    C++      engines/agos/detection.o
    C++      engines/agos/input.o
    C++      engines/agos/menus.o
    C++      engines/agos/midiparser_s1d.o
    C++      engines/agos/items.o
    C++      engines/agos/icons.o
    C++      engines/agos/pn.o
    C++      engines/agos/gfx.o
    C++      engines/agos/res_ami.o
    C++      engines/agos/midi.o
    C++      engines/agos/rooms.o
    C++      engines/agos/res_snd.o
engines/agos/res_snd.cpp: In member function 'void AGOS::AGOSEngine::playSting(uint16)':
engines/agos/res_snd.cpp:324:40: warning: '__builtin___sprintf_chk' may write a terminating nul past the end of the destination [-Wformat-overflow=]
  324 |         sprintf(filename, "STINGS%i.MUS", _soundFileId);
      |                                        ^
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./common/array.h:26,
                 from ./common/config-manager.h:26,
                 from engines/agos/res_snd.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 12 and 16 bytes into a destination of size 15
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
    C++      engines/agos/script_e2.o
    C++      engines/agos/script_ww.o
    C++      engines/agos/script_e1.o
    C++      engines/agos/res.o
    C++      engines/agos/script.o
    C++      engines/agos/script_pn.o
    C++      engines/agos/script_s1.o
engines/agos/script_s1.cpp: In member function 'void AGOS::AGOSEngine_Simon1::os1_loadStrings()':
engines/agos/script_s1.cpp:544:33: warning: '%s' directive writing 7 bytes into a region of size between 5 and 9 [-Wformat-overflow=]
  544 |                 sprintf(buf, "%d%s", _soundFileId, "Effects");
      |                                 ^~                 ~~~~~~~~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./common/system.h:26,
                 from engines/agos/script_s1.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 9 and 13 bytes into a destination of size 10
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
engines/agos/script_s1.cpp:546:35: warning: '__builtin___sprintf_chk' may write a terminating nul past the end of the destination [-Wformat-overflow=]
  546 |                 sprintf(buf, "%d%s", _soundFileId, "simon");
      |                                   ^
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./common/system.h:26,
                 from engines/agos/script_s1.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 7 and 11 bytes into a destination of size 10
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
    C++      engines/agos/script_s2.o
    C++      engines/agos/string_pn.o
    C++      engines/agos/verb_pn.o
    C++      engines/agos/saveload.o
    C++      engines/agos/verb.o
    C++      engines/agos/subroutine.o
    C++      engines/agos/sound.o
    C++      engines/agos/vga_pn.o
    C++      engines/agos/vga_ww.o
    C++      engines/agos/string.o
    C++      engines/agos/vga_e2.o
    C++      engines/agos/vga_s1.o
    C++      engines/agos/vga_s2.o
    C++      engines/agos/zones.o
    C++      engines/agos/script_dp.o
    C++      engines/agos/window.o
    C++      engines/agos/vga.o
    C++      engines/agos/script_pp.o
    C++      engines/agos/oracle.o
    C++      engines/agos/feeble.o
    C++      engines/agos/animation.o
    C++      engines/agos/script_ff.o
    C++      engines/agos/vga_ff.o
    C++      engines/avalanche/closing.o
    C++      engines/avalanche/console.o
    C++      engines/avalanche/background.o
    C++      engines/avalanche/avalanche.o
    C++      engines/avalanche/detection.o
    C++      engines/avalanche/animation.o
    C++      engines/avalanche/avalot.o
    C++      engines/avalanche/dropdown.o
    C++      engines/avalanche/sound.o
    C++      engines/avalanche/sequence.o
    C++      engines/avalanche/dialogs.o
    C++      engines/avalanche/clock.o
    C++      engines/avalanche/graphics.o
    C++      engines/avalanche/timer.o
    C++      engines/avalanche/nim.o
    C++      engines/avalanche/help.o
    C++      engines/avalanche/ghostroom.o
    C++      engines/avalanche/mainmenu.o
    C++      engines/avalanche/highscore.o
    C++      engines/bbvs/graphics.o
    C++      engines/bbvs/logic.o
    C++      engines/bbvs/dialogs.o
    C++      engines/avalanche/shootemup.o
    C++      engines/bbvs/detection.o
    C++      engines/bbvs/gamemodule.o
    C++      engines/bbvs/spritemodule.o
    C++      engines/bbvs/sound.o
    C++      engines/bbvs/scene.o
engines/bbvs/scene.cpp: In member function 'void Bbvs::BbvsEngine::initScene(bool)':
engines/bbvs/scene.cpp:103:15: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct Bbvs::SceneObject'; use assignment or value-initialization instead [-Wclass-memaccess]
  103 |         memset(_sceneObjects, 0, sizeof(_sceneObjects));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from engines/bbvs/scene.cpp:23:
./engines/bbvs/bbvs.h:164:8: note: 'struct Bbvs::SceneObject' declared here
  164 | struct SceneObject {
      |        ^~~~~~~~~~~
    C++      engines/bbvs/videoplayer.o
    C++      engines/bbvs/bbvs.o
    C++      engines/avalanche/parser.o
    C++      engines/bbvs/minigames/bbairguitar_anims.o
    C++      engines/bbvs/minigames/bbant_anims.o
    C++      engines/bbvs/saveload.o
engines/bbvs/saveload.cpp: In member function 'void Bbvs::BbvsEngine::loadgame(const char*)':
engines/bbvs/saveload.cpp:112:15: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct Bbvs::SceneObject'; use assignment or value-initialization instead [-Wclass-memaccess]
  112 |         memset(_sceneObjects, 0, sizeof(_sceneObjects));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from engines/bbvs/saveload.cpp:23:
./engines/bbvs/bbvs.h:164:8: note: 'struct Bbvs::SceneObject' declared here
  164 | struct SceneObject {
      |        ^~~~~~~~~~~
    C++      engines/bbvs/walk.o
    C++      engines/bbvs/minigames/bbloogie_anims.o
    C++      engines/bbvs/minigames/bbtennis_anims.o
    C++      engines/bbvs/minigames/minigame.o
    C++      engines/bbvs/minigames/bbairguitar.o
    C++      engines/bbvs/minigames/bbant.o
    C++      engines/bladerunner/adpcm_decoder.o
    C++      engines/bladerunner/actor_clues.o
    C++      engines/bbvs/minigames/bbloogie.o
    C++      engines/bbvs/minigames/bbtennis.o
    C++      engines/bladerunner/actor_dialogue_queue.o
    C++      engines/bladerunner/actor_combat.o
    C++      engines/bladerunner/aud_stream.o
    C++      engines/bladerunner/archive.o
    C++      engines/bladerunner/audio_cache.o
    C++      engines/bladerunner/actor_walk.o
    C++      engines/bladerunner/ambient_sounds.o
    C++      engines/bladerunner/actor.o
    C++      engines/bladerunner/boundingbox.o
    C++      engines/bladerunner/audio_mixer.o
    C++      engines/bladerunner/audio_player.o
    C++      engines/bladerunner/chapters.o
    C++      engines/bladerunner/audio_speech.o
    C++      engines/bladerunner/decompress_lcw.o
    C++      engines/bladerunner/decompress_lzo.o
    C++      engines/bladerunner/crimes_database.o
    C++      engines/bladerunner/framelimiter.o
    C++      engines/bladerunner/detection.o
    C++      engines/bladerunner/combat.o
    C++      engines/bladerunner/dialogue_menu.o
    C++      engines/bladerunner/game_flags.o
    C++      engines/bladerunner/fog.o
    C++      engines/bladerunner/image.o
    C++      engines/bladerunner/font.o
    C++      engines/bladerunner/game_info.o
    C++      engines/bladerunner/item_pickup.o
    C++      engines/bladerunner/item.o
    C++      engines/bladerunner/matrix.o
    C++      engines/bladerunner/lights.o
    C++      engines/bladerunner/light.o
    C++      engines/bladerunner/movement_track.o
    C++      engines/bladerunner/items.o
    C++      engines/bladerunner/mouse.o
    C++      engines/bladerunner/outtake.o
    C++      engines/bladerunner/music.o
    C++      engines/bladerunner/regions.o
    C++      engines/bladerunner/overlays.o
    C++      engines/bladerunner/obstacles.o
    C++      engines/bladerunner/screen_effects.o
    C++      engines/bladerunner/scene_objects.o
    C++      engines/bladerunner/scene.o
    C++      engines/bladerunner/bladerunner.o
    C++      engines/bladerunner/debugger.o
    C++      engines/bladerunner/savefile.o
    C++      engines/bladerunner/script/esper_script.o
    C++      engines/bladerunner/script/ai/answering_machine.o
    C++      engines/bladerunner/script/kia_script.o
    C++      engines/bladerunner/script/ai_script.o
    C++      engines/bladerunner/script/police_maze.o
    C++      engines/bladerunner/script/ai/blimp_guy.o
    C++      engines/bladerunner/script/ai/baker.o
    C++      engines/bladerunner/script/ai/bryant.o
    C++      engines/bladerunner/script/ai/bullet_bob.o
    C++      engines/bladerunner/script/ai/chew.o
    C++      engines/bladerunner/script/ai/crazylegs.o
    C++      engines/bladerunner/script/script.o
    C++      engines/bladerunner/script/vk_script.o
    C++      engines/bladerunner/script/ai/dispatcher.o
    C++      engines/bladerunner/script/ai/desk_clerk.o
    C++      engines/bladerunner/script/ai/clovis.o
    C++      engines/bladerunner/script/ai/early_q_bartender.o
    C++      engines/bladerunner/script/ai/dektora.o
    C++      engines/bladerunner/script/ai/fish_dealer.o
    C++      engines/bladerunner/script/ai/early_q.o
    C++      engines/bladerunner/script/ai/free_slot_a.o
    C++      engines/bladerunner/script/ai/free_slot_b.o
    C++      engines/bladerunner/script/init_script.o
    C++      engines/bladerunner/script/ai/gaff.o
    C++      engines/bladerunner/script/ai/general_doll.o
    C++      engines/bladerunner/script/ai/generic_walker_a.o
    C++      engines/bladerunner/script/ai/generic_walker_b.o
    C++      engines/bladerunner/script/ai/governor_kolvig.o
    C++      engines/bladerunner/script/ai/generic_walker_c.o
    C++      engines/bladerunner/script/ai/grigorian.o
    C++      engines/bladerunner/script/ai/hasan.o
    C++      engines/bladerunner/script/ai/hanoi.o
    C++      engines/bladerunner/script/ai/guzza.o
    C++      engines/bladerunner/script/ai/hawkers_parrot.o
    C++      engines/bladerunner/script/ai/hawkers_barkeep.o
    C++      engines/bladerunner/script/ai/holloway.o
    C++      engines/bladerunner/script/ai/gordo.o
    C++      engines/bladerunner/script/ai/howie_lee.o
    C++      engines/bladerunner/script/ai/hysteria_patron1.o
    C++      engines/bladerunner/script/ai/hysteria_patron2.o
    C++      engines/bladerunner/script/ai/hysteria_patron3.o
    C++      engines/bladerunner/script/ai/insect_dealer.o
    C++      engines/bladerunner/script/ai/isabella.o
    C++      engines/bladerunner/script/ai/lance.o
    C++      engines/bladerunner/script/ai/lockup_guard.o
    C++      engines/bladerunner/script/ai/klein.o
    C++      engines/bladerunner/script/ai/leon.o
    C++      engines/bladerunner/script/ai/izo.o
    C++      engines/bladerunner/script/ai/male_announcer.o
    C++      engines/bladerunner/script/ai/lucy.o
    C++      engines/bladerunner/script/ai/luther.o
    C++      engines/bladerunner/script/ai/marcus.o
    C++      engines/bladerunner/script/ai/maggie.o
    C++      engines/bladerunner/script/ai/mia.o
    C++      engines/bladerunner/script/ai/murray.o
    C++      engines/bladerunner/script/ai/moraji.o
    C++      engines/bladerunner/script/ai/mutant1.o
    C++      engines/bladerunner/script/ai/mutant2.o
    C++      engines/bladerunner/script/ai/newscaster.o
    C++      engines/bladerunner/script/ai/mutant3.o
    C++      engines/bladerunner/script/ai/mccoy.o
    C++      engines/bladerunner/script/ai/rajif.o
    C++      engines/bladerunner/script/ai/photographer.o
    C++      engines/bladerunner/script/ai/officer_grayford.o
    C++      engines/bladerunner/script/ai/rachael.o
    C++      engines/bladerunner/script/ai/runciter.o
    C++      engines/bladerunner/script/ai/shoeshine_man.o
    C++      engines/bladerunner/script/ai/officer_leary.o
    C++      engines/bladerunner/script/ai/sergeant_walls.o
    C++      engines/bladerunner/script/ai/sebastian.o
    C++      engines/bladerunner/script/ai/sadik.o
    C++      engines/bladerunner/script/ai/taffy.o
    C++      engines/bladerunner/script/ai/taffy_patron.o
    C++      engines/bladerunner/script/ai/the_bard.o
    C++      engines/bladerunner/script/ai/teenager.o
    C++      engines/bladerunner/script/ai/tyrell.o
    C++      engines/bladerunner/script/ai/transient.o
    C++      engines/bladerunner/script/ai/tyrell_guard.o
    C++      engines/bladerunner/script/scene/ar01.o
    C++      engines/bladerunner/script/scene/bb02.o
    C++      engines/bladerunner/script/ai/zuben.o
    C++      engines/bladerunner/script/scene/bb03.o
    C++      engines/bladerunner/script/scene/ar02.o
    C++      engines/bladerunner/script/ai/steele.o
    C++      engines/bladerunner/script/scene/bb01.o
    C++      engines/bladerunner/script/scene_script.o
    C++      engines/bladerunner/script/scene/bb04.o
    C++      engines/bladerunner/script/scene/bb05.o
    C++      engines/bladerunner/script/scene/bb07.o
    C++      engines/bladerunner/script/scene/bb06.o
    C++      engines/bladerunner/script/scene/bb08.o
    C++      engines/bladerunner/script/scene/bb09.o
    C++      engines/bladerunner/script/scene/bb10.o
    C++      engines/bladerunner/script/scene/bb11.o
    C++      engines/bladerunner/script/scene/bb51.o
    C++      engines/bladerunner/script/scene/bb12.o
    C++      engines/bladerunner/script/scene/ct03.o
    C++      engines/bladerunner/script/scene/ct02.o
    C++      engines/bladerunner/script/scene/ct05.o
    C++      engines/bladerunner/script/scene/ct04.o
    C++      engines/bladerunner/script/scene/ct06.o
    C++      engines/bladerunner/script/scene/ct01.o
    C++      engines/bladerunner/script/scene/ct07.o
    C++      engines/bladerunner/script/scene/ct08.o
    C++      engines/bladerunner/script/scene/ct09.o
    C++      engines/bladerunner/script/scene/ct10.o
    C++      engines/bladerunner/script/scene/ct11.o
    C++      engines/bladerunner/script/scene/ct51.o
    C++      engines/bladerunner/script/scene/ct12.o
    C++      engines/bladerunner/script/scene/dr02.o
    C++      engines/bladerunner/script/scene/dr01.o
    C++      engines/bladerunner/script/scene/dr03.o
    C++      engines/bladerunner/script/scene/dr04.o
    C++      engines/bladerunner/script/scene/dr05.o
    C++      engines/bladerunner/script/scene/dr06.o
    C++      engines/bladerunner/script/scene/hc02.o
    C++      engines/bladerunner/script/scene/hc01.o
    C++      engines/bladerunner/script/scene/hc03.o
    C++      engines/bladerunner/script/scene/hc04.o
    C++      engines/bladerunner/script/scene/hf02.o
    C++      engines/bladerunner/script/scene/hf03.o
    C++      engines/bladerunner/script/scene/hf04.o
    C++      engines/bladerunner/script/scene/hf01.o
    C++      engines/bladerunner/script/scene/hf07.o
    C++      engines/bladerunner/script/scene/hf06.o
    C++      engines/bladerunner/script/scene/kp02.o
    C++      engines/bladerunner/script/scene/kp01.o
    C++      engines/bladerunner/script/scene/kp04.o
    C++      engines/bladerunner/script/scene/hf05.o
    C++      engines/bladerunner/script/scene/kp03.o
    C++      engines/bladerunner/script/scene/kp05.o
    C++      engines/bladerunner/script/scene/kp06.o
    C++      engines/bladerunner/script/scene/kp07.o
    C++      engines/bladerunner/script/scene/ma01.o
    C++      engines/bladerunner/script/scene/ma02.o
    C++      engines/bladerunner/script/scene/ma05.o
    C++      engines/bladerunner/script/scene/ma07.o
    C++      engines/bladerunner/script/scene/ma06.o
    C++      engines/bladerunner/script/scene/ma08.o
    C++      engines/bladerunner/script/scene/ma04.o
    C++      engines/bladerunner/script/scene/nr02.o
    C++      engines/bladerunner/script/scene/nr03.o
    C++      engines/bladerunner/script/scene/nr01.o
    C++      engines/bladerunner/script/scene/nr06.o
    C++      engines/bladerunner/script/scene/nr04.o
    C++      engines/bladerunner/script/scene/nr05.o
    C++      engines/bladerunner/script/scene/nr07.o
    C++      engines/bladerunner/script/scene/nr08.o
    C++      engines/bladerunner/script/scene/nr09.o
    C++      engines/bladerunner/script/scene/nr10.o
    C++      engines/bladerunner/script/scene/ps02.o
    C++      engines/bladerunner/script/scene/nr11.o
    C++      engines/bladerunner/script/scene/ps01.o
    C++      engines/bladerunner/script/scene/ps03.o
    C++      engines/bladerunner/script/scene/ps04.o
    C++      engines/bladerunner/script/scene/ps06.o
    C++      engines/bladerunner/script/scene/ps05.o
    C++      engines/bladerunner/script/scene/ps07.o
    C++      engines/bladerunner/script/scene/ps10.o
    C++      engines/bladerunner/script/scene/ps09.o
    C++      engines/bladerunner/script/scene/ps12.o
    C++      engines/bladerunner/script/scene/ps14.o
    C++      engines/bladerunner/script/scene/ps11.o
    C++      engines/bladerunner/script/scene/ps13.o
    C++      engines/bladerunner/script/scene/ps15.o
    C++      engines/bladerunner/script/scene/rc01.o
    C++      engines/bladerunner/script/scene/rc51.o
    C++      engines/bladerunner/script/scene/rc03.o
    C++      engines/bladerunner/script/scene/rc02.o
    C++      engines/bladerunner/script/scene/rc04.o
    C++      engines/bladerunner/script/scene/tb03.o
    C++      engines/bladerunner/script/scene/tb05.o
    C++      engines/bladerunner/script/scene/tb02.o
    C++      engines/bladerunner/script/scene/tb06.o
    C++      engines/bladerunner/script/scene/ug01.o
    C++      engines/bladerunner/script/scene/tb07.o
    C++      engines/bladerunner/script/scene/ug03.o
    C++      engines/bladerunner/script/scene/ug02.o
    C++      engines/bladerunner/script/scene/ug04.o
    C++      engines/bladerunner/script/scene/ug06.o
    C++      engines/bladerunner/script/scene/ug05.o
    C++      engines/bladerunner/script/scene/ug07.o
    C++      engines/bladerunner/script/scene/ug08.o
    C++      engines/bladerunner/script/scene/ug09.o
    C++      engines/bladerunner/script/scene/ug12.o
    C++      engines/bladerunner/script/scene/ug10.o
    C++      engines/bladerunner/script/scene/ug14.o
    C++      engines/bladerunner/script/scene/ug15.o
    C++      engines/bladerunner/script/scene/ug13.o
    C++      engines/bladerunner/script/scene/ug17.o
    C++      engines/bladerunner/script/scene/ug19.o
    C++      engines/bladerunner/script/scene/ug16.o
    C++      engines/bladerunner/set_effects.o
    C++      engines/bladerunner/settings.o
    C++      engines/bladerunner/shape.o
    C++      engines/bladerunner/script/scene/ug18.o
    C++      engines/bladerunner/time.o
    C++      engines/bladerunner/text_resource.o
    C++      engines/bladerunner/set.o
    C++      engines/bladerunner/suspects_database.o
    C++      engines/bladerunner/subtitles.o
    C++      engines/bladerunner/slice_animations.o
    C++      engines/bladerunner/ui/elevator.o
    C++      engines/bladerunner/ui/kia_section_base.o
    C++      engines/bladerunner/ui/end_credits.o
    C++      engines/bladerunner/ui/kia_log.o
    C++      engines/bladerunner/ui/kia_section_diagnostic.o
    C++      engines/bladerunner/slice_renderer.o
    C++      engines/bladerunner/ui/kia_section_help.o
    C++      engines/bladerunner/ui/kia_section_load.o
    C++      engines/bladerunner/ui/kia_section_clues.o
    C++      engines/bladerunner/ui/kia_section_pogo.o
    C++      engines/bladerunner/ui/kia_section_crimes.o
    C++      engines/bladerunner/ui/kia.o
    C++      engines/bladerunner/ui/ui_check_box.o
    C++      engines/bladerunner/ui/scores.o
    C++      engines/bladerunner/ui/kia_section_save.o
    C++      engines/bladerunner/ui/kia_section_settings.o
engines/bladerunner/ui/kia_section_settings.cpp: In member function 'virtual void BladeRunner::KIASectionSettings::draw(Graphics::Surface&)':
engines/bladerunner/ui/kia_section_settings.cpp:326:29: warning: unused variable 'textLanguageSelect' [-Wunused-variable]
  326 |                 const char *textLanguageSelect = strcmp(_vm->_textOptions->getText(43), "") == 0 ? languageSelectTranslation : _vm->_textOptions->getText(43);
      |                             ^~~~~~~~~~~~~~~~~~
    C++      engines/bladerunner/ui/spinner.o
    C++      engines/bladerunner/ui/ui_container.o
    C++      engines/bladerunner/ui/ui_input_box.o
    C++      engines/bladerunner/ui/kia_section_suspects.o
    C++      engines/bladerunner/ui/ui_slider.o
    C++      engines/bladerunner/ui/ui_image_picker.o
    C++      engines/bladerunner/view.o
    C++      engines/bladerunner/ui/ui_dropdown.o
    C++      engines/bladerunner/ui/esper.o
    C++      engines/bladerunner/vqa_player.o
    C++      engines/bladerunner/waypoints.o
    C++      engines/bladerunner/ui/ui_scroll_box.o
    C++      engines/bladerunner/zbuffer.o
    C++      engines/cge/console.o
    C++      engines/cge/bitmap.o
    C++      engines/bladerunner/vqa_decoder.o
    C++      engines/bladerunner/ui/vk.o
    C++      engines/cge/cge.o
    C++      engines/cge/events.o
    C++      engines/cge/game.o
    C++      engines/cge/fileio.o
    C++      engines/cge/talk.o
    C++      engines/cge/sound.o
    C++      engines/cge/detection.o
    C++      engines/cge/text.o
    C++      engines/cge/vmenu.o
    C++      engines/cge/cge_main.o
engines/cge/cge_main.cpp: In member function 'void CGE::CGEEngine::loadHeroXY()':
engines/cge/cge_main.cpp:494:15: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct Common::Point'; use assignment or value-initialization instead [-Wclass-memaccess]
  494 |         memset(_heroXY, 0, sizeof(_heroXY));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./common/events.h:28,
                 from ./engines/cge/vga13h.h:32,
                 from engines/cge/cge_main.cpp:37:
./common/rect.h:37:8: note: 'struct Common::Point' declared here
   37 | struct Point {
      |        ^~~~~
    C++      engines/cge2/fileio.o
    C++      engines/cge/walk.o
    C++      engines/cge2/cge2.o
In file included from engines/cge2/cge2.cpp:34:
./engines/cge2/vga13h.h: In member function 'CGE2::V3D& CGE2::V3D::operator+=(const CGE2::V3D&)':
./engines/cge2/vga13h.h:91:64: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
   91 |         V3D& operator+=(const V3D &x) { return *this = *this + x; }
      |                                                                ^
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
./engines/cge2/vga13h.h: In member function 'CGE2::V3D& CGE2::V3D::operator-=(const CGE2::V3D&)':
./engines/cge2/vga13h.h:92:64: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
   92 |         V3D& operator-=(const V3D &x) { return *this = *this - x; }
      |                                                                ^
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
    C++      engines/cge/snail.o
    C++      engines/cge2/bitmap.o
In file included from engines/cge2/bitmap.cpp:30:
./engines/cge2/vga13h.h: In member function 'CGE2::V3D& CGE2::V3D::operator+=(const CGE2::V3D&)':
./engines/cge2/vga13h.h:91:64: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
   91 |         V3D& operator+=(const V3D &x) { return *this = *this + x; }
      |                                                                ^
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
./engines/cge2/vga13h.h: In member function 'CGE2::V3D& CGE2::V3D::operator-=(const CGE2::V3D&)':
./engines/cge2/vga13h.h:92:64: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
   92 |         V3D& operator-=(const V3D &x) { return *this = *this - x; }
      |                                                                ^
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
    C++      engines/cge2/detection.o
    C++      engines/cge2/text.o
In file included from ./engines/cge2/talk.h:32,
                 from ./engines/cge2/text.h:31,
                 from engines/cge2/text.cpp:28:
./engines/cge2/vga13h.h: In member function 'CGE2::V3D& CGE2::V3D::operator+=(const CGE2::V3D&)':
./engines/cge2/vga13h.h:91:64: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
   91 |         V3D& operator+=(const V3D &x) { return *this = *this + x; }
      |                                                                ^
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
./engines/cge2/vga13h.h: In member function 'CGE2::V3D& CGE2::V3D::operator-=(const CGE2::V3D&)':
./engines/cge2/vga13h.h:92:64: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
   92 |         V3D& operator-=(const V3D &x) { return *this = *this - x; }
      |                                                                ^
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
    C++      engines/cge2/sound.o
    C++      engines/cge/vga13h.o
    C++      engines/cge2/spare.o
In file included from ./engines/cge2/spare.h:31,
                 from engines/cge2/spare.cpp:28:
./engines/cge2/vga13h.h: In member function 'CGE2::V3D& CGE2::V3D::operator+=(const CGE2::V3D&)':
./engines/cge2/vga13h.h:91:64: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
   91 |         V3D& operator+=(const V3D &x) { return *this = *this + x; }
      |                                                                ^
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
./engines/cge2/vga13h.h: In member function 'CGE2::V3D& CGE2::V3D::operator-=(const CGE2::V3D&)':
./engines/cge2/vga13h.h:92:64: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
   92 |         V3D& operator-=(const V3D &x) { return *this = *this - x; }
      |                                                                ^
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
./engines/cge2/vga13h.h: In member function 'CGE2::Sprite& CGE2::Sprite::operator=(const CGE2::Sprite&)':
./engines/cge2/vga13h.h:154:7: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
  154 | class Sprite {
      |       ^~~~~~
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
engines/cge2/spare.cpp: In member function 'void CGE2::Spare::update(CGE2::Sprite*)':
engines/cge2/spare.cpp:106:24: note: synthesized method 'CGE2::Sprite& CGE2::Sprite::operator=(const CGE2::Sprite&)' first required here
  106 |                 *sp = *spr;
      |                        ^~~
    C++      engines/cge2/vga13h.o
In file included from engines/cge2/vga13h.cpp:33:
./engines/cge2/vga13h.h: In member function 'CGE2::V3D& CGE2::V3D::operator+=(const CGE2::V3D&)':
./engines/cge2/vga13h.h:91:64: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
   91 |         V3D& operator+=(const V3D &x) { return *this = *this + x; }
      |                                                                ^
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
./engines/cge2/vga13h.h: In member function 'CGE2::V3D& CGE2::V3D::operator-=(const CGE2::V3D&)':
./engines/cge2/vga13h.h:92:64: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
   92 |         V3D& operator-=(const V3D &x) { return *this = *this - x; }
      |                                                                ^
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
engines/cge2/vga13h.cpp: In member function 'void CGE2::Sprite::gotoxyz(CGE2::V3D)':
engines/cge2/vga13h.cpp:659:35: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
  659 |         gotoxyz(V2D(_vm, _pos3D = pos));
      |                                   ^~~
In file included from engines/cge2/vga13h.cpp:33:
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
    C++      engines/cge2/map.o
In file included from ./engines/cge2/map.h:31,
                 from engines/cge2/map.cpp:28:
./engines/cge2/vga13h.h: In member function 'CGE2::V3D& CGE2::V3D::operator+=(const CGE2::V3D&)':
./engines/cge2/vga13h.h:91:64: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
   91 |         V3D& operator+=(const V3D &x) { return *this = *this + x; }
      |                                                                ^
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
./engines/cge2/vga13h.h: In member function 'CGE2::V3D& CGE2::V3D::operator-=(const CGE2::V3D&)':
./engines/cge2/vga13h.h:92:64: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
   92 |         V3D& operator-=(const V3D &x) { return *this = *this - x; }
      |                                                                ^
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
    C++      engines/cge2/cge2_main.o
In file included from ./engines/cge2/talk.h:32,
                 from ./engines/cge2/events.h:32,
                 from ./engines/cge2/cge2_main.h:31,
                 from engines/cge2/cge2_main.cpp:29:
./engines/cge2/vga13h.h: In member function 'CGE2::V3D& CGE2::V3D::operator+=(const CGE2::V3D&)':
./engines/cge2/vga13h.h:91:64: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
   91 |         V3D& operator+=(const V3D &x) { return *this = *this + x; }
      |                                                                ^
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
./engines/cge2/vga13h.h: In member function 'CGE2::V3D& CGE2::V3D::operator-=(const CGE2::V3D&)':
./engines/cge2/vga13h.h:92:64: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
   92 |         V3D& operator-=(const V3D &x) { return *this = *this - x; }
      |                                                                ^
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
engines/cge2/cge2_main.cpp: In member function 'void CGE2::CGE2Engine::sceneUp(int)':
engines/cge2/cge2_main.cpp:417:32: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
  417 |         *_eye = *(_eyeTab[_now]);
      |                                ^
In file included from ./engines/cge2/talk.h:32,
                 from ./engines/cge2/events.h:32,
                 from ./engines/cge2/cge2_main.h:31,
                 from engines/cge2/cge2_main.cpp:29:
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
engines/cge2/cge2_main.cpp: In member function 'void CGE2::CGE2Engine::switchScene(int)':
engines/cge2/cge2_main.cpp:484:29: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
  484 |         *(_eyeTab[_now]) = *_eye;
      |                             ^~~~
In file included from ./engines/cge2/talk.h:32,
                 from ./engines/cge2/events.h:32,
                 from ./engines/cge2/cge2_main.h:31,
                 from engines/cge2/cge2_main.cpp:29:
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
./engines/cge2/vga13h.h: In member function 'CGE2::Sprite& CGE2::Sprite::operator=(const CGE2::Sprite&)':
./engines/cge2/vga13h.h:154:7: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
  154 | class Sprite {
      |       ^~~~~~
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
engines/cge2/cge2_main.cpp: In member function 'void CGE2::CGE2Engine::loadHeroes()':
engines/cge2/cge2_main.cpp:669:32: note: synthesized method 'CGE2::Sprite& CGE2::Sprite::operator=(const CGE2::Sprite&)' first required here
  669 |                 *(Sprite*)h = *s;
      |                                ^
engines/cge2/cge2_main.cpp: In member function 'void CGE2::CGE2Engine::loadTab()':
engines/cge2/cge2_main.cpp:721:34: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
  721 |                 *(_eyeTab[i]) = *_eye;
      |                                  ^~~~
In file included from ./engines/cge2/talk.h:32,
                 from ./engines/cge2/events.h:32,
                 from ./engines/cge2/cge2_main.h:31,
                 from engines/cge2/cge2_main.cpp:29:
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
engines/cge2/cge2_main.cpp: In member function 'void CGE2::CGE2Engine::setEye(const CGE2::V3D&)':
engines/cge2/cge2_main.cpp:771:17: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
  771 |         *_eye = e;
      |                 ^
In file included from ./engines/cge2/talk.h:32,
                 from ./engines/cge2/events.h:32,
                 from ./engines/cge2/cge2_main.h:31,
                 from engines/cge2/cge2_main.cpp:29:
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
    C++      engines/cge2/talk.o
In file included from ./engines/cge2/talk.h:32,
                 from engines/cge2/talk.cpp:29:
./engines/cge2/vga13h.h: In member function 'CGE2::V3D& CGE2::V3D::operator+=(const CGE2::V3D&)':
./engines/cge2/vga13h.h:91:64: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
   91 |         V3D& operator+=(const V3D &x) { return *this = *this + x; }
      |                                                                ^
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
./engines/cge2/vga13h.h: In member function 'CGE2::V3D& CGE2::V3D::operator-=(const CGE2::V3D&)':
./engines/cge2/vga13h.h:92:64: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
   92 |         V3D& operator-=(const V3D &x) { return *this = *this - x; }
      |                                                                ^
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
    C++      engines/cge2/events.o
In file included from ./engines/cge2/talk.h:32,
                 from ./engines/cge2/events.h:32,
                 from engines/cge2/events.cpp:31:
./engines/cge2/vga13h.h: In member function 'CGE2::V3D& CGE2::V3D::operator+=(const CGE2::V3D&)':
./engines/cge2/vga13h.h:91:64: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
   91 |         V3D& operator+=(const V3D &x) { return *this = *this + x; }
      |                                                                ^
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
./engines/cge2/vga13h.h: In member function 'CGE2::V3D& CGE2::V3D::operator-=(const CGE2::V3D&)':
./engines/cge2/vga13h.h:92:64: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
   92 |         V3D& operator-=(const V3D &x) { return *this = *this - x; }
      |                                                                ^
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
    C++      engines/cge2/snail.o
In file included from ./engines/cge2/hero.h:31,
                 from engines/cge2/snail.cpp:30:
./engines/cge2/vga13h.h: In member function 'CGE2::V3D& CGE2::V3D::operator+=(const CGE2::V3D&)':
./engines/cge2/vga13h.h:91:64: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
   91 |         V3D& operator+=(const V3D &x) { return *this = *this + x; }
      |                                                                ^
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
./engines/cge2/vga13h.h: In member function 'CGE2::V3D& CGE2::V3D::operator-=(const CGE2::V3D&)':
./engines/cge2/vga13h.h:92:64: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
   92 |         V3D& operator-=(const V3D &x) { return *this = *this - x; }
      |                                                                ^
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
engines/cge2/snail.cpp: In member function 'void CGE2::CommandHandler::runCommand()':
engines/cge2/snail.cpp:183:114: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
  183 |                         *(_vm->_point[tailCmd._ref]) = *(_vm->_point[tailCmd._ref]) + *(_vm->_point[tailCmd._val]);
      |                                                                                                                  ^
In file included from ./engines/cge2/hero.h:31,
                 from engines/cge2/snail.cpp:30:
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
engines/cge2/snail.cpp:187:69: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
  187 |                                 *(_vm->_point[tailCmd._val]) = spr->_pos3D;
      |                                                                     ^~~~~~
In file included from ./engines/cge2/hero.h:31,
                 from engines/cge2/snail.cpp:30:
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
In file included from ./common/algorithm.h:28,
                 from ./common/array.h:27,
                 from ./common/str-array.h:26,
                 from ./common/savefile.h:29,
                 from ./engines/cge2/cge2.h:32,
                 from ./engines/cge2/snail.h:31,
                 from engines/cge2/snail.cpp:28:
./common/util.h: In instantiation of 'void SWAP(T&, T&) [with T = CGE2::V3D]':
engines/cge2/snail.cpp:379:7:   required from here
./common/util.h:68:66: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
   68 | template<typename T> inline void SWAP(T &a, T &b) { T tmp = a; a = b; b = tmp; }
      |                                                                ~~^~~
In file included from ./engines/cge2/hero.h:31,
                 from engines/cge2/snail.cpp:30:
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
In file included from ./common/algorithm.h:28,
                 from ./common/array.h:27,
                 from ./common/str-array.h:26,
                 from ./common/savefile.h:29,
                 from ./engines/cge2/cge2.h:32,
                 from ./engines/cge2/snail.h:31,
                 from engines/cge2/snail.cpp:28:
./common/util.h:68:73: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
   68 | template<typename T> inline void SWAP(T &a, T &b) { T tmp = a; a = b; b = tmp; }
      |                                                                       ~~^~~~~
In file included from ./engines/cge2/hero.h:31,
                 from engines/cge2/snail.cpp:30:
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
    C++      engines/cge2/hero.o
In file included from ./engines/cge2/hero.h:31,
                 from engines/cge2/hero.cpp:28:
./engines/cge2/vga13h.h: In member function 'CGE2::V3D& CGE2::V3D::operator+=(const CGE2::V3D&)':
./engines/cge2/vga13h.h:91:64: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
   91 |         V3D& operator+=(const V3D &x) { return *this = *this + x; }
      |                                                                ^
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
./engines/cge2/vga13h.h: In member function 'CGE2::V3D& CGE2::V3D::operator-=(const CGE2::V3D&)':
./engines/cge2/vga13h.h:92:64: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
   92 |         V3D& operator-=(const V3D &x) { return *this = *this - x; }
      |                                                                ^
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
engines/cge2/hero.cpp: In member function 'void CGE2::Hero::park()':
engines/cge2/hero.cpp:374:29: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
  374 |                 _trace[0] = _pos3D;
      |                             ^~~~~~
In file included from ./engines/cge2/hero.h:31,
                 from engines/cge2/hero.cpp:28:
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
engines/cge2/hero.cpp: In member function 'bool CGE2::Hero::findWay()':
engines/cge2/hero.cpp:438:56: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
  438 |                 _trace[++_tracePtr] = V3D(pv.x, 0, pv.y);
      |                                                        ^
In file included from ./engines/cge2/hero.h:31,
                 from engines/cge2/hero.cpp:28:
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
engines/cge2/hero.cpp:443:56: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
  443 |                 _trace[++_tracePtr] = V3D(ph.x, 0, ph.y);
      |                                                        ^
In file included from ./engines/cge2/hero.h:31,
                 from engines/cge2/hero.cpp:28:
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
engines/cge2/hero.cpp: In member function 'void CGE2::Hero::walkTo(CGE2::V3D)':
engines/cge2/hero.cpp:471:41: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
  471 |                 _trace[_tracePtr = 0] = pos;
      |                                         ^~~
In file included from ./engines/cge2/hero.h:31,
                 from engines/cge2/hero.cpp:28:
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
engines/cge2/hero.cpp:476:70: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
  476 |                                 _trace[_tracePtr] = pos + V3D(i, 0, 0);
      |                                                                      ^
In file included from ./engines/cge2/hero.h:31,
                 from engines/cge2/hero.cpp:28:
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
engines/cge2/hero.cpp:480:71: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
  480 |                                 _trace[_tracePtr] = pos + V3D(-i, 0, 0);
      |                                                                       ^
In file included from ./engines/cge2/hero.h:31,
                 from engines/cge2/hero.cpp:28:
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
engines/cge2/hero.cpp:484:70: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
  484 |                                 _trace[_tracePtr] = pos + V3D(0, 0, i);
      |                                                                      ^
In file included from ./engines/cge2/hero.h:31,
                 from engines/cge2/hero.cpp:28:
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
engines/cge2/hero.cpp:488:71: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
  488 |                                 _trace[_tracePtr] = pos + V3D(0, 0, -i);
      |                                                                       ^
In file included from ./engines/cge2/hero.h:31,
                 from engines/cge2/hero.cpp:28:
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
engines/cge2/hero.cpp:493:77: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
  493 |                                 _trace[_tracePtr] = V3D(_pos3D._x, 0, pos._z); // not found
      |                                                                             ^
In file included from ./engines/cge2/hero.h:31,
                 from engines/cge2/hero.cpp:28:
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
    C++      engines/cge2/inventory.o
In file included from ./engines/cge2/hero.h:31,
                 from engines/cge2/inventory.cpp:29:
./engines/cge2/vga13h.h: In member function 'CGE2::V3D& CGE2::V3D::operator+=(const CGE2::V3D&)':
./engines/cge2/vga13h.h:91:64: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
   91 |         V3D& operator+=(const V3D &x) { return *this = *this + x; }
      |                                                                ^
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
./engines/cge2/vga13h.h: In member function 'CGE2::V3D& CGE2::V3D::operator-=(const CGE2::V3D&)':
./engines/cge2/vga13h.h:92:64: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
   92 |         V3D& operator-=(const V3D &x) { return *this = *this - x; }
      |                                                                ^
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
    C++      engines/cge2/console.o
In file included from engines/cge2/console.cpp:25:
./engines/cge2/vga13h.h: In member function 'CGE2::V3D& CGE2::V3D::operator+=(const CGE2::V3D&)':
./engines/cge2/vga13h.h:91:64: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
   91 |         V3D& operator+=(const V3D &x) { return *this = *this + x; }
      |                                                                ^
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
./engines/cge2/vga13h.h: In member function 'CGE2::V3D& CGE2::V3D::operator-=(const CGE2::V3D&)':
./engines/cge2/vga13h.h:92:64: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
   92 |         V3D& operator-=(const V3D &x) { return *this = *this - x; }
      |                                                                ^
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
    C++      engines/cge2/vmenu.o
In file included from ./engines/cge2/talk.h:32,
                 from ./engines/cge2/text.h:31,
                 from engines/cge2/vmenu.cpp:28:
./engines/cge2/vga13h.h: In member function 'CGE2::V3D& CGE2::V3D::operator+=(const CGE2::V3D&)':
./engines/cge2/vga13h.h:91:64: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
   91 |         V3D& operator+=(const V3D &x) { return *this = *this + x; }
      |                                                                ^
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
./engines/cge2/vga13h.h: In member function 'CGE2::V3D& CGE2::V3D::operator-=(const CGE2::V3D&)':
./engines/cge2/vga13h.h:92:64: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
   92 |         V3D& operator-=(const V3D &x) { return *this = *this - x; }
      |                                                                ^
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
engines/cge2/vmenu.cpp: In member function 'char* CGE2::VMenu::vmGather(Common::Array<CGE2::Choice*>)':
engines/cge2/vmenu.cpp:113:16: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  113 |         *_vmgt = '\0';
      |         ~~~~~~~^~~~~~
engines/cge2/vmenu.cpp:112:33: note: destination object of size 0 allocated by 'operator new []'
  112 |         _vmgt = new char[len + h];
      |                                 ^
    C++      engines/cge2/toolbar.o
In file included from ./engines/cge2/talk.h:32,
                 from ./engines/cge2/events.h:32,
                 from engines/cge2/toolbar.cpp:31:
./engines/cge2/vga13h.h: In member function 'CGE2::V3D& CGE2::V3D::operator+=(const CGE2::V3D&)':
./engines/cge2/vga13h.h:91:64: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
   91 |         V3D& operator+=(const V3D &x) { return *this = *this + x; }
      |                                                                ^
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
./engines/cge2/vga13h.h: In member function 'CGE2::V3D& CGE2::V3D::operator-=(const CGE2::V3D&)':
./engines/cge2/vga13h.h:92:64: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
   92 |         V3D& operator-=(const V3D &x) { return *this = *this - x; }
      |                                                                ^
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
    C++      engines/cge2/saveload.o
In file included from ./engines/cge2/talk.h:32,
                 from ./engines/cge2/events.h:32,
                 from engines/cge2/saveload.cpp:35:
./engines/cge2/vga13h.h: In member function 'CGE2::V3D& CGE2::V3D::operator+=(const CGE2::V3D&)':
./engines/cge2/vga13h.h:91:64: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
   91 |         V3D& operator+=(const V3D &x) { return *this = *this + x; }
      |                                                                ^
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
./engines/cge2/vga13h.h: In member function 'CGE2::V3D& CGE2::V3D::operator-=(const CGE2::V3D&)':
./engines/cge2/vga13h.h:92:64: warning: implicitly-declared 'CGE2::V3D& CGE2::V3D::operator=(const CGE2::V3D&)' is deprecated [-Wdeprecated-copy]
   92 |         V3D& operator-=(const V3D &x) { return *this = *this - x; }
      |                                                                ^
./engines/cge2/vga13h.h:84:9: note: because 'CGE2::V3D' has user-provided 'CGE2::V3D::V3D(const CGE2::V3D&)'
   84 |         V3D(const V3D &p) : _x(p._x), _y(p._y), _z(p._z) { }
      |         ^~~
    C++      engines/chewy/chewy.o
    C++      engines/chewy/cursor.o
    C++      engines/chewy/events.o
    C++      engines/chewy/detection.o
    C++      engines/chewy/console.o
    C++      engines/chewy/sound.o
    C++      engines/chewy/graphics.o
    C++      engines/chewy/text.o
    C++      engines/chewy/resource.o
    C++      engines/chewy/scene.o
    C++      engines/cine/bg.o
    C++      engines/chewy/video/cfo_decoder.o
    C++      engines/cine/console.o
    C++      engines/cine/bg_list.o
    C++      engines/cine/anim.o
engines/cine/anim.cpp: In function 'void Cine::checkAnimDataTableBounds(int)':
engines/cine/anim.cpp:202:26: warning: comparison of integer expressions of different signedness: 'int' and 'Common::Array<Cine::AnimData>::size_type' {aka 'unsigned int'} [-Wsign-compare]
  202 |         } else if (entry >= g_cine->_animDataTable.size()) {
      |                    ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
engines/cine/anim.cpp: In function 'int16 Cine::fixAnimDataTableEndFrame(int, int16, int16)':
engines/cine/anim.cpp:212:53: warning: comparison of integer expressions of different signedness: 'int' and 'Common::Array<Cine::AnimData>::size_type' {aka 'unsigned int'} [-Wsign-compare]
  212 |                 entry + (endFrame - startFrame - 1) >= g_cine->_animDataTable.size()) {
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    C++      engines/cine/msg.o
    C++      engines/cine/main_loop.o
engines/cine/main_loop.cpp: In member function 'void Cine::CineEngine::mainLoop(int)':
engines/cine/main_loop.cpp:413:14: warning: variable 'playerAction' set but not used [-Wunused-but-set-variable]
  413 |         bool playerAction;
      |              ^~~~~~~~~~~~
    C++      engines/cine/object.o
    C++      engines/cine/cine.o
    C++      engines/cine/detection.o
In file included from engines/cine/detection.cpp:62:
./engines/cine/detection_tables.h:253:9: warning: multi-line comment [-Wcomment]
  253 |         // | | | | '_ \ / _ \ '__/ _` | __| |/ _ \| '_ \  \___ \| __/ _ \/ _` | | __| '_ \
      |         ^
    C++      engines/cine/pal.o
    C++      engines/cine/prc.o
    C++      engines/cine/rel.o
    C++      engines/cine/part.o
engines/cine/part.cpp: In function 'int16 Cine::findFileInBundle(const char*)':
engines/cine/part.cpp:228:35: warning: comparison of integer expressions of different signedness: 'int' and 'Common::Array<Cine::VolumeResource>::size_type' {aka 'unsigned int'} [-Wsign-compare]
  228 |                 for (int i = 0; i < volRes.size(); i++) {
      |                                 ~~^~~~~~~~~~~~~~~
    C++      engines/cine/texte.o
    C++      engines/cine/script_os.o
    C++      engines/cine/unpack.o
    C++      engines/composer/console.o
    C++      engines/cine/gfx.o
    C++      engines/cine/saveload.o
    C++      engines/cine/sound.o
engines/cine/sound.cpp: In member function 'void Cine::MidiSoundDriverH32::selectInstrument2(int, int, int)':
engines/cine/sound.cpp:836:27: warning: comparison of integer expressions of different signedness: 'int' and 'long unsigned int' [-Wsign-compare]
  836 |         for (int i = 4; i < sizeof(sysEx) - 1; ++i)
      |                         ~~^~~~~~~~~~~~~~~~~~~
engines/cine/sound.cpp: In member function 'void Cine::MidiSoundDriverH32::selectInstrument3(int, int, int)':
engines/cine/sound.cpp:875:27: warning: comparison of integer expressions of different signedness: 'int' and 'long unsigned int' [-Wsign-compare]
  875 |         for (int i = 4; i < sizeof(sysEx) - 1; ++i)
      |                         ~~^~~~~~~~~~~~~~~~~~~
engines/cine/sound.cpp: In member function 'void Cine::MidiSoundDriverH32::selectInstrument5(int)':
engines/cine/sound.cpp:937:43: warning: comparison of integer expressions of different signedness: 'int' and 'Common::Array<Common::String>::size_type' {aka 'unsigned int'} [-Wsign-compare]
  937 |         if (messageNum >= 0 && messageNum < g_cine->_messageTable.size()) {
      |                                ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
engines/cine/sound.cpp:948:27: warning: comparison of integer expressions of different signedness: 'int' and 'long unsigned int' [-Wsign-compare]
  948 |         for (int i = 4; i < sizeof(sysEx) - 1; ++i)
      |                         ~~^~~~~~~~~~~~~~~~~~~
    C++      engines/composer/detection.o
    C++      engines/cine/script_fw.o
    C++      engines/composer/graphics.o
    C++      engines/composer/composer.o
    C++      engines/cruise/actor.o
    C++      engines/cruise/background.o
    C++      engines/cine/various.o
    C++      engines/cruise/cell.o
    C++      engines/cruise/backgroundIncrust.o
    C++      engines/composer/resource.o
    C++      engines/cruise/cruise.o
    C++      engines/composer/scripting.o
    C++      engines/cruise/debugger.o
    C++      engines/cruise/decompiler.o
    C++      engines/cruise/dataLoader.o
    C++      engines/cruise/delphine-unpack.o
    C++      engines/cruise/ctp.o
    C++      engines/composer/saveload.o
engines/composer/saveload.cpp: In member function 'void Composer::ComposerEngine::sync(Common::Serializer&, T&, Common::Serializer::Version, Common::Serializer::Version) [with T = Composer::Library]':
engines/composer/saveload.cpp:112:28: warning: 'id' may be used uninitialized in this function [-Wmaybe-uninitialized]
  112 |                 loadLibrary(id);
      |                 ~~~~~~~~~~~^~~~
engines/composer/saveload.cpp: In member function 'void Composer::ComposerEngine::syncListReverse(Common::Serializer&, Common::List<T>&, Common::Serializer::Version, Common::Serializer::Version) [with T = Composer::Library]':
engines/composer/saveload.cpp:126:38: warning: 'size' may be used uninitialized in this function [-Wmaybe-uninitialized]
  126 |                 for (uint32 i = 0; i < size; i++) {
      |                                    ~~^~~~~~
engines/composer/saveload.cpp: In member function 'void Composer::ComposerEngine::sync(Common::Serializer&, T&, Common::Serializer::Version, Common::Serializer::Version) [with T = Composer::OldScript*]':
engines/composer/saveload.cpp:140:21: warning: 'delay' may be used uninitialized in this function [-Wmaybe-uninitialized]
  140 |         uint32 pos, delay;
      |                     ^~~~~
engines/composer/saveload.cpp:140:16: warning: 'pos' may be used uninitialized in this function [-Wmaybe-uninitialized]
  140 |         uint32 pos, delay;
      |                ^~~
engines/composer/saveload.cpp:139:16: warning: 'id' may be used uninitialized in this function [-Wmaybe-uninitialized]
  139 |         uint16 id;
      |                ^~
engines/composer/saveload.cpp: In member function 'void Composer::ComposerEngine::sync(Common::Serializer&, T&, Common::Serializer::Version, Common::Serializer::Version) [with T = Composer::Pipe*]':
engines/composer/saveload.cpp:189:32: warning: 'tag' may be used uninitialized [-Wmaybe-uninitialized]
  189 |                         uint32 tag;
      |                                ^~~
engines/composer/saveload.cpp:66:24: warning: 'size' may be used uninitialized [-Wmaybe-uninitialized]
   66 |                 uint32 size;
      |                        ^~~~
engines/composer/saveload.cpp:70:27: warning: 'item' may be used uninitialized [-Wmaybe-uninitialized]
   70 |                         T item;
      |                           ^~~~
engines/composer/saveload.cpp:166:24: warning: 'tmp' may be used uninitialized in this function [-Wmaybe-uninitialized]
  166 |         uint32 offset, tmp;
      |                        ^~~
engines/composer/saveload.cpp:166:16: warning: 'offset' may be used uninitialized in this function [-Wmaybe-uninitialized]
  166 |         uint32 offset, tmp;
      |                ^~~~~~
engines/composer/saveload.cpp:165:16: warning: 'id' may be used uninitialized in this function [-Wmaybe-uninitialized]
  165 |         uint16 id;
      |                ^~
engines/composer/saveload.cpp: In member function 'void Composer::ComposerEngine::syncArray(Common::Serializer&, Common::Array<T>&, Common::Serializer::Version, Common::Serializer::Version) [with T = Composer::AnimationEntry]':
engines/composer/saveload.cpp:47:24: warning: 'size' may be used uninitialized [-Wmaybe-uninitialized]
   47 |                 uint32 size;
      |                        ^~~~
engines/composer/saveload.cpp: In member function 'void Composer::ComposerEngine::sync(Common::Serializer&, T&, Common::Serializer::Version, Common::Serializer::Version) [with T = Composer::Animation*]':
engines/composer/saveload.cpp:239:24: warning: 'tmp' may be used uninitialized [-Wmaybe-uninitialized]
  239 |                 uint32 tmp;
      |                        ^~~
In file included from engines/composer/saveload.cpp:28:
./common/serializer.h:41:30: warning: 'size' may be used uninitialized in this function [-Wmaybe-uninitialized]
   41 |                         TYPE tmp = val; \
      |                              ^~~
engines/composer/saveload.cpp:217:15: note: 'size' was declared here
  217 |         int32 size;
      |               ^~~~
engines/composer/saveload.cpp:216:31: warning: 'param' may be used uninitialized in this function [-Wmaybe-uninitialized]
  216 |         uint32 offset, state, param;
      |                               ^~~~~
engines/composer/saveload.cpp:216:24: warning: 'state' may be used uninitialized in this function [-Wmaybe-uninitialized]
  216 |         uint32 offset, state, param;
      |                        ^~~~~
engines/composer/saveload.cpp:216:16: warning: 'offset' may be used uninitialized in this function [-Wmaybe-uninitialized]
  216 |         uint32 offset, state, param;
      |                ^~~~~~
engines/composer/saveload.cpp:215:27: warning: 'y' may be used uninitialized in this function [-Wmaybe-uninitialized]
  215 |         uint16 animId, x, y;
      |                           ^
engines/composer/saveload.cpp:215:24: warning: 'x' may be used uninitialized in this function [-Wmaybe-uninitialized]
  215 |         uint16 animId, x, y;
      |                        ^
engines/composer/saveload.cpp:215:16: warning: 'animId' may be used uninitialized in this function [-Wmaybe-uninitialized]
  215 |         uint16 animId, x, y;
      |                ^~~~~~
engines/composer/saveload.cpp: In member function 'void Composer::ComposerEngine::syncArray(Common::Serializer&, Common::Array<T>&, Common::Serializer::Version, Common::Serializer::Version) [with T = Composer::PendingPageChange]':
engines/composer/saveload.cpp:47:24: warning: 'size' may be used uninitialized [-Wmaybe-uninitialized]
   47 |                 uint32 size;
      |                        ^~~~
engines/composer/saveload.cpp: In member function 'void Composer::ComposerEngine::syncArray(Common::Serializer&, Common::Array<T>&, Common::Serializer::Version, Common::Serializer::Version) [with T = short unsigned int]':
engines/composer/saveload.cpp:47:24: warning: 'size' may be used uninitialized [-Wmaybe-uninitialized]
engines/composer/saveload.cpp:51:27: warning: 'item' may be used uninitialized [-Wmaybe-uninitialized]
   51 |                         T item;
      |                           ^~~~
engines/composer/saveload.cpp: In member function 'void Composer::ComposerEngine::syncList(Common::Serializer&, Common::List<T>&, Common::Serializer::Version, Common::Serializer::Version) [with T = Composer::OldScript*]':
engines/composer/saveload.cpp:66:24: warning: 'size' may be used uninitialized [-Wmaybe-uninitialized]
   66 |                 uint32 size;
      |                        ^~~~
engines/composer/saveload.cpp: In member function 'void Composer::ComposerEngine::syncArray(Common::Serializer&, Common::Array<T>&, Common::Serializer::Version, Common::Serializer::Version) [with T = Composer::QueuedScript]':
engines/composer/saveload.cpp:47:24: warning: 'size' may be used uninitialized [-Wmaybe-uninitialized]
   47 |                 uint32 size;
      |                        ^~~~
engines/composer/saveload.cpp: In member function 'void Composer::ComposerEngine::syncListReverse(Common::Serializer&, Common::List<T>&, Common::Serializer::Version, Common::Serializer::Version) [with T = Composer::Pipe*]':
engines/composer/saveload.cpp:85:24: warning: 'size' may be used uninitialized [-Wmaybe-uninitialized]
   85 |                 uint32 size;
      |                        ^~~~
engines/composer/saveload.cpp: In member function 'void Composer::ComposerEngine::syncList(Common::Serializer&, Common::List<T>&, Common::Serializer::Version, Common::Serializer::Version) [with T = Composer::Animation*]':
engines/composer/saveload.cpp:66:24: warning: 'size' may be used uninitialized [-Wmaybe-uninitialized]
   66 |                 uint32 size;
      |                        ^~~~
engines/composer/saveload.cpp: In member function 'void Composer::ComposerEngine::syncList(Common::Serializer&, Common::List<T>&, Common::Serializer::Version, Common::Serializer::Version) [with T = Composer::Sprite]':
engines/composer/saveload.cpp:66:24: warning: 'size' may be used uninitialized [-Wmaybe-uninitialized]
In file included from ./common/memstream.h:26,
                 from engines/composer/saveload.cpp:26:
./common/stream.h: In member function 'virtual Common::Error Composer::ComposerEngine::loadGameState(int)':
./common/stream.h:162:30: warning: 'numSamples' may be used uninitialized [-Wmaybe-uninitialized]
  162 |                 writeUint32LE((uint32)value);
      |                 ~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/composer/saveload.cpp:360:15: note: 'numSamples' was declared here
  360 |         int32 numSamples;
      |               ^~~~~~~~~~
    C++      engines/cruise/font.o
    C++      engines/cruise/linker.o
    C++      engines/cruise/detection.o
    C++      engines/cruise/cruise_main.o
    C++      engines/cruise/gfxModule.o
    C++      engines/cruise/mouse.o
    C++      engines/cruise/menu.o
    C++      engines/cruise/object.o
    C++      engines/cruise/perso.o
    C++      engines/cruise/polys.o
    C++      engines/cruise/mainDraw.o
    C++      engines/cruise/function.o
    C++      engines/cruise/stack.o
    C++      engines/cruise/various.o
    C++      engines/cruise/script.o
    C++      engines/cruise/staticres.o
    C++      engines/cruise/overlay.o
    C++      engines/cruise/vars.o
    C++      engines/cryo/debugger.o
    C++      engines/cryo/cryo.o
    C++      engines/cruise/volume.o
    C++      engines/cruise/sound.o
    C++      engines/cryo/detection.o
    C++      engines/cryo/cryolib.o
    C++      engines/cryo/sound.o
    C++      engines/cryomni3d/fonts/cryofont.o
    C++      engines/cryomni3d/image/codecs/hlz.o
    C++      engines/cryomni3d/fonts/cryoextfont.o
    C++      engines/cryo/video.o
    C++      engines/cryo/resource.o
    C++      engines/cryomni3d/image/hlz.o
    C++      engines/cryomni3d/datstream.o
    C++      engines/cruise/saveload.o
    C++      engines/cryomni3d/video/hnm_decoder.o
    C++      engines/cryo/eden_graphics.o
    C++      engines/cryomni3d/detection.o
    C++      engines/cryomni3d/cryomni3d.o
    C++      engines/cryomni3d/mouse_boxes.o
    C++      engines/cryomni3d/objects.o
    C++      engines/cryomni3d/fixed_image.o
    C++      engines/cryomni3d/omni3d.o
    C++      engines/cryomni3d/dialogs_manager.o
    C++      engines/cryomni3d/sprites.o
    C++      engines/cryomni3d/font_manager.o
    C++      engines/cryomni3d/wam_parser.o
    C++      engines/cryomni3d/versailles/dialogs_manager.o
    C++      engines/cryomni3d/versailles/dialogs.o
    C++      engines/cryomni3d/versailles/music.o
    C++      engines/cryomni3d/versailles/saveload.o
In file included from /usr/include/string.h:519,
                 from ./common/scummsys.h:120,
                 from ./common/str.h:26,
                 from ./common/archive.h:26,
                 from engines/cryomni3d/versailles/saveload.cpp:22:
In function 'char* strncpy(char*, const char*, size_t)',
    inlined from 'void CryOmni3D::Versailles::CryOmni3DEngine_Versailles::saveGame(bool, uint, const Common::String&)' at engines/cryomni3d/versailles/saveload.cpp:168:10:
/usr/include/bits/string_fortified.h:95:34: warning: 'char* __builtin_strncpy(char*, const char*, long unsigned int)' specified bound 20 equals destination size [-Wstringop-truncation]
   95 |   return __builtin___strncpy_chk (__dest, __src, __len,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
   96 |                                   __glibc_objsize (__dest));
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~
    C++      engines/cryomni3d/versailles/toolbar.o
    C++      engines/cryomni3d/versailles/menus.o
    C++      engines/cryomni3d/versailles/engine.o
    C++      engines/cryomni3d/versailles/data.o
    C++      engines/cryomni3d/versailles/documentation.o
    C++      engines/director/cursor.o
    C++      engines/director/channel.o
    C++      engines/director/detection.o
    C++      engines/director/castmember.o
    C++      engines/director/archive.o
    C++      engines/cryo/eden.o
engines/cryo/eden.cpp: In member function 'void Cryo::EdenGame::syncGlobalPointers(Common::Serializer)':
engines/cryo/eden.cpp:6587:86: warning: 'roomCharacterIdx' may be used uninitialized in this function [-Wmaybe-uninitialized]
 6587 |         uint32 citaAreaFirstRoomIdx, areaIdx, lastAreaIdx, curAreaIdx, characterIdx, roomCharacterIdx;
      |                                                                                      ^~~~~~~~~~~~~~~~
engines/cryo/eden.cpp:6587:72: warning: 'characterIdx' may be used uninitialized in this function [-Wmaybe-uninitialized]
 6587 |         uint32 citaAreaFirstRoomIdx, areaIdx, lastAreaIdx, curAreaIdx, characterIdx, roomCharacterIdx;
      |                                                                        ^~~~~~~~~~~~
engines/cryo/eden.cpp:6587:60: warning: 'curAreaIdx' may be used uninitialized in this function [-Wmaybe-uninitialized]
 6587 |         uint32 citaAreaFirstRoomIdx, areaIdx, lastAreaIdx, curAreaIdx, characterIdx, roomCharacterIdx;
      |                                                            ^~~~~~~~~~
engines/cryo/eden.cpp:6587:47: warning: 'lastAreaIdx' may be used uninitialized in this function [-Wmaybe-uninitialized]
 6587 |         uint32 citaAreaFirstRoomIdx, areaIdx, lastAreaIdx, curAreaIdx, characterIdx, roomCharacterIdx;
      |                                               ^~~~~~~~~~~
engines/cryo/eden.cpp:6587:38: warning: 'areaIdx' may be used uninitialized in this function [-Wmaybe-uninitialized]
 6587 |         uint32 citaAreaFirstRoomIdx, areaIdx, lastAreaIdx, curAreaIdx, characterIdx, roomCharacterIdx;
      |                                      ^~~~~~~
engines/cryo/eden.cpp:6587:16: warning: 'citaAreaFirstRoomIdx' may be used uninitialized in this function [-Wmaybe-uninitialized]
 6587 |         uint32 citaAreaFirstRoomIdx, areaIdx, lastAreaIdx, curAreaIdx, characterIdx, roomCharacterIdx;
      |                ^~~~~~~~~~~~~~~~~~~~
engines/cryo/eden.cpp:6586:102: warning: 'roomIdx' may be used uninitialized in this function [-Wmaybe-uninitialized]
 6586 |         uint32 dialogIdx, nextDialogIdx, narratorDialogIdx, lastDialogIdx, tapeIdx, nextRoomIconIdx, roomIdx;
      |                                                                                                      ^~~~~~~
engines/cryo/eden.cpp:6586:85: warning: 'nextRoomIconIdx' may be used uninitialized in this function [-Wmaybe-uninitialized]
 6586 |         uint32 dialogIdx, nextDialogIdx, narratorDialogIdx, lastDialogIdx, tapeIdx, nextRoomIconIdx, roomIdx;
      |                                                                                     ^~~~~~~~~~~~~~~
engines/cryo/eden.cpp:6586:76: warning: 'tapeIdx' may be used uninitialized in this function [-Wmaybe-uninitialized]
 6586 |         uint32 dialogIdx, nextDialogIdx, narratorDialogIdx, lastDialogIdx, tapeIdx, nextRoomIconIdx, roomIdx;
      |                                                                            ^~~~~~~
engines/cryo/eden.cpp:6586:61: warning: 'lastDialogIdx' may be used uninitialized in this function [-Wmaybe-uninitialized]
 6586 |         uint32 dialogIdx, nextDialogIdx, narratorDialogIdx, lastDialogIdx, tapeIdx, nextRoomIconIdx, roomIdx;
      |                                                             ^~~~~~~~~~~~~
engines/cryo/eden.cpp:6586:42: warning: 'narratorDialogIdx' may be used uninitialized in this function [-Wmaybe-uninitialized]
 6586 |         uint32 dialogIdx, nextDialogIdx, narratorDialogIdx, lastDialogIdx, tapeIdx, nextRoomIconIdx, roomIdx;
      |                                          ^~~~~~~~~~~~~~~~~
engines/cryo/eden.cpp:6586:27: warning: 'nextDialogIdx' may be used uninitialized in this function [-Wmaybe-uninitialized]
 6586 |         uint32 dialogIdx, nextDialogIdx, narratorDialogIdx, lastDialogIdx, tapeIdx, nextRoomIconIdx, roomIdx;
      |                           ^~~~~~~~~~~~~
engines/cryo/eden.cpp:6586:16: warning: 'dialogIdx' may be used uninitialized in this function [-Wmaybe-uninitialized]
 6586 |         uint32 dialogIdx, nextDialogIdx, narratorDialogIdx, lastDialogIdx, tapeIdx, nextRoomIconIdx, roomIdx;
      |                ^~~~~~~~~
engines/cryo/eden.cpp: In member function 'void Cryo::EdenGame::syncCitadelRoomPointers(Common::Serializer)':
engines/cryo/eden.cpp:6801:16: warning: 'citadelRoomIdx' may be used uninitialized in this function [-Wmaybe-uninitialized]
 6801 |         uint32 citadelRoomIdx;
      |                ^~~~~~~~~~~~~~
In file included from ./engines/cryo/eden.h:28,
                 from ./engines/cryo/cryo.h:37,
                 from engines/cryo/eden.cpp:40:
./common/serializer.h: In member function 'void Cryo::EdenGame::syncTapePointers(Common::Serializer)':
./common/serializer.h:41:30: warning: 'subIndex' may be used uninitialized in this function [-Wmaybe-uninitialized]
   41 |                         TYPE tmp = val; \
      |                              ^~~
engines/cryo/eden.cpp:6816:28: note: 'subIndex' was declared here
 6816 |                 int index, subIndex;
      |                            ^~~~~~~~
In file included from ./engines/cryo/eden.h:28,
                 from ./engines/cryo/cryo.h:37,
                 from engines/cryo/eden.cpp:40:
./common/serializer.h:41:30: warning: 'index' may be used uninitialized in this function [-Wmaybe-uninitialized]
   41 |                         TYPE tmp = val; \
      |                              ^~~
engines/cryo/eden.cpp:6816:21: note: 'index' was declared here
 6816 |                 int index, subIndex;
      |                     ^~~~~
In file included from ./engines/cryo/eden.h:28,
                 from ./engines/cryo/cryo.h:37,
                 from engines/cryo/eden.cpp:40:
./common/serializer.h:41:30: warning: 'persoIdx' may be used uninitialized in this function [-Wmaybe-uninitialized]
   41 |                         TYPE tmp = val; \
      |                              ^~~
engines/cryo/eden.cpp:6813:13: note: 'persoIdx' was declared here
 6813 |         int persoIdx;
      |             ^~~~~~~~
engines/cryo/eden.cpp: In member function 'void Cryo::EdenGame::syncGlobalValues(Common::Serializer)':
engines/cryo/eden.cpp:6682:14: warning: 'autoDialog' may be used uninitialized in this function [-Wmaybe-uninitialized]
 6682 |         byte autoDialog;
      |              ^~~~~~~~~~
    C++      engines/director/events.o
    C++      engines/director/director.o
    C++      engines/director/graphics.o
    C++      engines/director/images.o
    C++      engines/director/frame.o
    C++      engines/director/cast.o
    C++      engines/director/resource.o
    C++      engines/director/sprite.o
    C++      engines/director/stxt.o
    C++      engines/director/movie.o
    C++      engines/director/sound.o
    C++      engines/director/tests.o
    C++      engines/director/util.o
    C++      engines/cryomni3d/versailles/logic.o
    C++      engines/director/score.o
    C++      engines/director/window.o
    C++      engines/director/lingo/lingo-funcs.o
    C++      engines/director/transitions.o
    C++      engines/director/lingo/lingo-events.o
    C++      engines/director/lingo/lingo-codegen.o
    C++      engines/director/lingo/lingo.o
engines/director/lingo/lingo.cpp: In member function 'Common::String Director::Lingo::decodeInstruction(Director::LingoArchive*, Director::ScriptData*, uint, uint*)':
engines/director/lingo/lingo.cpp:516:50: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  516 |                                         d.u.f = *(double *)(&i);
      |                                                  ^~~~~~~~~~~~~~
    C++      engines/director/lingo/lingo-patcher.o
    C++      engines/director/lingo/lingo-preprocessor.o
    C++      engines/director/lingo/lingo-code.o
    C++      engines/director/lingo/lingo-builtins.o
    C++      engines/director/lingo/lingo-lex.o
    C++      engines/director/lingo/lingo-bytecode.o
engines/director/lingo/lingo-bytecode.cpp: In member function 'Director::ScriptContext* Director::Lingo::compileLingoV4(Common::SeekableReadStreamEndian&, Director::LingoArchive*, const Common::String&)':
engines/director/lingo/lingo-bytecode.cpp:1082:49: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
 1082 |                                 constant.u.f = *(double *)(&f64bin);
      |                                                 ^~~~~~~~~~~~~~~~~~~
    C++      engines/director/lingo/xlibs/flushxobj.o
    C++      engines/director/lingo/lingo-object.o
    C++      engines/director/lingo/xlibs/palxobj.o
    C++      engines/director/lingo/xlibs/fileio.o
    C++      engines/director/lingo/xlibs/winxobj.o
    C++      engines/dm/console.o
In file included from engines/dm/console.cpp:30:
./engines/dm/champion.h: In member function 'void DM::Champion::setSlot(DM::ChampionSlot, DM::Thing)':
./engines/dm/champion.h:438:69: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  438 |         void setSlot(ChampionSlot slot, Thing val) { _slots[slot] = val; }
      |                                                                     ^~~
In file included from engines/dm/console.cpp:29:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/console.cpp:31:
./engines/dm/dungeonman.h: In member function 'void DM::Sensor::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:387:55: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  387 |         void setNextThing(Thing thing) { _nextThing = thing; }
      |                                                       ^~~~~
In file included from engines/dm/console.cpp:29:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/console.cpp:31:
./engines/dm/dungeonman.h: In member function 'void DM::Weapon::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:434:53: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  434 |         void setNextThing(Thing val) { _nextThing = val;  }
      |                                                     ^~~
In file included from engines/dm/console.cpp:29:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/console.cpp:31:
./engines/dm/dungeonman.h: In member function 'void DM::Scroll::set(DM::Thing, uint16)':
./engines/dm/dungeonman.h:464:30: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  464 |                 _nextThing = next;
      |                              ^~~~
In file included from engines/dm/console.cpp:29:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/console.cpp:31:
./engines/dm/dungeonman.h: In member function 'void DM::Junk::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:518:55: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  518 |         void setNextThing(Thing thing) { _nextThing = thing; }
      |                                                       ^~~~~
In file included from engines/dm/console.cpp:29:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/console.cpp:31:
./engines/dm/dungeonman.h: In member function 'DM::Thing DM::Explosion::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:540:61: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  540 |         Thing setNextThing(Thing val) { return _nextThing = val; }
      |                                                             ^~~
In file included from engines/dm/console.cpp:29:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
    C++      engines/dm/dialog.o
In file included from ./engines/dm/eventman.h:37,
                 from engines/dm/dialog.cpp:31:
./engines/dm/champion.h: In member function 'void DM::Champion::setSlot(DM::ChampionSlot, DM::Thing)':
./engines/dm/champion.h:438:69: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  438 |         void setSlot(ChampionSlot slot, Thing val) { _slots[slot] = val; }
      |                                                                     ^~~
In file included from ./engines/dm/dialog.h:31,
                 from engines/dm/dialog.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
    C++      engines/director/lingo/lingo-the.o
    C++      engines/dm/detection.o
    C++      engines/dm/dmglobals.o
In file included from engines/dm/dmglobals.cpp:32:
./engines/dm/dungeonman.h: In member function 'void DM::Sensor::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:387:55: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  387 |         void setNextThing(Thing thing) { _nextThing = thing; }
      |                                                       ^~~~~
In file included from engines/dm/dmglobals.cpp:30:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/dmglobals.cpp:32:
./engines/dm/dungeonman.h: In member function 'void DM::Weapon::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:434:53: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  434 |         void setNextThing(Thing val) { _nextThing = val;  }
      |                                                     ^~~
In file included from engines/dm/dmglobals.cpp:30:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/dmglobals.cpp:32:
./engines/dm/dungeonman.h: In member function 'void DM::Scroll::set(DM::Thing, uint16)':
./engines/dm/dungeonman.h:464:30: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  464 |                 _nextThing = next;
      |                              ^~~~
In file included from engines/dm/dmglobals.cpp:30:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/dmglobals.cpp:32:
./engines/dm/dungeonman.h: In member function 'void DM::Junk::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:518:55: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  518 |         void setNextThing(Thing thing) { _nextThing = thing; }
      |                                                       ^~~~~
In file included from engines/dm/dmglobals.cpp:30:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/dmglobals.cpp:32:
./engines/dm/dungeonman.h: In member function 'DM::Thing DM::Explosion::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:540:61: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  540 |         Thing setNextThing(Thing val) { return _nextThing = val; }
      |                                                             ^~~
In file included from engines/dm/dmglobals.cpp:30:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from ./engines/dm/eventman.h:37,
                 from engines/dm/dmglobals.cpp:33:
./engines/dm/champion.h: In member function 'void DM::Champion::setSlot(DM::ChampionSlot, DM::Thing)':
./engines/dm/champion.h:438:69: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  438 |         void setSlot(ChampionSlot slot, Thing val) { _slots[slot] = val; }
      |                                                                     ^~~
In file included from engines/dm/dmglobals.cpp:30:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
    C++      engines/director/lingo/lingo-gr.o
    C++      engines/dm/dm.o
In file included from engines/dm/dm.cpp:55:
./engines/dm/dungeonman.h: In member function 'void DM::Sensor::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:387:55: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  387 |         void setNextThing(Thing thing) { _nextThing = thing; }
      |                                                       ^~~~~
In file included from engines/dm/dm.cpp:53:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/dm.cpp:55:
./engines/dm/dungeonman.h: In member function 'void DM::Weapon::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:434:53: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  434 |         void setNextThing(Thing val) { _nextThing = val;  }
      |                                                     ^~~
In file included from engines/dm/dm.cpp:53:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/dm.cpp:55:
./engines/dm/dungeonman.h: In member function 'void DM::Scroll::set(DM::Thing, uint16)':
./engines/dm/dungeonman.h:464:30: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  464 |                 _nextThing = next;
      |                              ^~~~
In file included from engines/dm/dm.cpp:53:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/dm.cpp:55:
./engines/dm/dungeonman.h: In member function 'void DM::Junk::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:518:55: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  518 |         void setNextThing(Thing thing) { _nextThing = thing; }
      |                                                       ^~~~~
In file included from engines/dm/dm.cpp:53:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/dm.cpp:55:
./engines/dm/dungeonman.h: In member function 'DM::Thing DM::Explosion::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:540:61: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  540 |         Thing setNextThing(Thing val) { return _nextThing = val; }
      |                                                             ^~~
In file included from engines/dm/dm.cpp:53:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from ./engines/dm/eventman.h:37,
                 from engines/dm/dm.cpp:56:
./engines/dm/champion.h: In member function 'void DM::Champion::setSlot(DM::ChampionSlot, DM::Thing)':
./engines/dm/champion.h:438:69: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  438 |         void setSlot(ChampionSlot slot, Thing val) { _slots[slot] = val; }
      |                                                                     ^~~
In file included from engines/dm/dm.cpp:53:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dm.cpp: In member function 'void DM::DMEngine::fuseSequence()':
engines/dm/dm.cpp:949:70: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  949 |                         curThing = _dungeonMan->getNextThing(curThing);
      |                                                                      ^
In file included from engines/dm/dm.cpp:53:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dm.cpp:1000:68: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1000 |                         textStringThings[textStringThingCount++] = curThing;
      |                                                                    ^~~~~~~~
In file included from engines/dm/dm.cpp:53:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dm.cpp:1002:62: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1002 |                 curThing = _dungeonMan->getNextThing(curThing);
      |                                                              ^
In file included from engines/dm/dm.cpp:53:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
    C++      engines/dm/loadsave.o
In file included from engines/dm/loadsave.cpp:34:
./engines/dm/dungeonman.h: In member function 'void DM::Sensor::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:387:55: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  387 |         void setNextThing(Thing thing) { _nextThing = thing; }
      |                                                       ^~~~~
In file included from engines/dm/loadsave.cpp:33:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/loadsave.cpp:34:
./engines/dm/dungeonman.h: In member function 'void DM::Weapon::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:434:53: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  434 |         void setNextThing(Thing val) { _nextThing = val;  }
      |                                                     ^~~
In file included from engines/dm/loadsave.cpp:33:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/loadsave.cpp:34:
./engines/dm/dungeonman.h: In member function 'void DM::Scroll::set(DM::Thing, uint16)':
./engines/dm/dungeonman.h:464:30: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  464 |                 _nextThing = next;
      |                              ^~~~
In file included from engines/dm/loadsave.cpp:33:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/loadsave.cpp:34:
./engines/dm/dungeonman.h: In member function 'void DM::Junk::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:518:55: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  518 |         void setNextThing(Thing thing) { _nextThing = thing; }
      |                                                       ^~~~~
In file included from engines/dm/loadsave.cpp:33:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/loadsave.cpp:34:
./engines/dm/dungeonman.h: In member function 'DM::Thing DM::Explosion::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:540:61: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  540 |         Thing setNextThing(Thing val) { return _nextThing = val; }
      |                                                             ^~~
In file included from engines/dm/loadsave.cpp:33:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/loadsave.cpp:37:
./engines/dm/champion.h: In member function 'void DM::Champion::setSlot(DM::ChampionSlot, DM::Thing)':
./engines/dm/champion.h:438:69: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  438 |         void setSlot(ChampionSlot slot, Thing val) { _slots[slot] = val; }
      |                                                                     ^~~
In file included from engines/dm/loadsave.cpp:33:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/loadsave.cpp: In member function 'DM::LoadgameResult DM::DMEngine::loadgame(int16)':
engines/dm/loadsave.cpp:66:51: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
   66 |                 _championMan->_leaderHandObject = _thingNone;
      |                                                   ^~~~~~~~~~
In file included from engines/dm/loadsave.cpp:33:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/loadsave.cpp:107:77: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  107 |                 _championMan->_leaderHandObject = Thing(file->readUint16BE());
      |                                                                             ^
In file included from engines/dm/loadsave.cpp:33:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
    C++      engines/dm/lzw.o
    C++      engines/dm/inventory.o
In file included from ./engines/dm/inventory.h:33,
                 from engines/dm/inventory.cpp:31:
./engines/dm/champion.h: In member function 'void DM::Champion::setSlot(DM::ChampionSlot, DM::Thing)':
./engines/dm/champion.h:438:69: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  438 |         void setSlot(ChampionSlot slot, Thing val) { _slots[slot] = val; }
      |                                                                     ^~~
In file included from ./engines/dm/inventory.h:31,
                 from engines/dm/inventory.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from ./engines/dm/inventory.h:34,
                 from engines/dm/inventory.cpp:31:
./engines/dm/dungeonman.h: In member function 'void DM::Sensor::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:387:55: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  387 |         void setNextThing(Thing thing) { _nextThing = thing; }
      |                                                       ^~~~~
In file included from ./engines/dm/inventory.h:31,
                 from engines/dm/inventory.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from ./engines/dm/inventory.h:34,
                 from engines/dm/inventory.cpp:31:
./engines/dm/dungeonman.h: In member function 'void DM::Weapon::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:434:53: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  434 |         void setNextThing(Thing val) { _nextThing = val;  }
      |                                                     ^~~
In file included from ./engines/dm/inventory.h:31,
                 from engines/dm/inventory.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from ./engines/dm/inventory.h:34,
                 from engines/dm/inventory.cpp:31:
./engines/dm/dungeonman.h: In member function 'void DM::Scroll::set(DM::Thing, uint16)':
./engines/dm/dungeonman.h:464:30: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  464 |                 _nextThing = next;
      |                              ^~~~
In file included from ./engines/dm/inventory.h:31,
                 from engines/dm/inventory.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from ./engines/dm/inventory.h:34,
                 from engines/dm/inventory.cpp:31:
./engines/dm/dungeonman.h: In member function 'void DM::Junk::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:518:55: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  518 |         void setNextThing(Thing thing) { _nextThing = thing; }
      |                                                       ^~~~~
In file included from ./engines/dm/inventory.h:31,
                 from engines/dm/inventory.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from ./engines/dm/inventory.h:34,
                 from engines/dm/inventory.cpp:31:
./engines/dm/dungeonman.h: In member function 'DM::Thing DM::Explosion::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:540:61: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  540 |         Thing setNextThing(Thing val) { return _nextThing = val; }
      |                                                             ^~~
In file included from ./engines/dm/inventory.h:31,
                 from engines/dm/inventory.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/inventory.cpp: In constructor 'DM::InventoryMan::InventoryMan(DM::DMEngine*)':
engines/dm/inventory.cpp:76:41: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
   76 |                 _chestSlots[i] = Thing(0);
      |                                         ^
In file included from ./engines/dm/inventory.h:31,
                 from engines/dm/inventory.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/inventory.cpp:77:27: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
   77 |         _openChest = _vm->_thingNone;
      |                           ^~~~~~~~~~
In file included from ./engines/dm/inventory.h:31,
                 from engines/dm/inventory.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/inventory.cpp: In member function 'void DM::InventoryMan::drawPanel()':
engines/dm/inventory.cpp:269:30: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  269 |                 thing = _vm->_thingNone;
      |                              ^~~~~~~~~~
In file included from ./engines/dm/inventory.h:31,
                 from engines/dm/inventory.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/inventory.cpp: In member function 'void DM::InventoryMan::closeChest()':
engines/dm/inventory.cpp:286:27: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  286 |         _openChest = _vm->_thingNone;
      |                           ^~~~~~~~~~
In file included from ./engines/dm/inventory.h:31,
                 from engines/dm/inventory.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/inventory.cpp:287:37: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  287 |         container->getSlot() = _vm->_thingEndOfList;
      |                                     ^~~~~~~~~~~~~~~
In file included from ./engines/dm/inventory.h:31,
                 from engines/dm/inventory.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/inventory.cpp:292:60: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  292 |                         _chestSlots[chestSlotIndex] = _vm->_thingNone; // CHANGE8_09_FIX
      |                                                            ^~~~~~~~~~
In file included from ./engines/dm/inventory.h:31,
                 from engines/dm/inventory.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/inventory.cpp:297:68: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  297 |                                 container->getSlot() = prevThing = thing;
      |                                                                    ^~~~~
In file included from ./engines/dm/inventory.h:31,
                 from engines/dm/inventory.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/inventory.cpp:297:68: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  297 |                                 container->getSlot() = prevThing = thing;
      |                                                                    ^~~~~
In file included from ./engines/dm/inventory.h:31,
                 from engines/dm/inventory.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/inventory.cpp:300:45: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  300 |                                 prevThing = thing;
      |                                             ^~~~~
In file included from ./engines/dm/inventory.h:31,
                 from engines/dm/inventory.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/inventory.cpp: In member function 'void DM::InventoryMan::openAndDrawChest(DM::Thing, DM::Container*, bool)':
engines/dm/inventory.cpp:374:22: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  374 |         _openChest = thingToOpen;
      |                      ^~~~~~~~~~~
In file included from ./engines/dm/inventory.h:31,
                 from engines/dm/inventory.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/inventory.cpp:388:49: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  388 |                 _chestSlots[chestSlotIndex++] = thing;
      |                                                 ^~~~~
In file included from ./engines/dm/inventory.h:31,
                 from engines/dm/inventory.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/inventory.cpp:389:61: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  389 |                 thing = _vm->_dungeonMan->getNextThing(thing);
      |                                                             ^
In file included from ./engines/dm/inventory.h:31,
                 from engines/dm/inventory.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/inventory.cpp:393:54: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  393 |                 _chestSlots[chestSlotIndex++] = _vm->_thingNone;
      |                                                      ^~~~~~~~~~
In file included from ./engines/dm/inventory.h:31,
                 from engines/dm/inventory.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
    C++      engines/dm/objectman.o
In file included from ./engines/dm/objectman.h:32,
                 from engines/dm/objectman.cpp:28:
./engines/dm/champion.h: In member function 'void DM::Champion::setSlot(DM::ChampionSlot, DM::Thing)':
./engines/dm/champion.h:438:69: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  438 |         void setSlot(ChampionSlot slot, Thing val) { _slots[slot] = val; }
      |                                                                     ^~~
In file included from ./engines/dm/objectman.h:31,
                 from engines/dm/objectman.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/objectman.cpp:29:
./engines/dm/dungeonman.h: In member function 'void DM::Sensor::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:387:55: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  387 |         void setNextThing(Thing thing) { _nextThing = thing; }
      |                                                       ^~~~~
In file included from ./engines/dm/objectman.h:31,
                 from engines/dm/objectman.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/objectman.cpp:29:
./engines/dm/dungeonman.h: In member function 'void DM::Weapon::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:434:53: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  434 |         void setNextThing(Thing val) { _nextThing = val;  }
      |                                                     ^~~
In file included from ./engines/dm/objectman.h:31,
                 from engines/dm/objectman.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/objectman.cpp:29:
./engines/dm/dungeonman.h: In member function 'void DM::Scroll::set(DM::Thing, uint16)':
./engines/dm/dungeonman.h:464:30: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  464 |                 _nextThing = next;
      |                              ^~~~
In file included from ./engines/dm/objectman.h:31,
                 from engines/dm/objectman.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/objectman.cpp:29:
./engines/dm/dungeonman.h: In member function 'void DM::Junk::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:518:55: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  518 |         void setNextThing(Thing thing) { _nextThing = thing; }
      |                                                       ^~~~~
In file included from ./engines/dm/objectman.h:31,
                 from engines/dm/objectman.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/objectman.cpp:29:
./engines/dm/dungeonman.h: In member function 'DM::Thing DM::Explosion::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:540:61: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  540 |         Thing setNextThing(Thing val) { return _nextThing = val; }
      |                                                             ^~~
In file included from ./engines/dm/objectman.h:31,
                 from engines/dm/objectman.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
    C++      engines/dm/dungeonman.o
In file included from engines/dm/dungeonman.cpp:31:
./engines/dm/dungeonman.h: In member function 'void DM::Sensor::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:387:55: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  387 |         void setNextThing(Thing thing) { _nextThing = thing; }
      |                                                       ^~~~~
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/dungeonman.cpp:31:
./engines/dm/dungeonman.h: In member function 'void DM::Weapon::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:434:53: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  434 |         void setNextThing(Thing val) { _nextThing = val;  }
      |                                                     ^~~
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/dungeonman.cpp:31:
./engines/dm/dungeonman.h: In member function 'void DM::Scroll::set(DM::Thing, uint16)':
./engines/dm/dungeonman.h:464:30: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  464 |                 _nextThing = next;
      |                              ^~~~
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/dungeonman.cpp:31:
./engines/dm/dungeonman.h: In member function 'void DM::Junk::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:518:55: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  518 |         void setNextThing(Thing thing) { _nextThing = thing; }
      |                                                       ^~~~~
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/dungeonman.cpp:31:
./engines/dm/dungeonman.h: In member function 'DM::Thing DM::Explosion::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:540:61: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  540 |         Thing setNextThing(Thing val) { return _nextThing = val; }
      |                                                             ^~~
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/dungeonman.cpp:33:
./engines/dm/champion.h: In member function 'void DM::Champion::setSlot(DM::ChampionSlot, DM::Thing)':
./engines/dm/champion.h:438:69: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  438 |         void setSlot(ChampionSlot slot, Thing val) { _slots[slot] = val; }
      |                                                                     ^~~
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dungeonman.cpp: In constructor 'DM::DungeonMan::DungeonMan(DM::DMEngine*)':
engines/dm/dungeonman.cpp:455:44: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  455 |                 _pileTopObject[i] = Thing(0);
      |                                            ^
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dungeonman.cpp: In member function 'void DM::DungeonMan::loadDungeonFile(Common::InSaveFile*)':
engines/dm/dungeonman.cpp:672:84: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  672 |                         _squareFirstThings[actualSquareFirstThingCount + i] = _vm->_thingNone;
      |                                                                                    ^~~~~~~~~~
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dungeonman.cpp: In member function 'void DM::DungeonMan::setSquareAspect(uint16*, DM::Direction, int16, int16)':
engines/dm/dungeonman.cpp:913:78: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  913 |                                                 displMan._inscriptionThing = curThing; /* BUG0_76 The same text is drawn on multiple sides of a wall square. The engine stores only a single text to draw on a wall in a global variable. Even if different texts are placed on different sides of the wall, the same text is drawn on each affected side */
      |                                                                              ^~~~~~~~
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dungeonman.cpp:922:57: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  922 |                         curThing = getNextThing(curThing);
      |                                                         ^
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dungeonman.cpp:963:57: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  963 |                         curThing = getNextThing(curThing);
      |                                                         ^
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dungeonman.cpp:976:57: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  976 |                         curThing = getNextThing(curThing);
      |                                                         ^
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dungeonman.cpp:989:57: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  989 |                         curThing = getNextThing(curThing);
      |                                                         ^
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dungeonman.cpp: In member function 'DM::Thing DM::DungeonMan::getUnusedThing(uint16)':
engines/dm/dungeonman.cpp:1209:85: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1209 |                         curThing = Thing((thingType << 10) | (thingCount - thingIdx));
      |                                                                                     ^
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dungeonman.cpp:1215:61: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1215 |                         curThing = getDiscardThing(thingType);
      |                                                             ^
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dungeonman.cpp:1227:26: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1227 |         *thingPtr = _vm->_thingEndOfList;
      |                          ^~~~~~~~~~~~~~~
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dungeonman.cpp: In member function 'uint16 DM::DungeonMan::getObjectWeight(DM::Thing)':
engines/dm/dungeonman.cpp:1280:54: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1280 |                 thing = ((Container *)junk)->getSlot();
      |                                                      ^
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dungeonman.cpp:1283:51: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1283 |                         thing = getNextThing(thing);
      |                                                   ^
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dungeonman.cpp: In member function 'void DM::DungeonMan::linkThingToList(DM::Thing, DM::Thing, int16, int16)':
engines/dm/dungeonman.cpp:1327:26: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1327 |         *thingPtr = _vm->_thingEndOfList;
      |                          ^~~~~~~~~~~~~~~
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dungeonman.cpp:1332:69: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1332 |                         thingInList = getSquareFirstThing(mapX, mapY);
      |                                                                     ^
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dungeonman.cpp:1350:63: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1350 |                                 currThing[i] = currThing[i - 1];
      |                                                               ^
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dungeonman.cpp:1352:38: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1352 |                         *currThing = thingToLink;
      |                                      ^~~~~~~~~~~
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dungeonman.cpp:1358:56: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1358 |                 nextThing = getNextThing(thingInList = nextThing);
      |                                                        ^~~~~~~~~
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dungeonman.cpp:1358:65: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1358 |                 nextThing = getNextThing(thingInList = nextThing);
      |                                                                 ^
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dungeonman.cpp:1361:21: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1361 |         *thingPtr = thingToLink;
      |                     ^~~~~~~~~~~
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dungeonman.cpp: In member function 'DM::Thing DM::DungeonMan::getSquareFirstObject(int16, int16)':
engines/dm/dungeonman.cpp:1418:43: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1418 |                 thing = getNextThing(thing);
      |                                           ^
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dungeonman.cpp: In member function 'DM::Thing DM::DungeonMan::getDiscardThing(uint16)':
engines/dm/dungeonman.cpp:1519:89: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1519 |                                         } while ((squareThing = getNextThing(squareThing)) != _vm->_thingEndOfList);
      |                                                                                         ^
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dungeonman.cpp: In member function 'void DM::DungeonMan::unlinkThingFromList(DM::Thing, DM::Thing, int16, int16)':
engines/dm/dungeonman.cpp:1574:34: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1574 |         thingToUnlink = Thing(tmp);
      |                                  ^
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dungeonman.cpp:1585:63: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1585 |                                 currThing[i] = currThing[i + 1];
      |                                                               ^
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dungeonman.cpp:1587:72: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1587 |                         _squareFirstThings[squareFirstThingIdx] = _vm->_thingNone;
      |                                                                        ^~~~~~~~~~
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dungeonman.cpp:1593:42: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1593 |                         *thingPtr = _vm->_thingEndOfList;
      |                                          ^~~~~~~~~~~~~~~
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dungeonman.cpp:1597:39: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1597 |                         *currThing = *thingPtr;
      |                                       ^~~~~~~~
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dungeonman.cpp:1598:42: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1598 |                         *thingPtr = _vm->_thingEndOfList;
      |                                          ^~~~~~~~~~~~~~~
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dungeonman.cpp:1601:32: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1601 |                 thingInList = *currThing;
      |                                ^~~~~~~~~
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dungeonman.cpp:1608:50: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1608 |                                 *thingPtr = _vm->_thingEndOfList;
      |                                                  ^~~~~~~~~~~~~~~
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dungeonman.cpp:1611:56: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1611 |                 currThing = getNextThing(thingInList = currThing);
      |                                                        ^~~~~~~~~
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dungeonman.cpp:1611:65: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1611 |                 currThing = getNextThing(thingInList = currThing);
      |                                                                 ^
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dungeonman.cpp:1614:43: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1614 |         *thingPtr = getNextThing(currThing);
      |                                           ^
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/dungeonman.cpp:1616:26: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1616 |         *thingPtr = _vm->_thingEndOfList;
      |                          ^~~~~~~~~~~~~~~
In file included from ./engines/dm/dungeonman.h:31,
                 from engines/dm/dungeonman.cpp:31:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
    C++      engines/dm/group.o
In file included from engines/dm/group.cpp:29:
./engines/dm/dungeonman.h: In member function 'void DM::Sensor::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:387:55: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  387 |         void setNextThing(Thing thing) { _nextThing = thing; }
      |                                                       ^~~~~
In file included from ./engines/dm/group.h:31,
                 from engines/dm/group.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/group.cpp:29:
./engines/dm/dungeonman.h: In member function 'void DM::Weapon::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:434:53: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  434 |         void setNextThing(Thing val) { _nextThing = val;  }
      |                                                     ^~~
In file included from ./engines/dm/group.h:31,
                 from engines/dm/group.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/group.cpp:29:
./engines/dm/dungeonman.h: In member function 'void DM::Scroll::set(DM::Thing, uint16)':
./engines/dm/dungeonman.h:464:30: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  464 |                 _nextThing = next;
      |                              ^~~~
In file included from ./engines/dm/group.h:31,
                 from engines/dm/group.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/group.cpp:29:
./engines/dm/dungeonman.h: In member function 'void DM::Junk::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:518:55: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  518 |         void setNextThing(Thing thing) { _nextThing = thing; }
      |                                                       ^~~~~
In file included from ./engines/dm/group.h:31,
                 from engines/dm/group.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/group.cpp:29:
./engines/dm/dungeonman.h: In member function 'DM::Thing DM::Explosion::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:540:61: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  540 |         Thing setNextThing(Thing val) { return _nextThing = val; }
      |                                                             ^~~
In file included from ./engines/dm/group.h:31,
                 from engines/dm/group.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/group.cpp:30:
./engines/dm/champion.h: In member function 'void DM::Champion::setSlot(DM::ChampionSlot, DM::Thing)':
./engines/dm/champion.h:438:69: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  438 |         void setSlot(ChampionSlot slot, Thing val) { _slots[slot] = val; }
      |                                                                     ^~~
In file included from ./engines/dm/group.h:31,
                 from engines/dm/group.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/group.cpp: In constructor 'DM::GroupMan::GroupMan(DM::DMEngine*)':
engines/dm/group.cpp:54:34: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
   54 |         _currGroupThing = Thing(0);
      |                                  ^
In file included from ./engines/dm/group.h:31,
                 from engines/dm/group.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/group.cpp:60:52: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
   60 |         _groupMovementBlockedByGroupThing = Thing(0);
      |                                                    ^
In file included from ./engines/dm/group.h:31,
                 from engines/dm/group.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/group.cpp: In member function 'void DM::GroupMan::dropGroupPossessions(int16, int16, DM::Thing, DM::SoundMode)':
engines/dm/group.cpp:162:70: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  162 |                         nextThing = dungeon.getNextThing(currentThing);
      |                                                                      ^
In file included from ./engines/dm/group.h:31,
                 from engines/dm/group.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/group.cpp:163:99: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  163 |                         currentThing = _vm->thingWithNewCell(currentThing, _vm->getRandomNumber(4));
      |                                                                                                   ^
In file included from ./engines/dm/group.h:31,
                 from engines/dm/group.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/group.cpp:168:42: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  168 |                 } while ((currentThing = nextThing) != _vm->_thingEndOfList);
      |                                          ^~~~~~~~~
In file included from ./engines/dm/group.h:31,
                 from engines/dm/group.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/group.cpp: In member function 'void DM::GroupMan::dropCreatureFixedPossessions(DM::CreatureType, int16, int16, uint16, DM::SoundMode)':
engines/dm/group.cpp:299:184: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  299 |                 nextUnusedThing = _vm->thingWithNewCell(nextUnusedThing, ((cell == kDMCreatureTypeSingleCenteredCreature) || !_vm->getRandomNumber(4)) ? _vm->getRandomNumber(4) : cell);
      |                                                                                                                                                                                        ^
In file included from ./engines/dm/group.h:31,
                 from engines/dm/group.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/group.cpp: In member function 'DM::Thing DM::GroupMan::groupGetThing(int16, int16)':
engines/dm/group.cpp:397:57: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  397 |                 curThing = dungeon.getNextThing(curThing);
      |                                                         ^
In file included from ./engines/dm/group.h:31,
                 from engines/dm/group.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/group.cpp: In member function 'void DM::GroupMan::groupDelete(int16, int16)':
engines/dm/group.cpp:516:34: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  516 |         group->_nextThing = _vm->_thingNone;
      |                                  ^~~~~~~~~~
In file included from ./engines/dm/group.h:31,
                 from engines/dm/group.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/group.cpp: In member function 'void DM::GroupMan::processEvents29to41(int16, int16, DM::TimelineEventType, uint16)':
engines/dm/group.cpp:697:27: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  697 |         _currGroupThing = groupThing;
      |                           ^~~~~~~~~~
In file included from ./engines/dm/group.h:31,
                 from engines/dm/group.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/group.cpp: In member function 'bool DM::GroupMan::isMovementPossible(DM::CreatureInfo*, int16, int16, uint16, bool)':
engines/dm/group.cpp:1099:50: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1099 |         _groupMovementBlockedByGroupThing = _vm->_thingEndOfList;
      |                                                  ^~~~~~~~~~~~~~~
In file included from ./engines/dm/group.h:31,
                 from engines/dm/group.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/group.cpp:1134:65: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1134 |                         curThing = dungeon.getNextThing(curThing);
      |                                                                 ^
In file included from ./engines/dm/group.h:31,
                 from engines/dm/group.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/group.cpp:1157:69: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1157 |         _groupMovementBlockedByGroupThing = groupGetThing(mapX, mapY);
      |                                                                     ^
In file included from ./engines/dm/group.h:31,
                 from engines/dm/group.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/group.cpp: In member function 'bool DM::GroupMan::isCreatureAttacking(DM::Group*, int16, int16, uint16)':
engines/dm/group.cpp:1492:56: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1492 |                                 projectileThing = _vm->_thingExplFireBall;
      |                                                        ^~~~~~~~~~~~~~~~~~
In file included from ./engines/dm/group.h:31,
                 from engines/dm/group.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/group.cpp:1496:64: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1496 |                                         projectileThing = _vm->_thingExplHarmNonMaterial;
      |                                                                ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./engines/dm/group.h:31,
                 from engines/dm/group.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/group.cpp:1499:64: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1499 |                                         projectileThing = _vm->_thingExplLightningBolt;
      |                                                                ^~~~~~~~~~~~~~~~~~~~~~~
In file included from ./engines/dm/group.h:31,
                 from engines/dm/group.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/group.cpp:1502:64: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1502 |                                         projectileThing = _vm->_thingExplPoisonCloud;
      |                                                                ^~~~~~~~~~~~~~~~~~~~~
In file included from ./engines/dm/group.h:31,
                 from engines/dm/group.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/group.cpp:1505:64: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1505 |                                         projectileThing = _vm->_thingExplOpenDoor;
      |                                                                ^~~~~~~~~~~~~~~~~~
In file included from ./engines/dm/group.h:31,
                 from engines/dm/group.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/group.cpp:1508:64: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1508 |                                         projectileThing = _vm->_thingNone;
      |                                                                ^~~~~~~~~~
In file included from ./engines/dm/group.h:31,
                 from engines/dm/group.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/group.cpp:1514:48: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1514 |                         projectileThing = _vm->_thingExplSlime;
      |                                                ^~~~~~~~~~~~~~~
In file included from ./engines/dm/group.h:31,
                 from engines/dm/group.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/group.cpp:1518:56: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1518 |                                 projectileThing = _vm->_thingExplLightningBolt;
      |                                                        ^~~~~~~~~~~~~~~~~~~~~~~
In file included from ./engines/dm/group.h:31,
                 from engines/dm/group.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/group.cpp:1520:56: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1520 |                                 projectileThing = _vm->_thingExplOpenDoor;
      |                                                        ^~~~~~~~~~~~~~~~~~
In file included from ./engines/dm/group.h:31,
                 from engines/dm/group.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/group.cpp:1525:56: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1525 |                                 projectileThing = _vm->_thingExplPoisonCloud;
      |                                                        ^~~~~~~~~~~~~~~~~~~~~
In file included from ./engines/dm/group.h:31,
                 from engines/dm/group.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/group.cpp:1531:48: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1531 |                         projectileThing = _vm->_thingExplFireBall;
      |                                                ^~~~~~~~~~~~~~~~~~
In file included from ./engines/dm/group.h:31,
                 from engines/dm/group.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/group.cpp: In member function 'void DM::GroupMan::stealFromChampion(DM::Group*, uint16)':
engines/dm/group.cpp:1612:107: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1612 |                         slotThing = championMan.getObjectRemovedFromSlot(championIndex, stealFromSlotIndex);
      |                                                                                                           ^
In file included from ./engines/dm/group.h:31,
                 from engines/dm/group.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/group.cpp:1614:48: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1614 |                                 group->_slot = slotThing;
      |                                                ^~~~~~~~~
In file included from ./engines/dm/group.h:31,
                 from engines/dm/group.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/group.cpp: In member function 'void DM::GroupMan::addAllActiveGroups()':
engines/dm/group.cpp:1797:81: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1797 |                                         curThing = dungeon.getNextThing(curThing);
      |                                                                                 ^
In file included from ./engines/dm/group.h:31,
                 from engines/dm/group.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/group.cpp: In member function 'DM::Thing DM::GroupMan::groupGetGenerated(DM::CreatureType, int16, uint16, DM::Direction, int16, int16)':
engines/dm/group.cpp:1813:29: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1813 |         group->_slot = _vm->_thingEndOfList;
      |                             ^~~~~~~~~~~~~~~
In file included from ./engines/dm/group.h:31,
                 from engines/dm/group.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/group.cpp: In member function 'bool DM::GroupMan::isFluxcageOnSquare(int16, int16)':
engines/dm/group.cpp:2033:51: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 2033 |                 thing = dungeon.getNextThing(thing);
      |                                                   ^
In file included from ./engines/dm/group.h:31,
                 from engines/dm/group.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
    C++      engines/dm/menus.o
In file included from ./engines/dm/menus.h:32,
                 from engines/dm/menus.cpp:28:
./engines/dm/champion.h: In member function 'void DM::Champion::setSlot(DM::ChampionSlot, DM::Thing)':
./engines/dm/champion.h:438:69: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  438 |         void setSlot(ChampionSlot slot, Thing val) { _slots[slot] = val; }
      |                                                                     ^~~
In file included from ./engines/dm/menus.h:31,
                 from engines/dm/menus.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from ./engines/dm/menus.h:33,
                 from engines/dm/menus.cpp:28:
./engines/dm/dungeonman.h: In member function 'void DM::Sensor::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:387:55: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  387 |         void setNextThing(Thing thing) { _nextThing = thing; }
      |                                                       ^~~~~
In file included from ./engines/dm/menus.h:31,
                 from engines/dm/menus.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from ./engines/dm/menus.h:33,
                 from engines/dm/menus.cpp:28:
./engines/dm/dungeonman.h: In member function 'void DM::Weapon::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:434:53: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  434 |         void setNextThing(Thing val) { _nextThing = val;  }
      |                                                     ^~~
In file included from ./engines/dm/menus.h:31,
                 from engines/dm/menus.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from ./engines/dm/menus.h:33,
                 from engines/dm/menus.cpp:28:
./engines/dm/dungeonman.h: In member function 'void DM::Scroll::set(DM::Thing, uint16)':
./engines/dm/dungeonman.h:464:30: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  464 |                 _nextThing = next;
      |                              ^~~~
In file included from ./engines/dm/menus.h:31,
                 from engines/dm/menus.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from ./engines/dm/menus.h:33,
                 from engines/dm/menus.cpp:28:
./engines/dm/dungeonman.h: In member function 'void DM::Junk::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:518:55: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  518 |         void setNextThing(Thing thing) { _nextThing = thing; }
      |                                                       ^~~~~
In file included from ./engines/dm/menus.h:31,
                 from engines/dm/menus.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from ./engines/dm/menus.h:33,
                 from engines/dm/menus.cpp:28:
./engines/dm/dungeonman.h: In member function 'DM::Thing DM::Explosion::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:540:61: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  540 |         Thing setNextThing(Thing val) { return _nextThing = val; }
      |                                                             ^~~
In file included from ./engines/dm/menus.h:31,
                 from engines/dm/menus.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/menus.cpp: In constructor 'DM::MenuMan::MenuMan(DM::DMEngine*)':
engines/dm/menus.cpp:158:42: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  158 |         _actionTargetGroupThing = Thing(0);
      |                                          ^
In file included from ./engines/dm/menus.h:31,
                 from engines/dm/menus.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/menus.cpp: In member function 'DM::Potion* DM::MenuMan::getEmptyFlaskInHand(DM::Champion*, DM::Thing*)':
engines/dm/menus.cpp:826:40: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  826 |                         *potionThing = curThing;
      |                                        ^~~~~~~~
In file included from ./engines/dm/menus.h:31,
                 from engines/dm/menus.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/menus.cpp: In member function 'bool DM::MenuMan::isActionPerformed(uint16, int16)':
engines/dm/menus.cpp:1093:83: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1093 |         _actionTargetGroupThing = _vm->_groupMan->groupGetThing(nextMapX, nextMapY);
      |                                                                                   ^
In file included from ./engines/dm/menus.h:31,
                 from engines/dm/menus.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/menus.cpp:1111:39: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1111 |                 explosionThing = _vm->_thingExplLightningBolt;
      |                                       ^~~~~~~~~~~~~~~~~~~~~~~
In file included from ./engines/dm/menus.h:31,
                 from engines/dm/menus.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/menus.cpp:1116:39: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1116 |                 explosionThing = _vm->_thingExplHarmNonMaterial;
      |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./engines/dm/menus.h:31,
                 from engines/dm/menus.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/menus.cpp:1121:39: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1121 |                 explosionThing = _vm->_thingExplFireBall;
      |                                       ^~~~~~~~~~~~~~~~~~
In file included from ./engines/dm/menus.h:31,
                 from engines/dm/menus.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/menus.cpp:1126:39: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1126 |                 explosionThing = _vm->_thingExplFireBall;
      |                                       ^~~~~~~~~~~~~~~~~~
In file included from ./engines/dm/menus.h:31,
                 from engines/dm/menus.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/menus.cpp:1247:47: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1247 |                         explosionThing = _vm->_thingExplPoisonBolt;
      |                                               ^~~~~~~~~~~~~~~~~~~~
In file included from ./engines/dm/menus.h:31,
                 from engines/dm/menus.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/menus.cpp:1250:47: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1250 |                         explosionThing = _vm->_thingExplPoisonCloud;
      |                                               ^~~~~~~~~~~~~~~~~~~~~
In file included from ./engines/dm/menus.h:31,
                 from engines/dm/menus.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/menus.cpp:1253:47: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1253 |                         explosionThing = _vm->_thingExplHarmNonMaterial;
      |                                               ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./engines/dm/menus.h:31,
                 from engines/dm/menus.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/menus.cpp:1256:47: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1256 |                         explosionThing = _vm->_thingExplFireBall;
      |                                               ^~~~~~~~~~~~~~~~~~
In file included from ./engines/dm/menus.h:31,
                 from engines/dm/menus.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
    C++      engines/dm/champion.o
In file included from engines/dm/champion.cpp:28:
./engines/dm/champion.h: In member function 'void DM::Champion::setSlot(DM::ChampionSlot, DM::Thing)':
./engines/dm/champion.h:438:69: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  438 |         void setSlot(ChampionSlot slot, Thing val) { _slots[slot] = val; }
      |                                                                     ^~~
In file included from ./engines/dm/champion.h:33,
                 from engines/dm/champion.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/champion.cpp:29:
./engines/dm/dungeonman.h: In member function 'void DM::Sensor::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:387:55: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  387 |         void setNextThing(Thing thing) { _nextThing = thing; }
      |                                                       ^~~~~
In file included from ./engines/dm/champion.h:33,
                 from engines/dm/champion.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/champion.cpp:29:
./engines/dm/dungeonman.h: In member function 'void DM::Weapon::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:434:53: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  434 |         void setNextThing(Thing val) { _nextThing = val;  }
      |                                                     ^~~
In file included from ./engines/dm/champion.h:33,
                 from engines/dm/champion.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/champion.cpp:29:
./engines/dm/dungeonman.h: In member function 'void DM::Scroll::set(DM::Thing, uint16)':
./engines/dm/dungeonman.h:464:30: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  464 |                 _nextThing = next;
      |                              ^~~~
In file included from ./engines/dm/champion.h:33,
                 from engines/dm/champion.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/champion.cpp:29:
./engines/dm/dungeonman.h: In member function 'void DM::Junk::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:518:55: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  518 |         void setNextThing(Thing thing) { _nextThing = thing; }
      |                                                       ^~~~~
In file included from ./engines/dm/champion.h:33,
                 from engines/dm/champion.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/champion.cpp:29:
./engines/dm/dungeonman.h: In member function 'DM::Thing DM::Explosion::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:540:61: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  540 |         Thing setNextThing(Thing val) { return _nextThing = val; }
      |                                                             ^~~
In file included from ./engines/dm/champion.h:33,
                 from engines/dm/champion.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/champion.cpp: In member function 'void DM::Champion::resetToZero()':
engines/dm/champion.cpp:46:34: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
   46 |                 _slots[i] = _vm->_thingNone;
      |                                  ^~~~~~~~~~
In file included from ./engines/dm/champion.h:33,
                 from engines/dm/champion.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/champion.cpp: In constructor 'DM::ChampionMan::ChampionMan(DM::DMEngine*)':
engines/dm/champion.cpp:173:36: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  173 |         _leaderHandObject = Thing(0);
      |                                    ^
In file included from ./engines/dm/champion.h:33,
                 from engines/dm/champion.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/champion.cpp: In member function 'bool DM::ChampionMan::isObjectThrown(uint16, int16, int16)':
engines/dm/champion.cpp:208:59: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  208 |                 curThing = getObjectRemovedFromLeaderHand();
      |                                                           ^
In file included from ./engines/dm/champion.h:33,
                 from engines/dm/champion.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/champion.cpp:210:73: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  210 |                 actionHandThing = curChampion->getSlot(kDMSlotActionHand);
      |                                                                         ^
In file included from ./engines/dm/champion.h:33,
                 from engines/dm/champion.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/champion.cpp:221:74: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  221 |                 curThing = getObjectRemovedFromSlot(champIndex, slotIndex);
      |                                                                          ^
In file included from ./engines/dm/champion.h:33,
                 from engines/dm/champion.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/champion.cpp: In member function 'void DM::ChampionMan::addObjectInSlot(DM::ChampionIndex, DM::Thing, DM::ChampionSlot)':
engines/dm/champion.cpp:544:65: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  544 |                 invMan._chestSlots[slotIndex - kDMSlotChest1] = thing;
      |                                                                 ^~~~~
In file included from ./engines/dm/champion.h:33,
                 from engines/dm/champion.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/champion.cpp: In member function 'DM::Thing DM::ChampionMan::getObjectRemovedFromLeaderHand()':
engines/dm/champion.cpp:616:42: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  616 |                 _leaderHandObject = _vm->_thingNone;
      |                                          ^~~~~~~~~~
In file included from ./engines/dm/champion.h:33,
                 from engines/dm/champion.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/champion.cpp: In member function 'DM::Thing DM::ChampionMan::getObjectRemovedFromSlot(uint16, uint16)':
engines/dm/champion.cpp:680:75: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  680 |                 curThing = inventory._chestSlots[slotIndex - kDMSlotChest1];
      |                                                                           ^
In file included from ./engines/dm/champion.h:33,
                 from engines/dm/champion.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/champion.cpp:681:73: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  681 |                 inventory._chestSlots[slotIndex - kDMSlotChest1] = _vm->_thingNone;
      |                                                                         ^~~~~~~~~~
In file included from ./engines/dm/champion.h:33,
                 from engines/dm/champion.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/champion.cpp:683:57: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  683 |                 curThing = curChampion->_slots[slotIndex];
      |                                                         ^
In file included from ./engines/dm/champion.h:33,
                 from engines/dm/champion.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/champion.cpp:684:55: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  684 |                 curChampion->_slots[slotIndex] = _vm->_thingNone;
      |                                                       ^~~~~~~~~~
In file included from ./engines/dm/champion.h:33,
                 from engines/dm/champion.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/champion.cpp: In member function 'void DM::ChampionMan::putObjectInLeaderHand(DM::Thing, bool)':
engines/dm/champion.cpp:1232:127: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1232 |         _vm->_objectMan->extractIconFromBitmap(_leaderHandObjectIconIndex = _vm->_objectMan->getIconIndex(_leaderHandObject = thing), _vm->_objectMan->_objectIconForMousePointer);
      |                                                                                                                               ^~~~~
In file included from ./engines/dm/champion.h:33,
                 from engines/dm/champion.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/champion.cpp: In member function 'bool DM::ChampionMan::isAmmunitionCompatibleWithWeapon(uint16, uint16, uint16)':
engines/dm/champion.cpp:1299:59: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1299 |         curThing = curChampion->_slots[ammunitionSlotIndex];
      |                                                           ^
In file included from ./engines/dm/champion.h:33,
                 from engines/dm/champion.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/champion.cpp: In member function 'void DM::ChampionMan::clickOnSlotBox(uint16)':
engines/dm/champion.cpp:1351:76: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1351 |                 slotThing = inventory._chestSlots[slotIndex - kDMSlotChest1];
      |                                                                            ^
In file included from ./engines/dm/champion.h:33,
                 from engines/dm/champion.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/champion.cpp:1353:68: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1353 |                 slotThing = _champions[champIndex]._slots[slotIndex];
      |                                                                    ^
In file included from ./engines/dm/champion.h:33,
                 from engines/dm/champion.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/champion.cpp: In member function 'void DM::ChampionMan::loadPartyPart2(Common::InSaveFile*)':
engines/dm/champion.cpp:1817:70: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1817 |                         champ->_slots[j] = Thing(file->readUint16BE());
      |                                                                      ^
In file included from ./engines/dm/champion.h:33,
                 from engines/dm/champion.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/champion.cpp: In member function 'void DM::ChampionMan::resetDataToStartGame()':
engines/dm/champion.cpp:1912:34: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1912 |         _leaderHandObject = _vm->_thingNone;
      |                                  ^~~~~~~~~~
In file included from ./engines/dm/champion.h:33,
                 from engines/dm/champion.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/champion.cpp: In member function 'void DM::ChampionMan::addCandidateChampionToParty(uint16)':
engines/dm/champion.cpp:1947:53: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1947 |                 championPtr->_slots[slotIdx] = _vm->_thingNone;
      |                                                     ^~~~~~~~~~
In file included from ./engines/dm/champion.h:33,
                 from engines/dm/champion.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/champion.cpp:1951:57: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1951 |                 curThing = dungeon.getNextThing(curThing);
      |                                                         ^
In file included from ./engines/dm/champion.h:33,
                 from engines/dm/champion.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/champion.cpp:2020:64: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 2020 |         curThing = dungeon.getSquareFirstThing(curMapX, curMapY);
      |                                                                ^
In file included from ./engines/dm/champion.h:33,
                 from engines/dm/champion.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/champion.cpp:2086:57: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 2086 |                 curThing = dungeon.getNextThing(curThing);
      |                                                         ^
In file included from ./engines/dm/champion.h:33,
                 from engines/dm/champion.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/champion.cpp: In member function 'void DM::ChampionMan::drawSlot(uint16, int16)':
engines/dm/champion.cpp:2390:72: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 2390 |                 thing = inventory._chestSlots[slotIndex - kDMSlotChest1];
      |                                                                        ^
In file included from ./engines/dm/champion.h:33,
                 from engines/dm/champion.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/champion.cpp:2392:63: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 2392 |                 thing = champ->getSlot((ChampionSlot)slotIndex);
      |                                                               ^
In file included from ./engines/dm/champion.h:33,
                 from engines/dm/champion.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
    C++      engines/dm/movesens.o
In file included from engines/dm/movesens.cpp:29:
./engines/dm/champion.h: In member function 'void DM::Champion::setSlot(DM::ChampionSlot, DM::Thing)':
./engines/dm/champion.h:438:69: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  438 |         void setSlot(ChampionSlot slot, Thing val) { _slots[slot] = val; }
      |                                                                     ^~~
In file included from ./engines/dm/movesens.h:32,
                 from engines/dm/movesens.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from ./engines/dm/inventory.h:34,
                 from engines/dm/movesens.cpp:30:
./engines/dm/dungeonman.h: In member function 'void DM::Sensor::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:387:55: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  387 |         void setNextThing(Thing thing) { _nextThing = thing; }
      |                                                       ^~~~~
In file included from ./engines/dm/movesens.h:32,
                 from engines/dm/movesens.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from ./engines/dm/inventory.h:34,
                 from engines/dm/movesens.cpp:30:
./engines/dm/dungeonman.h: In member function 'void DM::Weapon::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:434:53: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  434 |         void setNextThing(Thing val) { _nextThing = val;  }
      |                                                     ^~~
In file included from ./engines/dm/movesens.h:32,
                 from engines/dm/movesens.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from ./engines/dm/inventory.h:34,
                 from engines/dm/movesens.cpp:30:
./engines/dm/dungeonman.h: In member function 'void DM::Scroll::set(DM::Thing, uint16)':
./engines/dm/dungeonman.h:464:30: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  464 |                 _nextThing = next;
      |                              ^~~~
In file included from ./engines/dm/movesens.h:32,
                 from engines/dm/movesens.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from ./engines/dm/inventory.h:34,
                 from engines/dm/movesens.cpp:30:
./engines/dm/dungeonman.h: In member function 'void DM::Junk::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:518:55: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  518 |         void setNextThing(Thing thing) { _nextThing = thing; }
      |                                                       ^~~~~
In file included from ./engines/dm/movesens.h:32,
                 from engines/dm/movesens.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from ./engines/dm/inventory.h:34,
                 from engines/dm/movesens.cpp:30:
./engines/dm/dungeonman.h: In member function 'DM::Thing DM::Explosion::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:540:61: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  540 |         Thing setNextThing(Thing val) { return _nextThing = val; }
      |                                                             ^~~
In file included from ./engines/dm/movesens.h:32,
                 from engines/dm/movesens.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/movesens.cpp: In member function 'bool DM::MovesensMan::sensorIsTriggeredByClickOnWall(int16, int16, uint16)':
engines/dm/movesens.cpp:72:79: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
   72 |                 thingBeingProcessed = dungeon.getNextThing(thingBeingProcessed);
      |                                                                               ^
In file included from ./engines/dm/movesens.h:32,
                 from engines/dm/movesens.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/movesens.cpp:74:36: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
   74 |         for (thingBeingProcessed = squareFirstThing; thingBeingProcessed != _vm->_thingEndOfList; thingBeingProcessed = dungeon.getNextThing(thingBeingProcessed)) {
      |                                    ^~~~~~~~~~~~~~~~
In file included from ./engines/dm/movesens.h:32,
                 from engines/dm/movesens.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/movesens.cpp:74:161: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
   74 |         for (thingBeingProcessed = squareFirstThing; thingBeingProcessed != _vm->_thingEndOfList; thingBeingProcessed = dungeon.getNextThing(thingBeingProcessed)) {
      |                                                                                                                                                                 ^
In file included from ./engines/dm/movesens.h:32,
                 from engines/dm/movesens.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/movesens.cpp:118:63: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  118 |                                         thingBeingProcessed = lastProcessedThing;
      |                                                               ^~~~~~~~~~~~~~~~~~
In file included from ./engines/dm/movesens.h:32,
                 from engines/dm/movesens.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/movesens.cpp:135:113: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  135 |                                         leaderHandObject = getObjectOfTypeInCell(mapX, mapY, cellIdx, sensorData);
      |                                                                                                                 ^
In file included from ./engines/dm/movesens.h:32,
                 from engines/dm/movesens.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/movesens.cpp:147:65: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  147 |                                         leaderHandObject = _vm->_thingNone;
      |                                                                 ^~~~~~~~~~
In file included from ./engines/dm/movesens.h:32,
                 from engines/dm/movesens.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/movesens.cpp:191:61: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  191 |                                         *leaderThing = _vm->_thingNone;
      |                                                             ^~~~~~~~~~
In file included from ./engines/dm/movesens.h:32,
                 from engines/dm/movesens.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/movesens.cpp:193:65: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  193 |                                         leaderHandObject = _vm->_thingNone;
      |                                                                 ^~~~~~~~~~
In file included from ./engines/dm/movesens.h:32,
                 from engines/dm/movesens.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/movesens.cpp:196:113: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  196 |                                         leaderHandObject = dungeon.getObjForProjectileLaucherOrObjGen(sensorData);
      |                                                                                                                 ^
In file included from ./engines/dm/movesens.h:32,
                 from engines/dm/movesens.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/movesens.cpp: In member function 'bool DM::MovesensMan::getMoveResult(DM::Thing, int16, int16, int16, int16)':
engines/dm/movesens.cpp:302:118: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  302 |                                                         thing = getTeleporterRotatedProjectileThing(teleporter, thing);
      |                                                                                                                      ^
In file included from ./engines/dm/movesens.h:32,
                 from engines/dm/movesens.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/movesens.cpp:304:160: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  304 |                                                         thing = _vm->thingWithNewCell(thing, _vm->normalizeModulo4(thing.getCell() + teleporter->getRotation()));
      |                                                                                                                                                                ^
In file included from ./engines/dm/movesens.h:32,
                 from engines/dm/movesens.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/movesens.cpp:360:87: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  360 |                                         thing = _vm->thingWithNewCell(thing, thingCell);
      |                                                                                       ^
In file included from ./engines/dm/movesens.h:32,
                 from engines/dm/movesens.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/movesens.cpp:424:106: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  424 |                         if ((thing = _vm->_groupMan->groupGetThing(dungeon._partyMapX, dungeon._partyMapY)) != _vm->_thingEndOfList) { /* Delete group if party moves onto its square */
      |                                                                                                          ^
In file included from ./engines/dm/movesens.h:32,
                 from engines/dm/movesens.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/movesens.cpp: In member function 'bool DM::MovesensMan::moveIsKilledByProjectileImpact(int16, int16, int16, int16, DM::Thing)':
engines/dm/movesens.cpp:581:57: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  581 |                 curThing = dungeon.getNextThing(curThing);
      |                                                         ^
In file included from ./engines/dm/movesens.h:32,
                 from engines/dm/movesens.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/movesens.cpp: In member function 'DM::Thing DM::MovesensMan::getTeleporterRotatedProjectileThing(DM::Teleporter*, DM::Thing)':
engines/dm/movesens.cpp:699:133: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  699 |                 projectileThing = _vm->thingWithNewCell(projectileThing, _vm->normalizeModulo4(projectileThing.getCell() + rotation));
      |                                                                                                                                     ^
In file included from ./engines/dm/movesens.h:32,
                 from engines/dm/movesens.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/movesens.cpp: In member function 'void DM::MovesensMan::processThingAdditionOrRemoval(uint16, uint16, DM::Thing, bool, bool)':
engines/dm/movesens.cpp:747:65: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  747 |                         curThing = dungeon.getNextThing(curThing);
      |                                                                 ^
In file included from ./engines/dm/movesens.h:32,
                 from engines/dm/movesens.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/movesens.cpp:756:65: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  756 |                         curThing = dungeon.getNextThing(curThing);
      |                                                                 ^
In file included from ./engines/dm/movesens.h:32,
                 from engines/dm/movesens.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/movesens.cpp:762:63: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  762 |         for (curThing = dungeon.getSquareFirstThing(mapX, mapY); curThing != _vm->_thingEndOfList; curThing = dungeon.getNextThing(curThing)) {
      |                                                               ^
In file included from ./engines/dm/movesens.h:32,
                 from engines/dm/movesens.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/movesens.cpp:762:140: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  762 |         for (curThing = dungeon.getSquareFirstThing(mapX, mapY); curThing != _vm->_thingEndOfList; curThing = dungeon.getNextThing(curThing)) {
      |                                                                                                                                            ^
In file included from ./engines/dm/movesens.h:32,
                 from engines/dm/movesens.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/movesens.cpp: In member function 'bool DM::MovesensMan::isObjectInPartyPossession(int16)':
engines/dm/movesens.cpp:882:65: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  882 |                                         curThing = *curSlotThing++;
      |                                                                 ^~
In file included from ./engines/dm/movesens.h:32,
                 from engines/dm/movesens.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/movesens.cpp:885:71: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  885 |                                         curThing = _vm->_championMan->_leaderHandObject;
      |                                                                       ^~~~~~~~~~~~~~~~~
In file included from ./engines/dm/movesens.h:32,
                 from engines/dm/movesens.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/movesens.cpp:894:71: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  894 |                                         curThing = container->getSlot();
      |                                                                       ^
In file included from ./engines/dm/movesens.h:32,
                 from engines/dm/movesens.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/movesens.cpp:899:89: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  899 |                                                 curThing = dungeon.getNextThing(curThing);
      |                                                                                         ^
In file included from ./engines/dm/movesens.h:32,
                 from engines/dm/movesens.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/movesens.cpp: In member function 'void DM::MovesensMan::processRotationEffect()':
engines/dm/movesens.cpp:977:89: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  977 |                                 firstSensorThing = dungeon.getNextThing(firstSensorThing);
      |                                                                                         ^
In file included from ./engines/dm/movesens.h:32,
                 from engines/dm/movesens.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/movesens.cpp:984:87: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  984 |                                 lastSensorThing = dungeon.getNextThing(lastSensorThing);
      |                                                                                       ^
In file included from ./engines/dm/movesens.h:32,
                 from engines/dm/movesens.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/movesens.cpp:990:79: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  990 |                         lastSensorThing = dungeon.getNextThing(lastSensorThing);
      |                                                                               ^
In file included from ./engines/dm/movesens.h:32,
                 from engines/dm/movesens.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/movesens.cpp:994:87: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  994 |                                 lastSensorThing = dungeon.getNextThing(lastSensorThing);
      |                                                                                       ^
In file included from ./engines/dm/movesens.h:32,
                 from engines/dm/movesens.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/movesens.cpp: In member function 'DM::Thing DM::MovesensMan::getObjectOfTypeInCell(int16, int16, int16, int16)':
engines/dm/movesens.cpp:1024:57: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1024 |                 curThing = dungeon.getNextThing(curThing);
      |                                                         ^
In file included from ./engines/dm/movesens.h:32,
                 from engines/dm/movesens.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
    C++      engines/dm/eventman.o
In file included from ./engines/dm/eventman.h:37,
                 from engines/dm/eventman.cpp:32:
./engines/dm/champion.h: In member function 'void DM::Champion::setSlot(DM::ChampionSlot, DM::Thing)':
./engines/dm/champion.h:438:69: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  438 |         void setSlot(ChampionSlot slot, Thing val) { _slots[slot] = val; }
      |                                                                     ^~~
In file included from ./engines/dm/eventman.h:35,
                 from engines/dm/eventman.cpp:32:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/eventman.cpp:33:
./engines/dm/dungeonman.h: In member function 'void DM::Sensor::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:387:55: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  387 |         void setNextThing(Thing thing) { _nextThing = thing; }
      |                                                       ^~~~~
In file included from ./engines/dm/eventman.h:35,
                 from engines/dm/eventman.cpp:32:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/eventman.cpp:33:
./engines/dm/dungeonman.h: In member function 'void DM::Weapon::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:434:53: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  434 |         void setNextThing(Thing val) { _nextThing = val;  }
      |                                                     ^~~
In file included from ./engines/dm/eventman.h:35,
                 from engines/dm/eventman.cpp:32:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/eventman.cpp:33:
./engines/dm/dungeonman.h: In member function 'void DM::Scroll::set(DM::Thing, uint16)':
./engines/dm/dungeonman.h:464:30: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  464 |                 _nextThing = next;
      |                              ^~~~
In file included from ./engines/dm/eventman.h:35,
                 from engines/dm/eventman.cpp:32:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/eventman.cpp:33:
./engines/dm/dungeonman.h: In member function 'void DM::Junk::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:518:55: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  518 |         void setNextThing(Thing thing) { _nextThing = thing; }
      |                                                       ^~~~~
In file included from ./engines/dm/eventman.h:35,
                 from engines/dm/eventman.cpp:32:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/eventman.cpp:33:
./engines/dm/dungeonman.h: In member function 'DM::Thing DM::Explosion::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:540:61: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  540 |         Thing setNextThing(Thing val) { return _nextThing = val; }
      |                                                             ^~~
In file included from ./engines/dm/eventman.h:35,
                 from engines/dm/eventman.cpp:32:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/eventman.cpp: In member function 'void DM::EventManager::commandProcessCommands160To162ClickInResurrectReincarnatePanel(DM::CommandType)':
engines/dm/eventman.cpp:1292:50: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 1292 |                 thing = dunMan.getNextThing(thing);
      |                                                  ^
In file included from ./engines/dm/eventman.h:35,
                 from engines/dm/eventman.cpp:32:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
    C++      engines/dm/sounds.o
In file included from engines/dm/sounds.cpp:36:
./engines/dm/dungeonman.h: In member function 'void DM::Sensor::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:387:55: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  387 |         void setNextThing(Thing thing) { _nextThing = thing; }
      |                                                       ^~~~~
In file included from engines/dm/sounds.cpp:33:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/sounds.cpp:36:
./engines/dm/dungeonman.h: In member function 'void DM::Weapon::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:434:53: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  434 |         void setNextThing(Thing val) { _nextThing = val;  }
      |                                                     ^~~
In file included from engines/dm/sounds.cpp:33:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/sounds.cpp:36:
./engines/dm/dungeonman.h: In member function 'void DM::Scroll::set(DM::Thing, uint16)':
./engines/dm/dungeonman.h:464:30: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  464 |                 _nextThing = next;
      |                              ^~~~
In file included from engines/dm/sounds.cpp:33:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/sounds.cpp:36:
./engines/dm/dungeonman.h: In member function 'void DM::Junk::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:518:55: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  518 |         void setNextThing(Thing thing) { _nextThing = thing; }
      |                                                       ^~~~~
In file included from engines/dm/sounds.cpp:33:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/sounds.cpp:36:
./engines/dm/dungeonman.h: In member function 'DM::Thing DM::Explosion::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:540:61: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  540 |         Thing setNextThing(Thing val) { return _nextThing = val; }
      |                                                             ^~~
In file included from engines/dm/sounds.cpp:33:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
    C++      engines/dm/projexpl.o
In file included from engines/dm/projexpl.cpp:29:
./engines/dm/dungeonman.h: In member function 'void DM::Sensor::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:387:55: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  387 |         void setNextThing(Thing thing) { _nextThing = thing; }
      |                                                       ^~~~~
In file included from ./engines/dm/projexpl.h:30,
                 from engines/dm/projexpl.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/projexpl.cpp:29:
./engines/dm/dungeonman.h: In member function 'void DM::Weapon::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:434:53: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  434 |         void setNextThing(Thing val) { _nextThing = val;  }
      |                                                     ^~~
In file included from ./engines/dm/projexpl.h:30,
                 from engines/dm/projexpl.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/projexpl.cpp:29:
./engines/dm/dungeonman.h: In member function 'void DM::Scroll::set(DM::Thing, uint16)':
./engines/dm/dungeonman.h:464:30: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  464 |                 _nextThing = next;
      |                              ^~~~
In file included from ./engines/dm/projexpl.h:30,
                 from engines/dm/projexpl.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/projexpl.cpp:29:
./engines/dm/dungeonman.h: In member function 'void DM::Junk::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:518:55: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  518 |         void setNextThing(Thing thing) { _nextThing = thing; }
      |                                                       ^~~~~
In file included from ./engines/dm/projexpl.h:30,
                 from engines/dm/projexpl.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/projexpl.cpp:29:
./engines/dm/dungeonman.h: In member function 'DM::Thing DM::Explosion::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:540:61: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  540 |         Thing setNextThing(Thing val) { return _nextThing = val; }
      |                                                             ^~~
In file included from ./engines/dm/projexpl.h:30,
                 from engines/dm/projexpl.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from ./engines/dm/objectman.h:32,
                 from engines/dm/projexpl.cpp:32:
./engines/dm/champion.h: In member function 'void DM::Champion::setSlot(DM::ChampionSlot, DM::Thing)':
./engines/dm/champion.h:438:69: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  438 |         void setSlot(ChampionSlot slot, Thing val) { _slots[slot] = val; }
      |                                                                     ^~~
In file included from ./engines/dm/projexpl.h:30,
                 from engines/dm/projexpl.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/projexpl.cpp: In member function 'void DM::ProjExpl::createProjectile(DM::Thing, int16, int16, uint16, DM::Direction, byte, byte, byte)':
engines/dm/projexpl.cpp:53:70: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
   53 |         projectileThing = _vm->thingWithNewCell(projectileThing, cell);
      |                                                                      ^
In file included from ./engines/dm/projexpl.h:30,
                 from engines/dm/projexpl.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/projexpl.cpp:55:32: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
   55 |         projectilePtr->_slot = thing;
      |                                ^~~~~
In file included from ./engines/dm/projexpl.h:30,
                 from engines/dm/projexpl.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/projexpl.cpp: In member function 'bool DM::ProjExpl::hasProjectileImpactOccurred(int16, int16, int16, int16, DM::Thing)':
engines/dm/projexpl.cpp:88:110: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
   88 |                         explosionThing = (potionType == kDMPotionTypeVen) ? _vm->_thingExplPoisonCloud: _vm->_thingExplFireBall;
      |                                                                                                              ^~~~~~~~~~~~~~~~~~
In file included from ./engines/dm/projexpl.h:30,
                 from engines/dm/projexpl.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/projexpl.cpp:206:53: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  206 |                         projectileAssociatedThing = explosionThing;
      |                                                     ^~~~~~~~~~~~~~
In file included from ./engines/dm/projexpl.h:30,
                 from engines/dm/projexpl.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/projexpl.cpp:227:43: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  227 |                 potion->_nextThing = _vm->_thingNone;
      |                                           ^~~~~~~~~~
In file included from ./engines/dm/projexpl.h:30,
                 from engines/dm/projexpl.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/projexpl.cpp:228:46: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  228 |                 projectileThingData->_slot = explosionThing;
      |                                              ^~~~~~~~~~~~~~
In file included from ./engines/dm/projexpl.h:30,
                 from engines/dm/projexpl.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/projexpl.cpp: In member function 'void DM::ProjExpl::createExplosion(DM::Thing, uint16, uint16, uint16, uint16)':
engines/dm/projexpl.cpp:303:70: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  303 |                 unusedThing = _vm->thingWithNewCell(unusedThing, cell);
      |                                                                      ^
In file included from ./engines/dm/projexpl.h:30,
                 from engines/dm/projexpl.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/projexpl.cpp:333:107: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  333 |                                 unusedThing = _vm->_groupMan->groupGetThing(projectileMapX, projectileMapY);
      |                                                                                                           ^
In file included from ./engines/dm/projexpl.h:30,
                 from engines/dm/projexpl.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/projexpl.cpp: In member function 'int16 DM::ProjExpl::projectileGetImpactCount(int16, int16, int16, int16)':
engines/dm/projexpl.cpp:364:84: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  364 |                         curThing = _vm->_dungeonMan->getSquareFirstThing(mapX, mapY);
      |                                                                                    ^
In file included from ./engines/dm/projexpl.h:30,
                 from engines/dm/projexpl.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/projexpl.cpp:366:75: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  366 |                         curThing = _vm->_dungeonMan->getNextThing(curThing);
      |                                                                           ^
In file included from ./engines/dm/projexpl.h:30,
                 from engines/dm/projexpl.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/projexpl.cpp: In member function 'void DM::ProjExpl::projectileDelete(DM::Thing, DM::Thing*, int16, int16)':
engines/dm/projexpl.cpp:384:54: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  384 |                                 *genericThing = _vm->_thingEndOfList;
      |                                                      ^~~~~~~~~~~~~~~
In file included from ./engines/dm/projexpl.h:30,
                 from engines/dm/projexpl.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/projexpl.cpp:385:46: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  385 |                                 *groupSlot = projectileSlotThing;
      |                                              ^~~~~~~~~~~~~~~~~~~
In file included from ./engines/dm/projexpl.h:30,
                 from engines/dm/projexpl.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/projexpl.cpp:391:39: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  391 |         projectile->_nextThing = _vm->_thingNone;
      |                                       ^~~~~~~~~~
In file included from ./engines/dm/projexpl.h:30,
                 from engines/dm/projexpl.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/projexpl.cpp: In member function 'void DM::ProjExpl::processEvents48To49(DM::TimelineEvent*)':
engines/dm/projexpl.cpp:417:88: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  417 |                         _vm->_dungeonMan->unlinkThingFromList(projectileThingNewCell = projectileThing, Thing(0), destinationMapX, destinationMapY);
      |                                                                                        ^~~~~~~~~~~~~~~
In file included from ./engines/dm/projexpl.h:30,
                 from engines/dm/projexpl.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/projexpl.cpp:428:59: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  428 |         projectileThingNewCell = Thing(curEvent->_Bu._slot);
      |                                                           ^
In file included from ./engines/dm/projexpl.h:30,
                 from engines/dm/projexpl.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/projexpl.cpp:452:107: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  452 |         projectileThingNewCell = _vm->thingWithNewCell(projectileThingNewCell, projectileNewCell &= 0x0003);
      |                                                                                                           ^
In file included from ./engines/dm/projexpl.h:30,
                 from engines/dm/projexpl.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/projexpl.cpp:458:119: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  458 |                 projectileThingNewCell = _vm->thingWithNewCell(projectileThingNewCell, _vm->_moveSens->_moveResultCell);
      |                                                                                                                       ^
In file included from ./engines/dm/projexpl.h:30,
                 from engines/dm/projexpl.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
    C++      engines/draci/console.o
    C++      engines/dm/text.o
    C++      engines/draci/barchive.o
    C++      engines/draci/font.o
    C++      engines/draci/mouse.o
    C++      engines/draci/animation.o
    C++      engines/draci/detection.o
    C++      engines/draci/music.o
    C++      engines/draci/saveload.o
    C++      engines/draci/draci.o
    C++      engines/dm/timeline.o
In file included from engines/dm/timeline.cpp:29:
./engines/dm/dungeonman.h: In member function 'void DM::Sensor::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:387:55: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  387 |         void setNextThing(Thing thing) { _nextThing = thing; }
      |                                                       ^~~~~
In file included from ./engines/dm/timeline.h:31,
                 from engines/dm/timeline.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/timeline.cpp:29:
./engines/dm/dungeonman.h: In member function 'void DM::Weapon::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:434:53: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  434 |         void setNextThing(Thing val) { _nextThing = val;  }
      |                                                     ^~~
In file included from ./engines/dm/timeline.h:31,
                 from engines/dm/timeline.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/timeline.cpp:29:
./engines/dm/dungeonman.h: In member function 'void DM::Scroll::set(DM::Thing, uint16)':
./engines/dm/dungeonman.h:464:30: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  464 |                 _nextThing = next;
      |                              ^~~~
In file included from ./engines/dm/timeline.h:31,
                 from engines/dm/timeline.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/timeline.cpp:29:
./engines/dm/dungeonman.h: In member function 'void DM::Junk::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:518:55: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  518 |         void setNextThing(Thing thing) { _nextThing = thing; }
      |                                                       ^~~~~
In file included from ./engines/dm/timeline.h:31,
                 from engines/dm/timeline.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/timeline.cpp:29:
./engines/dm/dungeonman.h: In member function 'DM::Thing DM::Explosion::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:540:61: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  540 |         Thing setNextThing(Thing val) { return _nextThing = val; }
      |                                                             ^~~
In file included from ./engines/dm/timeline.h:31,
                 from engines/dm/timeline.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/timeline.cpp:30:
./engines/dm/champion.h: In member function 'void DM::Champion::setSlot(DM::ChampionSlot, DM::Thing)':
./engines/dm/champion.h:438:69: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  438 |         void setSlot(ChampionSlot slot, Thing val) { _slots[slot] = val; }
      |                                                                     ^~~
In file included from ./engines/dm/timeline.h:31,
                 from engines/dm/timeline.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/timeline.cpp: In member function 'void DM::Timeline::moveTeleporterOrPitSquareThings(uint16, uint16)':
engines/dm/timeline.cpp:522:69: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  522 |         curThing = _vm->_dungeonMan->getSquareFirstObject(mapX, mapY);
      |                                                                     ^
In file included from ./engines/dm/timeline.h:31,
                 from engines/dm/timeline.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/timeline.cpp:529:67: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  529 |                 curThing = _vm->_dungeonMan->getNextThing(curThing);
      |                                                                   ^
In file included from ./engines/dm/timeline.h:31,
                 from engines/dm/timeline.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/timeline.cpp:531:20: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  531 |         curThing = nextThing;
      |                    ^~~~~~~~~
In file included from ./engines/dm/timeline.h:31,
                 from engines/dm/timeline.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/timeline.cpp:534:68: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  534 |                 nextThing = _vm->_dungeonMan->getNextThing(curThing);
      |                                                                    ^
In file included from ./engines/dm/timeline.h:31,
                 from engines/dm/timeline.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/timeline.cpp:559:28: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  559 |                 curThing = nextThing;
      |                            ^~~~~~~~~
In file included from ./engines/dm/timeline.h:31,
                 from engines/dm/timeline.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/timeline.cpp: In member function 'void DM::Timeline::processEventSquareWall(DM::TimelineEvent*)':
engines/dm/timeline.cpp:639:67: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  639 |                 curThing = _vm->_dungeonMan->getNextThing(curThing);
      |                                                                   ^
In file included from ./engines/dm/timeline.h:31,
                 from engines/dm/timeline.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/timeline.cpp: In member function 'void DM::Timeline::triggerProjectileLauncher(DM::Sensor*, DM::TimelineEvent*)':
engines/dm/timeline.cpp:660:139: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  660 |                 firstProjectileAssociatedThing = secondProjectileAssociatedThing = Thing(sensorData + _vm->_thingFirstExplosion.toUint16());
      |                                                                                                                                           ^
In file included from ./engines/dm/timeline.h:31,
                 from engines/dm/timeline.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/timeline.cpp:660:139: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  660 |                 firstProjectileAssociatedThing = secondProjectileAssociatedThing = Thing(sensorData + _vm->_thingFirstExplosion.toUint16());
      |                                                                                                                                           ^
In file included from ./engines/dm/timeline.h:31,
                 from engines/dm/timeline.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/timeline.cpp:662:98: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  662 |                 firstProjectileAssociatedThing = _vm->_dungeonMan->getSquareFirstThing(mapX, mapY);
      |                                                                                                  ^
In file included from ./engines/dm/timeline.h:31,
                 from engines/dm/timeline.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/timeline.cpp:667:119: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  667 |                         firstProjectileAssociatedThing = _vm->_dungeonMan->getNextThing(firstProjectileAssociatedThing);
      |                                                                                                                       ^
In file included from ./engines/dm/timeline.h:31,
                 from engines/dm/timeline.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/timeline.cpp:674:107: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  674 |                         secondProjectileAssociatedThing = _vm->_dungeonMan->getSquareFirstThing(mapX, mapY);
      |                                                                                                           ^
In file included from ./engines/dm/timeline.h:31,
                 from engines/dm/timeline.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/timeline.cpp:679:129: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  679 |                                 secondProjectileAssociatedThing = _vm->_dungeonMan->getNextThing(secondProjectileAssociatedThing);
      |                                                                                                                                 ^
In file included from ./engines/dm/timeline.h:31,
                 from engines/dm/timeline.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/timeline.cpp:687:113: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  687 |                 firstProjectileAssociatedThing = _vm->_dungeonMan->getObjForProjectileLaucherOrObjGen(sensorData);
      |                                                                                                                 ^
In file included from ./engines/dm/timeline.h:31,
                 from engines/dm/timeline.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/timeline.cpp:691:114: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  691 |                 secondProjectileAssociatedThing = _vm->_dungeonMan->getObjForProjectileLaucherOrObjGen(sensorData);
      |                                                                                                                  ^
In file included from ./engines/dm/timeline.h:31,
                 from engines/dm/timeline.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/timeline.cpp: In member function 'void DM::Timeline::processEventSquareCorridor(DM::TimelineEvent*)':
engines/dm/timeline.cpp:765:67: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  765 |                 curThing = _vm->_dungeonMan->getNextThing(curThing);
      |                                                                   ^
In file included from ./engines/dm/timeline.h:31,
                 from engines/dm/timeline.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/timeline.cpp: In member function 'void DM::Timeline::procesEventEnableGroupGenerator(DM::TimelineEvent*)':
engines/dm/timeline.cpp:820:67: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  820 |                 curThing = _vm->_dungeonMan->getNextThing(curThing);
      |                                                                   ^
In file included from ./engines/dm/timeline.h:31,
                 from engines/dm/timeline.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/timeline.cpp: In member function 'void DM::Timeline::processEventViAltarRebirth(DM::TimelineEvent*)':
engines/dm/timeline.cpp:953:75: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  953 |                         curThing = _vm->_dungeonMan->getNextThing(curThing);
      |                                                                           ^
In file included from ./engines/dm/timeline.h:31,
                 from engines/dm/timeline.cpp:28:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
    C++      engines/draci/screen.o
    C++      engines/draci/surface.o
    C++      engines/draci/sprite.o
    C++      engines/draci/sound.o
    C++      engines/dragons/actorresource.o
    C++      engines/draci/script.o
    C++      engines/dm/gfx.o
In file included from engines/dm/gfx.cpp:35:
./engines/dm/dungeonman.h: In member function 'void DM::Sensor::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:387:55: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  387 |         void setNextThing(Thing thing) { _nextThing = thing; }
      |                                                       ^~~~~
In file included from ./engines/dm/gfx.h:36,
                 from engines/dm/gfx.cpp:34:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/gfx.cpp:35:
./engines/dm/dungeonman.h: In member function 'void DM::Weapon::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:434:53: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  434 |         void setNextThing(Thing val) { _nextThing = val;  }
      |                                                     ^~~
In file included from ./engines/dm/gfx.h:36,
                 from engines/dm/gfx.cpp:34:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/gfx.cpp:35:
./engines/dm/dungeonman.h: In member function 'void DM::Scroll::set(DM::Thing, uint16)':
./engines/dm/dungeonman.h:464:30: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  464 |                 _nextThing = next;
      |                              ^~~~
In file included from ./engines/dm/gfx.h:36,
                 from engines/dm/gfx.cpp:34:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/gfx.cpp:35:
./engines/dm/dungeonman.h: In member function 'void DM::Junk::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:518:55: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  518 |         void setNextThing(Thing thing) { _nextThing = thing; }
      |                                                       ^~~~~
In file included from ./engines/dm/gfx.h:36,
                 from engines/dm/gfx.cpp:34:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/gfx.cpp:35:
./engines/dm/dungeonman.h: In member function 'DM::Thing DM::Explosion::setNextThing(DM::Thing)':
./engines/dm/dungeonman.h:540:61: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  540 |         Thing setNextThing(Thing val) { return _nextThing = val; }
      |                                                             ^~~
In file included from ./engines/dm/gfx.h:36,
                 from engines/dm/gfx.cpp:34:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
In file included from engines/dm/gfx.cpp:38:
./engines/dm/champion.h: In member function 'void DM::Champion::setSlot(DM::ChampionSlot, DM::Thing)':
./engines/dm/champion.h:438:69: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  438 |         void setSlot(ChampionSlot slot, Thing val) { _slots[slot] = val; }
      |                                                                     ^~~
In file included from ./engines/dm/gfx.h:36,
                 from engines/dm/gfx.cpp:34:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/gfx.cpp: In constructor 'DM::DisplayMan::DisplayMan(DM::DMEngine*)':
engines/dm/gfx.cpp:119:34: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
  119 |         _inscriptionThing = _vm->_thingNone;
      |                                  ^~~~~~~~~~
In file included from ./engines/dm/gfx.h:36,
                 from engines/dm/gfx.cpp:34:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/gfx.cpp: In member function 'void DM::DisplayMan::drawObjectsCreaturesProjectilesExplosions(DM::Thing, DM::Direction, int16, int16, int16, DM::CellOrder)':
engines/dm/gfx.cpp:3196:28: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 3196 |         firstThingToDraw = thingParam;
      |                            ^~~~~~~~~~
In file included from ./engines/dm/gfx.h:36,
                 from engines/dm/gfx.cpp:34:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/gfx.cpp:3223:38: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 3223 |                         thingParam = firstThingToDraw;
      |                                      ^~~~~~~~~~~~~~~~
In file included from ./engines/dm/gfx.h:36,
                 from engines/dm/gfx.cpp:34:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/gfx.cpp:3232:46: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 3232 |                                 groupThing = thingParam;
      |                                              ^~~~~~~~~~
In file included from ./engines/dm/gfx.h:36,
                 from engines/dm/gfx.cpp:34:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/gfx.cpp:3354:81: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 3354 |                                         dungeon._pileTopObject[AL_2_viewCell] = thingParam; /* The object is at the top of the pile */
      |                                                                                 ^~~~~~~~~~
In file included from ./engines/dm/gfx.h:36,
                 from engines/dm/gfx.cpp:34:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/gfx.cpp:3360:71: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 3360 |                 } while ((thingParam = dungeon.getNextThing(thingParam)) != _vm->_thingEndOfList);
      |                                                                       ^
In file included from ./engines/dm/gfx.h:36,
                 from engines/dm/gfx.cpp:34:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/gfx.cpp:3622:30: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 3622 |                 thingParam = firstThingToDraw; /* Restart processing list of objects from the beginning. The next loop draws only projectile objects among the list */
      |                              ^~~~~~~~~~~~~~~~
In file included from ./engines/dm/gfx.h:36,
                 from engines/dm/gfx.cpp:34:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/gfx.cpp:3741:71: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 3741 |                 } while ((thingParam = dungeon.getNextThing(thingParam)) != _vm->_thingEndOfList);
      |                                                                       ^
In file included from ./engines/dm/gfx.h:36,
                 from engines/dm/gfx.cpp:34:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/gfx.cpp:3753:22: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 3753 |         thingParam = firstThingToDraw; /* Restart processing list of things from the beginning. The next loop draws only explosion things among the list */
      |                      ^~~~~~~~~~~~~~~~
In file included from ./engines/dm/gfx.h:36,
                 from engines/dm/gfx.cpp:34:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
engines/dm/gfx.cpp:3877:63: warning: implicitly-declared 'DM::Thing& DM::Thing::operator=(const DM::Thing&)' is deprecated [-Wdeprecated-copy]
 3877 |         } while ((thingParam = dungeon.getNextThing(thingParam))!= _vm->_thingEndOfList);
      |                                                               ^
In file included from ./engines/dm/gfx.h:36,
                 from engines/dm/gfx.cpp:34:
./engines/dm/dm.h:172:9: note: because 'DM::Thing' has user-provided 'DM::Thing::Thing(const DM::Thing&)'
  172 |         Thing(const Thing &other) { set(other._data); }
      |         ^~~~~
    C++      engines/dragons/bag.o
    C++      engines/draci/game.o
    C++      engines/draci/walking.o
    C++      engines/dragons/actor.o
    C++      engines/dragons/bigfile.o
    C++      engines/dragons/background.o
    C++      engines/dragons/credits.o
    C++      engines/dragons/dragonflg.o
    C++      engines/dragons/cursor.o
    C++      engines/dragons/dragonimg.o
    C++      engines/dragons/dragonini.o
    C++      engines/dragons/dragonobd.o
    C++      engines/dragons/dragonrms.o
    C++      engines/dragons/dragonvar.o
    C++      engines/dragons/cutscene.o
    C++      engines/dragons/font.o
    C++      engines/dragons/midimusicplayer.o
    C++      engines/dragons/detection.o
    C++      engines/dragons/inventory.o
    C++      engines/dragons/saveload.o
    C++      engines/dragons/minigame1.o
engines/dragons/minigame1.cpp: In member function 'void Dragons::Minigame1::run()':
engines/dragons/minigame1.cpp:756:83: warning: 'local_c0' may be used uninitialized [-Wmaybe-uninitialized]
  756 |                                                                         local_16a = *(short *)(local_c0 + (uint)uVar5 * 2 + 5);
      |                                                                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
engines/dragons/minigame1.cpp:87:16: note: 'local_c0' declared here
   87 |         uint32 local_c0 [22];
      |                ^~~~~~~~
engines/dragons/minigame1.cpp:760:83: warning: 'local_c0' may be used uninitialized [-Wmaybe-uninitialized]
  760 |                                                                         local_16a = *(short *)(local_c0 + (uint)uVar5 * 2 + 1);
      |                                                                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
engines/dragons/minigame1.cpp:87:16: note: 'local_c0' declared here
   87 |         uint32 local_c0 [22];
      |                ^~~~~~~~
engines/dragons/minigame1.cpp:765:75: warning: 'local_c0' may be used uninitialized [-Wmaybe-uninitialized]
  765 |                                                                 local_16a = *(short *)(local_c0 + (uint)uVar5 * 2 + 5);
      |                                                                 ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
engines/dragons/minigame1.cpp:87:16: note: 'local_c0' declared here
   87 |         uint32 local_c0 [22];
      |                ^~~~~~~~
    C++      engines/dragons/minigame4.o
    C++      engines/dragons/minigame2.o
    C++      engines/dragons/scene.o
    C++      engines/dragons/minigame3.o
engines/dragons/minigame3.cpp: In member function 'void Dragons::Minigame3::run()':
engines/dragons/minigame3.cpp:361:72: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  361 |                                                 local_56 = local_56 - *(int16 *)&UnkStruct_ARRAY_800931a0[local_50].field_0x14;
      |                                                                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    C++      engines/dragons/minigame5.o
    C++      engines/dragons/sequenceopcodes.o
    C++      engines/dragons/screen.o
    C++      engines/dragons/dragons.o
    C++      engines/dragons/vabsound.o
    C++      engines/dragons/strplayer.o
    C++      engines/dragons/sound.o
    C++      engines/dragons/scriptopcodes.o
    C++      engines/drascula/console.o
    C++      engines/drascula/actors.o
    C++      engines/dragons/talk.o
engines/dragons/talk.cpp: In member function 'bool Dragons::Talk::loadText(uint32, uint16*, uint16)':
engines/dragons/talk.cpp:62:40: warning: '__builtin___sprintf_chk' may write a terminating nul past the end of the destination [-Wformat-overflow=]
   62 |         sprintf(filename, "drag%04d.txt", fileNo);
      |                                        ^
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./common/debug.h:26,
                 from engines/dragons/talk.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 13 and 14 bytes into a destination of size 13
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
    C++      engines/drascula/converse.o
    C++      engines/drascula/interface.o
    C++      engines/dragons/specialopcodes.o
    C++      engines/drascula/palette.o
    C++      engines/drascula/objects.o
    C++      engines/drascula/detection.o
    C++      engines/drascula/graphics.o
    C++      engines/drascula/resource.o
    C++      engines/dreamweb/console.o
    C++      engines/drascula/drascula.o
    C++      engines/drascula/sound.o
    C++      engines/dreamweb/backdrop.o
    C++      engines/drascula/animation.o
    C++      engines/drascula/saveload.o
    C++      engines/dreamweb/mouse.o
    C++      engines/drascula/talk.o
    C++      engines/dreamweb/detection.o
    C++      engines/dreamweb/newplace.o
    C++      engines/dreamweb/keypad.o
    C++      engines/dreamweb/monitor.o
    C++      engines/dreamweb/dreamweb.o
    C++      engines/dreamweb/pathfind.o
    C++      engines/dreamweb/rain.o
    C++      engines/dreamweb/print.o
engines/dreamweb/print.cpp: In member function 'void DreamWeb::DreamWebEngine::printBoth(const DreamWeb::GraphicsFile&, uint16*, uint16, uint8, uint8)':
engines/dreamweb/print.cpp:32:18: warning: 'width' may be used uninitialized [-Wmaybe-uninitialized]
   32 |         multiDump(*x, y, width, height);
      |         ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
engines/dreamweb/print.cpp:30:15: note: 'width' declared here
   30 |         uint8 width, height;
      |               ^~~~~
    C++      engines/dreamweb/sound.o
    C++      engines/dreamweb/object.o
    C++      engines/drascula/rooms.o
    C++      engines/dreamweb/people.o
    C++      engines/dreamweb/talk.o
    C++      engines/dreamweb/sprite.o
    C++      engines/dreamweb/vgafades.o
    C++      engines/dreamweb/titles.o
    C++      engines/dreamweb/vgagrafx.o
    C++      engines/fullpipe/console.o
    C++      engines/dreamweb/saveload.o
    C++      engines/dreamweb/use.o
    C++      engines/fullpipe/detection.o
    C++      engines/fullpipe/floaters.o
    C++      engines/fullpipe/behavior.o
    C++      engines/fullpipe/anihandler.o
    C++      engines/dreamweb/stubs.o
    C++      engines/fullpipe/input.o
    C++      engines/fullpipe/init.o
    C++      engines/fullpipe/fullpipe.o
    C++      engines/fullpipe/interaction.o
    C++      engines/fullpipe/gameloader.o
    C++      engines/fullpipe/lift.o
    C++      engines/fullpipe/inventory.o
    C++      engines/fullpipe/gfx.o
    C++      engines/fullpipe/messagehandlers.o
    C++      engines/fullpipe/ngiarchive.o
    C++      engines/fullpipe/messages.o
    C++      engines/fullpipe/statesaver.o
    C++      engines/fullpipe/sound.o
    C++      engines/fullpipe/stateloader.o
    C++      engines/fullpipe/scenes/sceneIntro.o
    C++      engines/fullpipe/scene.o
    C++      engines/fullpipe/scenes/sceneIntroDemo.o
    C++      engines/fullpipe/modal.o
    C++      engines/fullpipe/scenes.o
    C++      engines/fullpipe/scenes/scene01.o
    C++      engines/fullpipe/scenes/scene02.o
    C++      engines/fullpipe/scenes/scene03.o
    C++      engines/fullpipe/utils.o
    C++      engines/fullpipe/scenes/scene05.o
    C++      engines/fullpipe/scenes/scene07.o
    C++      engines/fullpipe/scenes/scene06.o
    C++      engines/fullpipe/scenes/scene10.o
    C++      engines/fullpipe/scenes/scene08.o
    C++      engines/fullpipe/scenes/scene09.o
    C++      engines/fullpipe/scenes/scene12.o
    C++      engines/fullpipe/scenes/scene04.o
    C++      engines/fullpipe/scenes/scene11.o
    C++      engines/fullpipe/scenes/scene13.o
    C++      engines/fullpipe/statics.o
    C++      engines/fullpipe/scenes/scene15.o
    C++      engines/fullpipe/motion.o
    C++      engines/fullpipe/scenes/scene14.o
    C++      engines/fullpipe/scenes/scene17.o
    C++      engines/fullpipe/scenes/scene21.o
    C++      engines/fullpipe/scenes/scene16.o
    C++      engines/fullpipe/scenes/scene20.o
    C++      engines/fullpipe/scenes/scene24.o
    C++      engines/fullpipe/scenes/scene18and19.o
    C++      engines/fullpipe/scenes/scene22.o
    C++      engines/fullpipe/scenes/scene23.o
    C++      engines/fullpipe/scenes/scene26.o
    C++      engines/fullpipe/scenes/scene25.o
    C++      engines/fullpipe/scenes/scene28.o
    C++      engines/fullpipe/scenes/scene30.o
    C++      engines/fullpipe/scenes/scene31.o
    C++      engines/fullpipe/scenes/scene27.o
    C++      engines/fullpipe/scenes/scene32.o
    C++      engines/fullpipe/scenes/scene36.o
    C++      engines/fullpipe/scenes/scene33.o
    C++      engines/fullpipe/scenes/scene35.o
    C++      engines/fullpipe/scenes/scene34.o
    C++      engines/fullpipe/scenes/scene29.o
    C++      engines/fullpipe/scenes/scene38.o
    C++      engines/fullpipe/scenes/sceneFinal.o
    C++      engines/fullpipe/scenes/sceneDbg.o
    C++      engines/fullpipe/scenes/scene37.o
    C++      engines/glk/debugger.o
    C++      engines/glk/fonts.o
    C++      engines/glk/conf.o
    C++      engines/glk/blorb.o
    C++      engines/glk/pc_speaker.o
    C++      engines/glk/events.o
    C++      engines/glk/raw_decoder.o
    C++      engines/glk/glk.o
    C++      engines/glk/glk_dispa.o
    C++      engines/glk/screen.o
    C++      engines/glk/glk_api.o
    C++      engines/glk/picture.o
    C++      engines/glk/quetzal.o
    C++      engines/glk/selection.o
    C++      engines/glk/sound.o
    C++      engines/glk/detection.o
In file included from ./engines/glk/quest/geas_runner.h:27,
                 from ./engines/glk/quest/quest.h:30,
                 from engines/glk/detection.cpp:49:
./engines/glk/quest/geas_state.h: In member function 'void Glk::Quest::SVarRecord::set(uint, Glk::Quest::String)':
./engines/glk/quest/geas_state.h:85:27: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   85 |                 data[i] = val;
      |                           ^~~
In file included from ./engines/glk/quest/quest.h:29,
                 from engines/glk/detection.cpp:49:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./engines/glk/quest/geas_runner.h:27,
                 from ./engines/glk/quest/quest.h:30,
                 from engines/glk/detection.cpp:49:
./engines/glk/quest/geas_state.h: In member function 'void Glk::Quest::SVarRecord::set(Glk::Quest::String)':
./engines/glk/quest/geas_state.h:92:27: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   92 |                 data[0] = val;
      |                           ^~~
In file included from ./engines/glk/quest/quest.h:29,
                 from engines/glk/detection.cpp:49:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
    C++      engines/glk/time.o
    C++      engines/glk/speech.o
    C++      engines/glk/unicode_gen.o
    C++      engines/glk/utils.o
    C++      engines/glk/unicode.o
    C++      engines/glk/window_pair.o
    C++      engines/glk/window_graphics.o
    C++      engines/glk/adrift/adrift.o
    C++      engines/glk/adrift/scevents.o
    C++      engines/glk/adrift/detection.o
    C++      engines/glk/windows.o
    C++      engines/glk/window_text_grid.o
    C++      engines/glk/streams.o
    C++      engines/glk/adrift/sclocale.o
    C++      engines/glk/window_text_buffer.o
engines/glk/window_text_buffer.cpp: In member function 'void Glk::TextBufferWindow::scrollResize()':
engines/glk/window_text_buffer.cpp:1610:23: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct Glk::Attributes'; use assignment or value-initialization instead [-Wclass-memaccess]
 1610 |                 memset(_lines[i]._attrs, 0, sizeof _lines[i]._attrs);
      |                 ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./engines/glk/window_text_buffer.h:26,
                 from engines/glk/window_text_buffer.cpp:23:
./engines/glk/windows.h:323:8: note: 'struct Glk::Attributes' declared here
  323 | struct Attributes {
      |        ^~~~~~~~~~
    C++      engines/glk/adrift/scexpr.o
    C++      engines/glk/adrift/scdebug.o
    C++      engines/glk/adrift/scgamest.o
    C++      engines/glk/adrift/os_glk.o
In file included from /usr/include/string.h:519,
                 from ./common/scummsys.h:120,
                 from ./engines/glk/adrift/adrift.h:28,
                 from engines/glk/adrift/os_glk.cpp:23:
In function 'char* strncat(char*, const char*, size_t)',
    inlined from 'void Glk::Adrift::gsc_status_safe_strcat(char*, size_t, const char*)' at engines/glk/adrift/os_glk.cpp:901:10,
    inlined from 'void Glk::Adrift::gsc_status_print()' at engines/glk/adrift/os_glk.cpp:926:25,
    inlined from 'void Glk::Adrift::gsc_status_notify()' at engines/glk/adrift/os_glk.cpp:963:19:
/usr/include/bits/string_fortified.h:135:34: warning: 'char* __builtin___strncat_chk(char*, const char*, long unsigned int, long unsigned int)' specified bound depends on the length of the source argument [-Wstringop-overflow=]
  135 |   return __builtin___strncat_chk (__dest, __src, __len,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
  136 |                                   __glibc_objsize (__dest));
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~
engines/glk/adrift/os_glk.cpp: In function 'void Glk::Adrift::gsc_status_notify()':
engines/glk/adrift/os_glk.cpp:898:28: note: length computed here
  898 |         src_length = strlen(src);
      |                      ~~~~~~^~~~~
In file included from /usr/include/string.h:519,
                 from ./common/scummsys.h:120,
                 from ./engines/glk/adrift/adrift.h:28,
                 from engines/glk/adrift/os_glk.cpp:23:
In function 'char* strncat(char*, const char*, size_t)',
    inlined from 'void Glk::Adrift::gsc_status_safe_strcat(char*, size_t, const char*)' at engines/glk/adrift/os_glk.cpp:901:10,
    inlined from 'void Glk::Adrift::gsc_status_print()' at engines/glk/adrift/os_glk.cpp:936:25,
    inlined from 'void Glk::Adrift::gsc_status_notify()' at engines/glk/adrift/os_glk.cpp:963:19:
/usr/include/bits/string_fortified.h:135:34: warning: 'char* __builtin___strncat_chk(char*, const char*, long unsigned int, long unsigned int)' output truncated copying between 1 and 3 bytes from a string of length 3 [-Wstringop-truncation]
  135 |   return __builtin___strncat_chk (__dest, __src, __len,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
  136 |                                   __glibc_objsize (__dest));
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~
    C++      engines/glk/adrift/scmemos.o
    C++      engines/glk/adrift/scinterf.o
    C++      engines/glk/adrift/scnpcs.o
    C++      engines/glk/adrift/scresour.o
    C++      engines/glk/adrift/scobjcts.o
    C++      engines/glk/adrift/screstrs.o
    C++      engines/glk/adrift/scprops.o
    C++      engines/glk/adrift/scprintf.o
    C++      engines/glk/adrift/scparser.o
    C++      engines/glk/adrift/sctaffil.o
    C++      engines/glk/adrift/scutils.o
    C++      engines/glk/adrift/sxfile.o
    C++      engines/glk/adrift/scrunner.o
    C++      engines/glk/adrift/sctasks.o
    C++      engines/glk/adrift/serialization.o
    C++      engines/glk/adrift/sxglob.o
    C++      engines/glk/adrift/sxutils.o
    C++      engines/glk/adrift/scvars.o
    C++      engines/glk/advsys/advsys.o
    C++      engines/glk/advsys/glk_interface.o
    C++      engines/glk/advsys/game.o
    C++      engines/glk/advsys/detection.o
    C++      engines/glk/adrift/sctafpar.o
    C++      engines/glk/agt/agt.o
    C++      engines/glk/agt/agil.o
    C++      engines/glk/agt/auxfile.o
    C++      engines/glk/advsys/vm.o
    C++      engines/glk/agt/agxfile.o
    C++      engines/glk/agt/disassemble.o
    C++      engines/glk/agt/detection.o
    C++      engines/glk/adrift/sclibrar.o
    C++      engines/glk/agt/filename.o
    C++      engines/glk/agt/debugcmd.o
engines/glk/agt/debugcmd.cpp: In function 'void Glk::AGT::var_edit(int)':
engines/glk/agt/debugcmd.cpp:228:73: warning: ' (-1 means it's off)' directive writing 20 bytes into a region of size between 13 and 22 [-Wformat-overflow=]
  228 |                                         else sprintf(sbuff, "[Cnt%d]=%ld (-1 means it's off)",
      |                                                                         ^~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/glk/glk.h:26,
                 from ./engines/glk/glk_api.h:26,
                 from ./engines/glk/agt/config.h:26,
                 from ./engines/glk/agt/agility.h:26,
                 from engines/glk/agt/debugcmd.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 29 and 38 bytes into a destination of size 30
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
    C++      engines/glk/agt/interface.o
engines/glk/agt/interface.cpp: In function 'void Glk::AGT::debugout(const char*)':
engines/glk/agt/interface.cpp:177:39: warning: comparison is always true due to limited range of data type [-Wtype-limits]
  177 |                         } else if (*s >= 0 && *s <= 9) linebuff[lp++] = ' ';
      |                                    ~~~^~~~
engines/glk/agt/interface.cpp: In function 'int Glk::AGT::agt_menu(const char*, int, int, char (*)[50])':
engines/glk/agt/interface.cpp:605:44: warning: '.' directive writing 1 byte into a region of size between 0 and 8 [-Wformat-overflow=]
  605 |                         sprintf(sbuff, "%2d.", j * colheight + i + 1);
      |                                            ^
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/glk/glk.h:26,
                 from ./engines/glk/glk_api.h:26,
                 from ./engines/glk/agt/config.h:26,
                 from ./engines/glk/agt/agility.h:26,
                 from engines/glk/agt/interface.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 4 and 12 bytes into a destination of size 10
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
    C++      engines/glk/agt/agtread.o
    C++      engines/glk/agt/gamedata.o
    C++      engines/glk/agt/exec.o
    C++      engines/glk/agt/metacommand.o
    C++      engines/glk/agt/savegame.o
    C++      engines/glk/agt/vars.o
    C++      engines/glk/agt/object.o
    C++      engines/glk/agt/parser.o
In file included from /usr/include/string.h:519,
                 from ./common/scummsys.h:120,
                 from ./engines/glk/glk.h:26,
                 from ./engines/glk/glk_api.h:26,
                 from ./engines/glk/agt/config.h:26,
                 from ./engines/glk/agt/agility.h:26,
                 from engines/glk/agt/parser.cpp:23:
In function 'char* strncpy(char*, const char*, size_t)',
    inlined from 'void Glk::AGT::save_input()' at engines/glk/agt/parser.cpp:158:10,
    inlined from 'Glk::AGT::rbool Glk::AGT::parse()' at engines/glk/agt/parser.cpp:1402:12:
/usr/include/bits/string_fortified.h:95:34: warning: 'char* __builtin_strncpy(char*, const char*, long unsigned int)' output may be truncated copying 24 bytes from a string of length 4999 [-Wstringop-truncation]
   95 |   return __builtin___strncpy_chk (__dest, __src, __len,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
   96 |                                   __glibc_objsize (__dest));
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~
    C++      engines/glk/alan2/alan_version.o
    C++      engines/glk/agt/util.o
    C++      engines/glk/alan2/alan2.o
engines/glk/alan2/alan2.cpp: In function 'void Glk::Alan2::syncActors(Common::Serializer&)':
engines/glk/alan2/alan2.cpp:129:28: warning: taking address of packed member of 'Glk::Alan2::ActElem' may result in an unaligned pointer value [-Waddress-of-packed-member]
  129 |                 syncVal(s, &acts[i - ACTMIN].loc);
      |                            ^~~~~~~~~~~~~~~~~~~~~
engines/glk/alan2/alan2.cpp:130:28: warning: taking address of packed member of 'Glk::Alan2::ActElem' may result in an unaligned pointer value [-Waddress-of-packed-member]
  130 |                 syncVal(s, &acts[i - ACTMIN].script);
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~
engines/glk/alan2/alan2.cpp:131:28: warning: taking address of packed member of 'Glk::Alan2::ActElem' may result in an unaligned pointer value [-Waddress-of-packed-member]
  131 |                 syncVal(s, &acts[i - ACTMIN].step);
      |                            ^~~~~~~~~~~~~~~~~~~~~~
engines/glk/alan2/alan2.cpp:132:28: warning: taking address of packed member of 'Glk::Alan2::ActElem' may result in an unaligned pointer value [-Waddress-of-packed-member]
  132 |                 syncVal(s, &acts[i - ACTMIN].count);
      |                            ^~~~~~~~~~~~~~~~~~~~~~~
In file included from engines/glk/alan2/alan2.cpp:25:
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::AtrElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/alan2.cpp:135:88: note: in expansion of macro 'endOfTable'
  135 |                         for (AtrElem *atr = (AtrElem *)addrTo(acts[i - ACTMIN].atrs); !endOfTable(atr); ++atr)
      |                                                                                        ^~~~~~~~~~
In file included from ./engines/glk/alan2/exe.h:29,
                 from engines/glk/alan2/alan2.cpp:24:
./engines/glk/alan2/types.h:196:8: note: defined here
  196 | struct AtrElem {    /* ATTRIBUTE LIST */
      |        ^~~~~~~
engines/glk/alan2/alan2.cpp:136:44: warning: taking address of packed member of 'Glk::Alan2::AtrElem' may result in an unaligned pointer value [-Waddress-of-packed-member]
  136 |                                 syncVal(s, &atr->val);
      |                                            ^~~~~~~~~
engines/glk/alan2/alan2.cpp: In function 'void Glk::Alan2::syncLocations(Common::Serializer&)':
engines/glk/alan2/alan2.cpp:143:28: warning: taking address of packed member of 'Glk::Alan2::LocElem' may result in an unaligned pointer value [-Waddress-of-packed-member]
  143 |                 syncVal(s, &locs[i - LOCMIN].describe);
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from engines/glk/alan2/alan2.cpp:25:
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::AtrElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/alan2.cpp:145:88: note: in expansion of macro 'endOfTable'
  145 |                         for (AtrElem *atr = (AtrElem *)addrTo(locs[i - LOCMIN].atrs); !endOfTable(atr); atr++)
      |                                                                                        ^~~~~~~~~~
In file included from ./engines/glk/alan2/exe.h:29,
                 from engines/glk/alan2/alan2.cpp:24:
./engines/glk/alan2/types.h:196:8: note: defined here
  196 | struct AtrElem {    /* ATTRIBUTE LIST */
      |        ^~~~~~~
engines/glk/alan2/alan2.cpp:146:44: warning: taking address of packed member of 'Glk::Alan2::AtrElem' may result in an unaligned pointer value [-Waddress-of-packed-member]
  146 |                                 syncVal(s, &atr->val);
      |                                            ^~~~~~~~~
engines/glk/alan2/alan2.cpp: In function 'void Glk::Alan2::syncObjects(Common::Serializer&)':
engines/glk/alan2/alan2.cpp:152:28: warning: taking address of packed member of 'Glk::Alan2::ObjElem' may result in an unaligned pointer value [-Waddress-of-packed-member]
  152 |                 syncVal(s, &objs[i - OBJMIN].loc);
      |                            ^~~~~~~~~~~~~~~~~~~~~
In file included from engines/glk/alan2/alan2.cpp:25:
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::AtrElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/alan2.cpp:154:88: note: in expansion of macro 'endOfTable'
  154 |                         for (AtrElem *atr = (AtrElem *)addrTo(objs[i - OBJMIN].atrs); !endOfTable(atr); atr++)
      |                                                                                        ^~~~~~~~~~
In file included from ./engines/glk/alan2/exe.h:29,
                 from engines/glk/alan2/alan2.cpp:24:
./engines/glk/alan2/types.h:196:8: note: defined here
  196 | struct AtrElem {    /* ATTRIBUTE LIST */
      |        ^~~~~~~
engines/glk/alan2/alan2.cpp:155:44: warning: taking address of packed member of 'Glk::Alan2::AtrElem' may result in an unaligned pointer value [-Waddress-of-packed-member]
  155 |                                 syncVal(s, &atr->val);
      |                                            ^~~~~~~~~
    C++      engines/glk/alan2/args.o
    C++      engines/glk/agt/token.o
    C++      engines/glk/agt/runverb.o
    C++      engines/glk/alan2/detection.o
    C++      engines/glk/alan2/decode.o
    C++      engines/glk/alan2/debug.o
In file included from engines/glk/alan2/debug.cpp:29:
engines/glk/alan2/debug.cpp: In function 'void Glk::Alan2::showatrs(Glk::Alan2::Aword)':
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::AtrElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/debug.cpp:43:48: note: in expansion of macro 'endOfTable'
   43 |         for (at = (AtrElem *) addrTo(atradr); !endOfTable(at); at++) {
      |                                                ^~~~~~~~~~
In file included from engines/glk/alan2/debug.cpp:23:
./engines/glk/alan2/types.h:196:8: note: defined here
  196 | struct AtrElem {    /* ATTRIBUTE LIST */
      |        ^~~~~~~
    C++      engines/glk/alan2/params.o
    C++      engines/glk/alan2/glkio.o
    C++      engines/glk/agt/os_glk.o
    C++      engines/glk/alan2/stack.o
    C++      engines/glk/alan2/reverse.o
In file included from engines/glk/alan2/reverse.cpp:24:
engines/glk/alan2/reverse.cpp: In function 'void Glk::Alan2::reverseMsgs(Glk::Alan2::Aword)':
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::MsgElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:81:26: note: in expansion of macro 'endOfTable'
   81 |         if (adr != 0 && !endOfTable(e)) {
      |                          ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:270:8: note: defined here
  270 | struct MsgElem {    /* MESSAGE TABLE */
      |        ^~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::MsgElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:83:25: note: in expansion of macro 'endOfTable'
   83 |                 while (!endOfTable(e)) {
      |                         ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:270:8: note: defined here
  270 | struct MsgElem {    /* MESSAGE TABLE */
      |        ^~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
engines/glk/alan2/reverse.cpp: In function 'void Glk::Alan2::reverseWrds(Glk::Alan2::Aword)':
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::WrdElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:93:26: note: in expansion of macro 'endOfTable'
   93 |         if (adr != 0 && !endOfTable(e)) {
      |                          ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:100:8: note: defined here
  100 | struct WrdElem {    /* Dictionary */
      |        ^~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::WrdElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:95:25: note: in expansion of macro 'endOfTable'
   95 |                 while (!endOfTable(e)) {
      |                         ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:100:8: note: defined here
  100 | struct WrdElem {    /* Dictionary */
      |        ^~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
engines/glk/alan2/reverse.cpp: In function 'void Glk::Alan2::reverseChks(Glk::Alan2::Aword)':
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::ChkElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:108:26: note: in expansion of macro 'endOfTable'
  108 |         if (adr != 0 && !endOfTable(e)) {
      |                          ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:152:8: note: defined here
  152 | struct ChkElem {    /* CHECK TABLE */
      |        ^~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::ChkElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:110:25: note: in expansion of macro 'endOfTable'
  110 |                 while (!endOfTable(e)) {
      |                         ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:152:8: note: defined here
  152 | struct ChkElem {    /* CHECK TABLE */
      |        ^~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
engines/glk/alan2/reverse.cpp: In function 'void Glk::Alan2::reverseAlts(Glk::Alan2::Aword)':
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::AltElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:121:26: note: in expansion of macro 'endOfTable'
  121 |         if (adr != 0 && !endOfTable(e) && !e->done) {
      |                          ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:188:8: note: defined here
  188 | struct AltElem {    /* VERB ALTERNATIVE TABLE */
      |        ^~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::AltElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:124:25: note: in expansion of macro 'endOfTable'
  124 |                 while (!endOfTable(e)) {
      |                         ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:188:8: note: defined here
  188 | struct AltElem {    /* VERB ALTERNATIVE TABLE */
      |        ^~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
engines/glk/alan2/reverse.cpp: In function 'void Glk::Alan2::reverseVrbs(Glk::Alan2::Aword)':
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::VrbElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:135:26: note: in expansion of macro 'endOfTable'
  135 |         if (adr != 0 && !endOfTable(e)) {
      |                          ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:157:8: note: defined here
  157 | struct VrbElem {    /* VERB TABLE */
      |        ^~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::VrbElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:137:25: note: in expansion of macro 'endOfTable'
  137 |                 while (!endOfTable(e)) {
      |                         ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:157:8: note: defined here
  157 | struct VrbElem {    /* VERB TABLE */
      |        ^~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
engines/glk/alan2/reverse.cpp: In function 'void Glk::Alan2::reverseSteps(Glk::Alan2::Aword)':
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::StepElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:147:26: note: in expansion of macro 'endOfTable'
  147 |         if (adr != 0 && !endOfTable(e)) {
      |                          ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:128:8: note: defined here
  128 | struct StepElem {   /* STEP TABLE */
      |        ^~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::StepElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:149:25: note: in expansion of macro 'endOfTable'
  149 |                 while (!endOfTable(e)) {
      |                         ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:128:8: note: defined here
  128 | struct StepElem {   /* STEP TABLE */
      |        ^~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
engines/glk/alan2/reverse.cpp: In function 'void Glk::Alan2::reverseScrs(Glk::Alan2::Aword)':
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::ScrElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:160:26: note: in expansion of macro 'endOfTable'
  160 |         if (adr != 0 && !endOfTable(e)) {
      |                          ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:122:8: note: defined here
  122 | struct ScrElem {    /* SCRIPT TABLE */
      |        ^~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::ScrElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:162:25: note: in expansion of macro 'endOfTable'
  162 |                 while (!endOfTable(e)) {
      |                         ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:122:8: note: defined here
  122 | struct ScrElem {    /* SCRIPT TABLE */
      |        ^~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
engines/glk/alan2/reverse.cpp: In function 'void Glk::Alan2::reverseActs(Glk::Alan2::Aword)':
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::ActElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:173:26: note: in expansion of macro 'endOfTable'
  173 |         if (adr != 0 && !endOfTable(e)) {
      |                          ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:108:8: note: defined here
  108 | struct ActElem {    /* ACTOR TABLE */
      |        ^~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::ActElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:175:25: note: in expansion of macro 'endOfTable'
  175 |                 while (!endOfTable(e)) {
      |                         ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:108:8: note: defined here
  108 | struct ActElem {    /* ACTOR TABLE */
      |        ^~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
engines/glk/alan2/reverse.cpp: In function 'void Glk::Alan2::reverseObjs(Glk::Alan2::Aword, Glk::Alan2::Boolean)':
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::ObjElem25' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:191:34: note: in expansion of macro 'endOfTable'
  191 |                 if (adr != 0 && !endOfTable(e25)) {
      |                                  ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:201:8: note: defined here
  201 | struct ObjElem25 {  /* OBJECT TABLE of 2.5 format*/
      |        ^~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::ObjElem25' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:193:33: note: in expansion of macro 'endOfTable'
  193 |                         while (!endOfTable(e25)) {
      |                                 ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:201:8: note: defined here
  201 | struct ObjElem25 {  /* OBJECT TABLE of 2.5 format*/
      |        ^~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::ObjElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:202:34: note: in expansion of macro 'endOfTable'
  202 |                 if (adr != 0 && !endOfTable(e)) {
      |                                  ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:211:8: note: defined here
  211 | struct ObjElem {    /* OBJECT TABLE */
      |        ^~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::ObjElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:204:33: note: in expansion of macro 'endOfTable'
  204 |                         while (!endOfTable(e)) {
      |                                 ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:211:8: note: defined here
  211 | struct ObjElem {    /* OBJECT TABLE */
      |        ^~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
engines/glk/alan2/reverse.cpp: In function 'void Glk::Alan2::reverseExts(Glk::Alan2::Aword)':
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::ExtElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:219:26: note: in expansion of macro 'endOfTable'
  219 |         if (adr != 0 && !endOfTable(e)) {
      |                          ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:144:8: note: defined here
  144 | struct ExtElem {    /* EXIT TABLE structure */
      |        ^~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::ExtElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:221:25: note: in expansion of macro 'endOfTable'
  221 |                 while (!endOfTable(e)) {
      |                         ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:144:8: note: defined here
  144 | struct ExtElem {    /* EXIT TABLE structure */
      |        ^~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
engines/glk/alan2/reverse.cpp: In function 'void Glk::Alan2::reverseLocs(Glk::Alan2::Aword)':
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::LocElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:234:26: note: in expansion of macro 'endOfTable'
  234 |         if (adr != 0 && !endOfTable(e)) {
      |                          ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:134:8: note: defined here
  134 | struct LocElem {    /* LOCATION TABLE */
      |        ^~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::LocElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:236:25: note: in expansion of macro 'endOfTable'
  236 |                 while (!endOfTable(e)) {
      |                         ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:134:8: note: defined here
  134 | struct LocElem {    /* LOCATION TABLE */
      |        ^~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
engines/glk/alan2/reverse.cpp: In function 'void Glk::Alan2::reverseClas(Glk::Alan2::Aword)':
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::ClaElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:251:26: note: in expansion of macro 'endOfTable'
  251 |         if (adr != 0 && !endOfTable(e)) {
      |                          ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:182:8: note: defined here
  182 | struct ClaElem {    /* CLASS DEFINITION TABLE */
      |        ^~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::ClaElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:253:25: note: in expansion of macro 'endOfTable'
  253 |                 while (!endOfTable(e)) {
      |                         ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:182:8: note: defined here
  182 | struct ClaElem {    /* CLASS DEFINITION TABLE */
      |        ^~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
engines/glk/alan2/reverse.cpp: In function 'void Glk::Alan2::reverseElms(Glk::Alan2::Aword)':
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::ElmElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:265:26: note: in expansion of macro 'endOfTable'
  265 |         if (adr != 0 && !endOfTable(e)) {
      |                          ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:174:8: note: defined here
  174 | struct ElmElem {    /* ELEMENT TABLES */
      |        ^~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::ElmElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:267:25: note: in expansion of macro 'endOfTable'
  267 |                 while (!endOfTable(e)) {
      |                         ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:174:8: note: defined here
  174 | struct ElmElem {    /* ELEMENT TABLES */
      |        ^~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
engines/glk/alan2/reverse.cpp: In function 'void Glk::Alan2::reverseStxs(Glk::Alan2::Aword)':
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::StxElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:278:26: note: in expansion of macro 'endOfTable'
  278 |         if (adr != 0 && !endOfTable(e)) {
      |                          ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:162:8: note: defined here
  162 | struct StxElem {    /* SYNTAX TABLE */
      |        ^~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::StxElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:280:25: note: in expansion of macro 'endOfTable'
  280 |                 while (!endOfTable(e)) {
      |                         ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:162:8: note: defined here
  162 | struct StxElem {    /* SYNTAX TABLE */
      |        ^~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
engines/glk/alan2/reverse.cpp: In function 'void Glk::Alan2::reverseEvts(Glk::Alan2::Aword)':
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::EvtElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:290:26: note: in expansion of macro 'endOfTable'
  290 |         if (adr != 0 && !endOfTable(e)) {
      |                          ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:243:8: note: defined here
  243 | struct EvtElem {    /* EVENT TABLE */
      |        ^~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::EvtElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:292:25: note: in expansion of macro 'endOfTable'
  292 |                 while (!endOfTable(e)) {
      |                         ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:243:8: note: defined here
  243 | struct EvtElem {    /* EVENT TABLE */
      |        ^~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
engines/glk/alan2/reverse.cpp: In function 'void Glk::Alan2::reverseLims(Glk::Alan2::Aword)':
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::LimElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:302:26: note: in expansion of macro 'endOfTable'
  302 |         if (adr != 0 && !endOfTable(e)) {
      |                          ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:231:8: note: defined here
  231 | struct LimElem {    /* LIMIT Type */
      |        ^~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::LimElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:304:25: note: in expansion of macro 'endOfTable'
  304 |                 while (!endOfTable(e)) {
      |                         ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:231:8: note: defined here
  231 | struct LimElem {    /* LIMIT Type */
      |        ^~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
engines/glk/alan2/reverse.cpp: In function 'void Glk::Alan2::reverseCnts(Glk::Alan2::Aword)':
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::CntElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:314:26: note: in expansion of macro 'endOfTable'
  314 |         if (adr != 0 && !endOfTable(e)) {
      |                          ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:223:8: note: defined here
  223 | struct CntElem {    /* CONTAINER TABLE */
      |        ^~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::CntElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:316:25: note: in expansion of macro 'endOfTable'
  316 |                 while (!endOfTable(e)) {
      |                         ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:223:8: note: defined here
  223 | struct CntElem {    /* CONTAINER TABLE */
      |        ^~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
engines/glk/alan2/reverse.cpp: In function 'void Glk::Alan2::reverseRuls(Glk::Alan2::Aword)':
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::RulElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:329:26: note: in expansion of macro 'endOfTable'
  329 |         if (adr != 0 && !endOfTable(e)) {
      |                          ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:237:8: note: defined here
  237 | struct RulElem {    /* RULE TABLE */
      |        ^~~~~~~
In file included from engines/glk/alan2/reverse.cpp:24:
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::RulElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/reverse.cpp:331:25: note: in expansion of macro 'endOfTable'
  331 |                 while (!endOfTable(e)) {
      |                         ^~~~~~~~~~
In file included from engines/glk/alan2/reverse.cpp:23:
./engines/glk/alan2/types.h:237:8: note: defined here
  237 | struct RulElem {    /* RULE TABLE */
      |        ^~~~~~~
    C++      engines/glk/alan2/rules.o
    C++      engines/glk/alan2/inter.o
    C++      engines/glk/alan3/acode.o
    C++      engines/glk/alan2/types.o
engines/glk/alan2/types.cpp: In member function 'void Glk::Alan2::EvtqElem::synchronize(Common::Serializer&)':
engines/glk/alan2/types.cpp:45:20: warning: taking address of packed member of 'Glk::Alan2::EvtqElem' may result in an unaligned pointer value [-Waddress-of-packed-member]
   45 |         syncVal(s, &time);
      |                    ^~~~~
engines/glk/alan2/types.cpp:46:20: warning: taking address of packed member of 'Glk::Alan2::EvtqElem' may result in an unaligned pointer value [-Waddress-of-packed-member]
   46 |         syncVal(s, &event);
      |                    ^~~~~~
engines/glk/alan2/types.cpp:47:20: warning: taking address of packed member of 'Glk::Alan2::EvtqElem' may result in an unaligned pointer value [-Waddress-of-packed-member]
   47 |         syncVal(s, &where);
      |                    ^~~~~~
    C++      engines/glk/alan2/sysdep.o
    C++      engines/glk/alan2/exe.o
In file included from engines/glk/alan2/exe.cpp:28:
engines/glk/alan2/exe.cpp: In function 'void Glk::Alan2::dscract(Glk::Alan2::Aword)':
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::ScrElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/exe.cpp:817:76: note: in expansion of macro 'endOfTable'
  817 |                 for (scr = (ScrElem *) addrTo(acts[act - ACTMIN].scradr); !endOfTable(scr); scr++)
      |                                                                            ^~~~~~~~~~
In file included from engines/glk/alan2/exe.cpp:24:
./engines/glk/alan2/types.h:122:8: note: defined here
  122 | struct ScrElem {    /* SCRIPT TABLE */
      |        ^~~~~~~
In file included from engines/glk/alan2/exe.cpp:28:
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::ScrElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/exe.cpp:820:21: note: in expansion of macro 'endOfTable'
  820 |                 if (endOfTable(scr)) scr = NULL;
      |                     ^~~~~~~~~~
In file included from engines/glk/alan2/exe.cpp:24:
./engines/glk/alan2/types.h:122:8: note: defined here
  122 | struct ScrElem {    /* SCRIPT TABLE */
      |        ^~~~~~~
    C++      engines/glk/alan3/actor.o
In file included from engines/glk/alan3/actor.cpp:26:
engines/glk/alan3/actor.cpp: In function 'Glk::Alan3::ScriptEntry* Glk::Alan3::scriptOf(int)':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::ScriptEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/actor.cpp:39:84: note: in expansion of macro 'isEndOfArray'
   39 |                 for (scr = (ScriptEntry *) pointerTo(header->scriptTableAddress); !isEndOfArray(scr); scr++)
      |                                                                                    ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/actor.h:26,
                 from engines/glk/alan3/actor.cpp:23:
./engines/glk/alan3/acode.h:454:8: note: defined here
  454 | struct ScriptEntry {    /* SCRIPT TABLE */
      |        ^~~~~~~~~~~
In file included from engines/glk/alan3/actor.cpp:26:
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::ScriptEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/actor.cpp:42:22: note: in expansion of macro 'isEndOfArray'
   42 |                 if (!isEndOfArray(scr))
      |                      ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/actor.h:26,
                 from engines/glk/alan3/actor.cpp:23:
./engines/glk/alan3/acode.h:454:8: note: defined here
  454 | struct ScriptEntry {    /* SCRIPT TABLE */
      |        ^~~~~~~~~~~
    C++      engines/glk/alan3/act.o
engines/glk/alan3/act.cpp: In function 'void Glk::Alan3::action(Glk::Context&, int, Glk::Alan3::Parameter*, Glk::Alan3::Parameter*)':
engines/glk/alan3/act.cpp:103:36: warning: '%d' directive writing between 1 and 11 bytes into a region of size 8 [-Wformat-overflow=]
  103 |                 sprintf(marker, "($%d)", multiplePosition + 1); /* Prepare a printout with $1/2/3 */
      |                                    ^~
engines/glk/alan3/act.cpp:103:33: note: directive argument in the range [-2147483647, 2147483647]
  103 |                 sprintf(marker, "($%d)", multiplePosition + 1); /* Prepare a printout with $1/2/3 */
      |                                 ^~~~~~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./common/str.h:26,
                 from ./engines/glk/jumps.h:26,
                 from ./engines/glk/alan3/act.h:28,
                 from engines/glk/alan3/act.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 5 and 15 bytes into a destination of size 10
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
    C++      engines/glk/alan3/alan_version.o
    C++      engines/glk/alan2/parse.o
In file included from engines/glk/alan2/parse.cpp:28:
engines/glk/alan2/parse.cpp: In function 'void Glk::Alan2::tryMatch(Glk::Context&, Glk::Alan2::ParamElem*)':
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::StxElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/parse.cpp:537:27: note: in expansion of macro 'endOfTable'
  537 |         for (stx = stxs; !endOfTable(stx); stx++)
      |                           ^~~~~~~~~~
In file included from ./engines/glk/alan2/exe.h:29,
                 from engines/glk/alan2/parse.cpp:25:
./engines/glk/alan2/types.h:162:8: note: defined here
  162 | struct StxElem {    /* SYNTAX TABLE */
      |        ^~~~~~~
In file included from engines/glk/alan2/parse.cpp:28:
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::StxElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/parse.cpp:540:13: note: in expansion of macro 'endOfTable'
  540 |         if (endOfTable(stx)) {
      |             ^~~~~~~~~~
In file included from ./engines/glk/alan2/exe.h:29,
                 from engines/glk/alan2/parse.cpp:25:
./engines/glk/alan2/types.h:162:8: note: defined here
  162 | struct StxElem {    /* SYNTAX TABLE */
      |        ^~~~~~~
In file included from engines/glk/alan2/parse.cpp:28:
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::ElmElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/parse.cpp:549:33: note: in expansion of macro 'endOfTable'
  549 |                         while (!endOfTable(elms) && elms->code != EOS)
      |                                 ^~~~~~~~~~
In file included from ./engines/glk/alan2/exe.h:29,
                 from engines/glk/alan2/parse.cpp:25:
./engines/glk/alan2/types.h:174:8: note: defined here
  174 | struct ElmElem {    /* ELEMENT TABLES */
      |        ^~~~~~~
In file included from engines/glk/alan2/parse.cpp:28:
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::ElmElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/parse.cpp:551:29: note: in expansion of macro 'endOfTable'
  551 |                         if (endOfTable(elms)) {
      |                             ^~~~~~~~~~
In file included from ./engines/glk/alan2/exe.h:29,
                 from engines/glk/alan2/parse.cpp:25:
./engines/glk/alan2/types.h:174:8: note: defined here
  174 | struct ElmElem {    /* ELEMENT TABLES */
      |        ^~~~~~~
In file included from engines/glk/alan2/parse.cpp:28:
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::ElmElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/parse.cpp:558:41: note: in expansion of macro 'endOfTable'
  558 |                                 while (!endOfTable(elms) && elms->code != dict[wrds[wrdidx]].code)
      |                                         ^~~~~~~~~~
In file included from ./engines/glk/alan2/exe.h:29,
                 from engines/glk/alan2/parse.cpp:25:
./engines/glk/alan2/types.h:174:8: note: defined here
  174 | struct ElmElem {    /* ELEMENT TABLES */
      |        ^~~~~~~
In file included from engines/glk/alan2/parse.cpp:28:
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::ElmElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/parse.cpp:560:37: note: in expansion of macro 'endOfTable'
  560 |                                 if (endOfTable(elms)) {
      |                                     ^~~~~~~~~~
In file included from ./engines/glk/alan2/exe.h:29,
                 from engines/glk/alan2/parse.cpp:25:
./engines/glk/alan2/types.h:174:8: note: defined here
  174 | struct ElmElem {    /* ELEMENT TABLES */
      |        ^~~~~~~
In file included from engines/glk/alan2/parse.cpp:28:
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::ElmElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/parse.cpp:566:41: note: in expansion of macro 'endOfTable'
  566 |                                 while (!endOfTable(elms) && elms->code != 0)
      |                                         ^~~~~~~~~~
In file included from ./engines/glk/alan2/exe.h:29,
                 from engines/glk/alan2/parse.cpp:25:
./engines/glk/alan2/types.h:174:8: note: defined here
  174 | struct ElmElem {    /* ELEMENT TABLES */
      |        ^~~~~~~
In file included from engines/glk/alan2/parse.cpp:28:
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::ElmElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/parse.cpp:568:37: note: in expansion of macro 'endOfTable'
  568 |                                 if (endOfTable(elms)) {
      |                                     ^~~~~~~~~~
In file included from ./engines/glk/alan2/exe.h:29,
                 from engines/glk/alan2/parse.cpp:25:
./engines/glk/alan2/types.h:174:8: note: defined here
  174 | struct ElmElem {    /* ELEMENT TABLES */
      |        ^~~~~~~
In file included from engines/glk/alan2/parse.cpp:28:
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::ClaElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/parse.cpp:612:53: note: in expansion of macro 'endOfTable'
  612 |         for (cla = (ClaElem *) addrTo(elms->next); !endOfTable(cla); cla++) {
      |                                                     ^~~~~~~~~~
In file included from ./engines/glk/alan2/exe.h:29,
                 from engines/glk/alan2/parse.cpp:25:
./engines/glk/alan2/types.h:182:8: note: defined here
  182 | struct ClaElem {    /* CLASS DEFINITION TABLE */
      |        ^~~~~~~
    C++      engines/glk/alan2/main.o
In file included from engines/glk/alan2/main.cpp:32:
engines/glk/alan2/main.cpp: In function 'Glk::Alan2::Boolean Glk::Alan2::exitto(int, int)':
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::ExtElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/main.cpp:529:67: note: in expansion of macro 'endOfTable'
  529 |         for (ext = (ExtElem *) addrTo(locs[from - LOCMIN].exts); !endOfTable(ext); ext++)
      |                                                                   ^~~~~~~~~~
In file included from ./engines/glk/alan2/args.h:32,
                 from engines/glk/alan2/main.cpp:27:
./engines/glk/alan2/types.h:144:8: note: defined here
  144 | struct ExtElem {    /* EXIT TABLE structure */
      |        ^~~~~~~
In file included from engines/glk/alan2/main.cpp:32:
engines/glk/alan2/main.cpp: In function 'Glk::Alan2::Boolean Glk::Alan2::checklim(Glk::Alan2::Aword, Glk::Alan2::Aword)':
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::LimElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/main.cpp:603:76: note: in expansion of macro 'endOfTable'
  603 |                 for (lim = (LimElem *) addrTo(cnts[props - CNTMIN].lims); !endOfTable(lim); lim++)
      |                                                                            ^~~~~~~~~~
In file included from ./engines/glk/alan2/args.h:32,
                 from engines/glk/alan2/main.cpp:27:
./engines/glk/alan2/types.h:231:8: note: defined here
  231 | struct LimElem {    /* LIMIT Type */
      |        ^~~~~~~
In file included from engines/glk/alan2/main.cpp:32:
engines/glk/alan2/main.cpp: In function 'Glk::Alan2::Boolean Glk::Alan2::trycheck(Glk::Alan2::Aaddr, Glk::Alan2::Boolean)':
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::ChkElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/main.cpp:646:25: note: in expansion of macro 'endOfTable'
  646 |                 while (!endOfTable(chk)) {
      |                         ^~~~~~~~~~
In file included from ./engines/glk/alan2/args.h:32,
                 from engines/glk/alan2/main.cpp:27:
./engines/glk/alan2/types.h:152:8: note: defined here
  152 | struct ChkElem {    /* CHECK TABLE */
      |        ^~~~~~~
In file included from engines/glk/alan2/main.cpp:32:
engines/glk/alan2/main.cpp: In function 'void Glk::Alan2::go(Glk::Context&, int)':
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::ExtElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/main.cpp:673:25: note: in expansion of macro 'endOfTable'
  673 |                 while (!endOfTable(ext)) {
      |                         ^~~~~~~~~~
In file included from ./engines/glk/alan2/args.h:32,
                 from engines/glk/alan2/main.cpp:27:
./engines/glk/alan2/types.h:144:8: note: defined here
  144 | struct ExtElem {    /* EXIT TABLE structure */
      |        ^~~~~~~
In file included from engines/glk/alan2/main.cpp:32:
engines/glk/alan2/main.cpp: In function 'Glk::Alan2::AltElem* Glk::Alan2::findalt(Glk::Alan2::Aword, Glk::Alan2::Aword)':
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::VrbElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/main.cpp:735:50: note: in expansion of macro 'endOfTable'
  735 |         for (vrb = (VrbElem *) addrTo(vrbsadr); !endOfTable(vrb); vrb++)
      |                                                  ^~~~~~~~~~
In file included from ./engines/glk/alan2/args.h:32,
                 from engines/glk/alan2/main.cpp:27:
./engines/glk/alan2/types.h:157:8: note: defined here
  157 | struct VrbElem {    /* VERB TABLE */
      |        ^~~~~~~
In file included from engines/glk/alan2/main.cpp:32:
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::AltElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/main.cpp:737:68: note: in expansion of macro 'endOfTable'
  737 |                         for (alt = (AltElem *) addrTo(vrb->alts); !endOfTable(alt); alt++)
      |                                                                    ^~~~~~~~~~
In file included from ./engines/glk/alan2/args.h:32,
                 from engines/glk/alan2/main.cpp:27:
./engines/glk/alan2/types.h:188:8: note: defined here
  188 | struct AltElem {    /* VERB ALTERNATIVE TABLE */
      |        ^~~~~~~
In file included from engines/glk/alan2/main.cpp:32:
engines/glk/alan2/main.cpp: In function 'void Glk::Alan2::initstrings()':
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::IniElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/main.cpp:1194:56: note: in expansion of macro 'endOfTable'
 1194 |         for (init = (IniElem *) addrTo(header->init); !endOfTable(init); init++) {
      |                                                        ^~~~~~~~~~
In file included from ./engines/glk/alan2/args.h:32,
                 from engines/glk/alan2/main.cpp:27:
./engines/glk/alan2/types.h:259:8: note: defined here
  259 | struct IniElem {    /* STRING INITIALISATION TABLE */
      |        ^~~~~~~
In file included from engines/glk/alan2/main.cpp:32:
engines/glk/alan2/main.cpp: In function 'void Glk::Alan2::movactor(Glk::Context&)':
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::ScrElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/main.cpp:1279:62: note: in expansion of macro 'endOfTable'
 1279 |                 for (scr = (ScrElem *) addrTo(act->scradr); !endOfTable(scr); scr++)
      |                                                              ^~~~~~~~~~
In file included from ./engines/glk/alan2/args.h:32,
                 from engines/glk/alan2/main.cpp:27:
./engines/glk/alan2/types.h:122:8: note: defined here
  122 | struct ScrElem {    /* SCRIPT TABLE */
      |        ^~~~~~~
In file included from engines/glk/alan2/main.cpp:32:
./engines/glk/alan2/main.h:94:26: warning: converting a packed 'Glk::Alan2::StepElem' pointer (alignment 1) to a 'Glk::Alan2::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   94 | #define endOfTable(x) eot((Aword *) x)
      |                       ~~~^~~~~~~~~~~~~
engines/glk/alan2/main.cpp:1329:55: note: in expansion of macro 'endOfTable'
 1329 |                                 if (act->step != 0 && endOfTable(step))
      |                                                       ^~~~~~~~~~
In file included from ./engines/glk/alan2/args.h:32,
                 from engines/glk/alan2/main.cpp:27:
./engines/glk/alan2/types.h:128:8: note: defined here
  128 | struct StepElem {   /* STEP TABLE */
      |        ^~~~~~~~
engines/glk/alan2/main.cpp: In function 'void Glk::Alan2::action(Glk::Context&, Glk::Alan2::ParamElem*)':
engines/glk/alan2/main.cpp:945:36: warning: '%d' directive writing between 1 and 10 bytes into a region of size 8 [-Wformat-overflow=]
  945 |                 sprintf(marker, "($%d)", mpos + 1); /* Prepare a printout with $1/2/3 */
      |                                    ^~
engines/glk/alan2/main.cpp:945:33: note: directive argument in the range [1, 2147483647]
  945 |                 sprintf(marker, "($%d)", mpos + 1); /* Prepare a printout with $1/2/3 */
      |                                 ^~~~~~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/glk/alan2/alan2.h:28,
                 from engines/glk/alan2/main.cpp:25:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 5 and 14 bytes into a destination of size 10
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
engines/glk/alan2/main.cpp: In function 'void Glk::Alan2::run()':
engines/glk/alan2/main.cpp:1051:127: warning: '%ld' directive writing between 1 and 11 bytes into a region of size between 0 and 14 [-Wformat-overflow=]
 1051 |                                         sprintf(str, "Incompatible version of ACODE program. Game is %ld.%ld, interpreter %ld.%ld.",
      |                                                                                                                               ^~~
engines/glk/alan2/main.cpp:1051:54: note: directive argument in the range [-2147483648, 2147483647]
 1051 |                                         sprintf(str, "Incompatible version of ACODE program. Game is %ld.%ld, interpreter %ld.%ld.",
      |                                                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/glk/alan2/alan2.h:28,
                 from engines/glk/alan2/main.cpp:25:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 69 and 93 bytes into a destination of size 80
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
    C++      engines/glk/alan3/attribute.o
In file included from engines/glk/alan3/attribute.cpp:26:
engines/glk/alan3/attribute.cpp: In function 'Glk::Alan3::AttributeEntry* Glk::Alan3::findAttribute(Glk::Alan3::AttributeEntry*, int)':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::AttributeEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/attribute.cpp:36:21: note: in expansion of macro 'isEndOfArray'
   36 |                 if (isEndOfArray(attribute))
      |                     ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/attribute.h:26,
                 from engines/glk/alan3/attribute.cpp:23:
./engines/glk/alan3/acode.h:368:8: note: defined here
  368 | struct AttributeEntry {         /* ATTRIBUTE LIST */
      |        ^~~~~~~~~~~~~~
    C++      engines/glk/alan3/class.o
    C++      engines/glk/alan3/checkentry.o
    C++      engines/glk/alan3/compatibility.o
    C++      engines/glk/alan3/alan3.o
    C++      engines/glk/alan3/current.o
    C++      engines/glk/alan3/container.o
    C++      engines/glk/alan3/decode.o
    C++      engines/glk/alan3/alt_info.o
In file included from engines/glk/alan3/alt_info.cpp:29:
engines/glk/alan3/alt_info.cpp: In function 'Glk::Alan3::AltEntry* Glk::Alan3::findAlternative(Glk::Alan3::Aaddr, int, int)':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::AltEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/alt_info.cpp:309:70: note: in expansion of macro 'isEndOfArray'
  309 |                 for (alt = (AltEntry *) pointerTo(verbEntry->alts); !isEndOfArray(alt); alt++) {
      |                                                                      ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from ./engines/glk/alan3/alt_info.h:28,
                 from engines/glk/alan3/alt_info.cpp:23:
./engines/glk/alan3/acode.h:467:8: note: defined here
  467 | struct AltEntry {   /* VERB ALTERNATIVE TABLE */
      |        ^~~~~~~~
    C++      engines/glk/alan3/dictionary.o
    C++      engines/glk/alan3/event.o
    C++      engines/glk/alan3/fnmatch.o
    C++      engines/glk/alan3/lists.o
    C++      engines/glk/alan3/literal.o
    C++      engines/glk/alan3/glkio.o
    C++      engines/glk/alan3/detection.o
    C++      engines/glk/alan3/exe.o
    C++      engines/glk/alan3/options.o
    C++      engines/glk/alan3/location.o
In file included from engines/glk/alan3/location.cpp:29:
engines/glk/alan3/location.cpp: In function 'void Glk::Alan3::go(Glk::Context&, int, int)':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::ExitEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/location.cpp:59:25: note: in expansion of macro 'isEndOfArray'
   59 |                 while (!isEndOfArray(theExit)) {
      |                         ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from ./engines/glk/alan3/location.h:26,
                 from engines/glk/alan3/location.cpp:23:
./engines/glk/alan3/acode.h:389:8: note: defined here
  389 | struct ExitEntry {  /* EXIT TABLE structure */
      |        ^~~~~~~~~
In file included from engines/glk/alan3/location.cpp:29:
engines/glk/alan3/location.cpp: In function 'bool Glk::Alan3::exitto(int, int)':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::ExitEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/location.cpp:102:73: note: in expansion of macro 'isEndOfArray'
  102 |         for (theExit = (ExitEntry *) pointerTo(instances[from].exits); !isEndOfArray(theExit); theExit++)
      |                                                                         ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from ./engines/glk/alan3/location.h:26,
                 from engines/glk/alan3/location.cpp:23:
./engines/glk/alan3/acode.h:389:8: note: defined here
  389 | struct ExitEntry {  /* EXIT TABLE structure */
      |        ^~~~~~~~~
    C++      engines/glk/alan3/debug.o
In file included from engines/glk/alan3/debug.cpp:35:
engines/glk/alan3/debug.cpp: In function 'void Glk::Alan3::showAttributes(Glk::Alan3::AttributeEntry*)':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::AttributeEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/debug.cpp:65:28: note: in expansion of macro 'isEndOfArray'
   65 |         for (at = attrib; !isEndOfArray(at); at++) {
      |                            ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from ./engines/glk/alan3/debug.h:28,
                 from engines/glk/alan3/debug.cpp:23:
./engines/glk/alan3/acode.h:368:8: note: defined here
  368 | struct AttributeEntry {         /* ATTRIBUTE LIST */
      |        ^~~~~~~~~~~~~~
In file included from engines/glk/alan3/debug.cpp:35:
engines/glk/alan3/debug.cpp: In function 'int Glk::Alan3::findSourceLineIndex(Glk::Alan3::SourceLineEntry*, int, int)':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::SourceLineEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/debug.cpp:481:13: note: in expansion of macro 'isEndOfArray'
  481 |         if (isEndOfArray(entry) || entry[i].file != file)
      |             ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from ./engines/glk/alan3/debug.h:28,
                 from engines/glk/alan3/debug.cpp:23:
./engines/glk/alan3/acode.h:479:8: note: defined here
  479 | struct SourceLineEntry { /* SOURCE LINE TABLE */
      |        ^~~~~~~~~~~~~~~
engines/glk/alan3/debug.cpp: In function 'void Glk::Alan3::debug(Glk::Context&, bool, int, int)':
engines/glk/alan3/debug.cpp:702:39: warning: '%s' directive writing up to 199 bytes into a region of size between 192 and 196 [-Wformat-overflow=]
  702 |                 sprintf(buf, "$i%s %s %s$n$t$t-- %s", entry->command, entry->parameter, padding(entry, maxLength), entry->helpText);
      |                                       ^~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./common/util.h:26,
                 from ./engines/glk/alan3/sysdep.h:39,
                 from ./engines/glk/alan3/types.h:28,
                 from ./engines/glk/alan3/debug.h:28,
                 from engines/glk/alan3/debug.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output 14 or more bytes (assuming 217) into a destination of size 200
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
    C++      engines/glk/alan3/memory.o
    C++      engines/glk/alan3/msg.o
    C++      engines/glk/alan3/parameter_position.o
    C++      engines/glk/alan3/instance.o
    C++      engines/glk/alan3/main.o
In file included from engines/glk/alan3/main.cpp:38:
engines/glk/alan3/main.cpp: In function 'void Glk::Alan3::initStrings()':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::StringInitEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/main.cpp:453:78: note: in expansion of macro 'isEndOfArray'
  453 |         for (init = (StringInitEntry *) pointerTo(header->stringInitTable); !isEndOfArray(init); init++)
      |                                                                              ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from ./engines/glk/alan3/main.h:29,
                 from engines/glk/alan3/main.cpp:23:
./engines/glk/alan3/acode.h:484:8: note: defined here
  484 | struct StringInitEntry { /* STRING INITIALISATION TABLE */
      |        ^~~~~~~~~~~~~~~
In file included from engines/glk/alan3/main.cpp:38:
engines/glk/alan3/main.cpp: In function 'Glk::Alan3::Aint Glk::Alan3::sizeOfAttributeData()':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::AttributeEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/main.cpp:464:25: note: in expansion of macro 'isEndOfArray'
  464 |                 while (!isEndOfArray(attribute)) {
      |                         ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from ./engines/glk/alan3/main.h:29,
                 from engines/glk/alan3/main.cpp:23:
./engines/glk/alan3/acode.h:368:8: note: defined here
  368 | struct AttributeEntry {         /* ATTRIBUTE LIST */
      |        ^~~~~~~~~~~~~~
In file included from engines/glk/alan3/main.cpp:38:
engines/glk/alan3/main.cpp: In function 'Glk::Alan3::AttributeEntry* Glk::Alan3::initializeAttributes(int)':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::AttributeHeaderEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/main.cpp:487:25: note: in expansion of macro 'isEndOfArray'
  487 |                 while (!isEndOfArray(originalAttribute)) {
      |                         ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from ./engines/glk/alan3/main.h:29,
                 from engines/glk/alan3/main.cpp:23:
./engines/glk/alan3/acode.h:381:8: note: defined here
  381 | struct AttributeHeaderEntry {   /* ATTRIBUTE LIST in header */
      |        ^~~~~~~~~~~~~~~~~~~~
In file included from engines/glk/alan3/main.cpp:38:
engines/glk/alan3/main.cpp: In function 'void Glk::Alan3::moveActor(Glk::Context&, int)':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::ScriptEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/main.cpp:677:84: note: in expansion of macro 'isEndOfArray'
  677 |                 for (scr = (ScriptEntry *) pointerTo(header->scriptTableAddress); !isEndOfArray(scr); scr++) {
      |                                                                                    ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from ./engines/glk/alan3/main.h:29,
                 from engines/glk/alan3/main.cpp:23:
./engines/glk/alan3/acode.h:454:8: note: defined here
  454 | struct ScriptEntry {    /* SCRIPT TABLE */
      |        ^~~~~~~~~~~
In file included from engines/glk/alan3/main.cpp:38:
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::StepEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/main.cpp:720:75: note: in expansion of macro 'isEndOfArray'
  720 |                                 if (fail || (admin[theActor].step != 0 && isEndOfArray(step)))
      |                                                                           ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from ./engines/glk/alan3/main.h:29,
                 from engines/glk/alan3/main.cpp:23:
./engines/glk/alan3/acode.h:461:8: note: defined here
  461 | struct StepEntry {  /* STEP TABLE */
      |        ^~~~~~~~~
In file included from engines/glk/alan3/main.cpp:38:
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::ScriptEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/main.cpp:727:21: note: in expansion of macro 'isEndOfArray'
  727 |                 if (isEndOfArray(scr))
      |                     ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from ./engines/glk/alan3/main.h:29,
                 from engines/glk/alan3/main.cpp:23:
./engines/glk/alan3/acode.h:454:8: note: defined here
  454 | struct ScriptEntry {    /* SCRIPT TABLE */
      |        ^~~~~~~~~~~
    C++      engines/glk/alan3/output.o
    C++      engines/glk/alan3/params.o
    C++      engines/glk/alan3/reverse.o
In file included from engines/glk/alan3/reverse.cpp:24:
engines/glk/alan3/reverse.cpp: In function 'void Glk::Alan3::reverseDictionary(Glk::Alan3::Aword)':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::DictionaryEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/reverse.cpp:154:14: note: in expansion of macro 'isEndOfArray'
  154 |         if (!isEndOfArray(e)) {
      |              ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from engines/glk/alan3/reverse.cpp:23:
./engines/glk/alan3/acode.h:498:8: note: defined here
  498 | struct DictionaryEntry { /* Dictionary */
      |        ^~~~~~~~~~~~~~~
In file included from engines/glk/alan3/reverse.cpp:24:
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::DictionaryEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/reverse.cpp:156:25: note: in expansion of macro 'isEndOfArray'
  156 |                 while (!isEndOfArray(e)) {
      |                         ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from engines/glk/alan3/reverse.cpp:23:
./engines/glk/alan3/acode.h:498:8: note: defined here
  498 | struct DictionaryEntry { /* Dictionary */
      |        ^~~~~~~~~~~~~~~
In file included from engines/glk/alan3/reverse.cpp:24:
engines/glk/alan3/reverse.cpp: In function 'void Glk::Alan3::reverseAlts(Glk::Alan3::Aword)':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::AltEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/reverse.cpp:189:14: note: in expansion of macro 'isEndOfArray'
  189 |         if (!isEndOfArray(e)) {
      |              ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from engines/glk/alan3/reverse.cpp:23:
./engines/glk/alan3/acode.h:467:8: note: defined here
  467 | struct AltEntry {   /* VERB ALTERNATIVE TABLE */
      |        ^~~~~~~~
In file included from engines/glk/alan3/reverse.cpp:24:
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::AltEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/reverse.cpp:191:25: note: in expansion of macro 'isEndOfArray'
  191 |                 while (!isEndOfArray(e)) {
      |                         ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from engines/glk/alan3/reverse.cpp:23:
./engines/glk/alan3/acode.h:467:8: note: defined here
  467 | struct AltEntry {   /* VERB ALTERNATIVE TABLE */
      |        ^~~~~~~~
In file included from engines/glk/alan3/reverse.cpp:24:
engines/glk/alan3/reverse.cpp: In function 'void Glk::Alan3::reverseSteps(Glk::Alan3::Aword)':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::StepEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/reverse.cpp:220:14: note: in expansion of macro 'isEndOfArray'
  220 |         if (!isEndOfArray(e)) {
      |              ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from engines/glk/alan3/reverse.cpp:23:
./engines/glk/alan3/acode.h:461:8: note: defined here
  461 | struct StepEntry {  /* STEP TABLE */
      |        ^~~~~~~~~
In file included from engines/glk/alan3/reverse.cpp:24:
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::StepEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/reverse.cpp:222:25: note: in expansion of macro 'isEndOfArray'
  222 |                 while (!isEndOfArray(e)) {
      |                         ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from engines/glk/alan3/reverse.cpp:23:
./engines/glk/alan3/acode.h:461:8: note: defined here
  461 | struct StepEntry {  /* STEP TABLE */
      |        ^~~~~~~~~
In file included from engines/glk/alan3/reverse.cpp:24:
engines/glk/alan3/reverse.cpp: In function 'void Glk::Alan3::reverseScrs(Glk::Alan3::Aword)':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::ScriptEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/reverse.cpp:237:14: note: in expansion of macro 'isEndOfArray'
  237 |         if (!isEndOfArray(e)) {
      |              ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from engines/glk/alan3/reverse.cpp:23:
./engines/glk/alan3/acode.h:454:8: note: defined here
  454 | struct ScriptEntry {    /* SCRIPT TABLE */
      |        ^~~~~~~~~~~
In file included from engines/glk/alan3/reverse.cpp:24:
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::ScriptEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/reverse.cpp:239:25: note: in expansion of macro 'isEndOfArray'
  239 |                 while (!isEndOfArray(e)) {
      |                         ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from engines/glk/alan3/reverse.cpp:23:
./engines/glk/alan3/acode.h:454:8: note: defined here
  454 | struct ScriptEntry {    /* SCRIPT TABLE */
      |        ^~~~~~~~~~~
In file included from engines/glk/alan3/reverse.cpp:24:
engines/glk/alan3/reverse.cpp: In function 'void Glk::Alan3::reverseExits(Glk::Alan3::Aword)':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::ExitEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/reverse.cpp:253:14: note: in expansion of macro 'isEndOfArray'
  253 |         if (!isEndOfArray(e)) {
      |              ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from engines/glk/alan3/reverse.cpp:23:
./engines/glk/alan3/acode.h:389:8: note: defined here
  389 | struct ExitEntry {  /* EXIT TABLE structure */
      |        ^~~~~~~~~
In file included from engines/glk/alan3/reverse.cpp:24:
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::ExitEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/reverse.cpp:255:25: note: in expansion of macro 'isEndOfArray'
  255 |                 while (!isEndOfArray(e)) {
      |                         ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from engines/glk/alan3/reverse.cpp:23:
./engines/glk/alan3/acode.h:389:8: note: defined here
  389 | struct ExitEntry {  /* EXIT TABLE structure */
      |        ^~~~~~~~~
In file included from engines/glk/alan3/reverse.cpp:24:
engines/glk/alan3/reverse.cpp: In function 'void Glk::Alan3::reverseClasses(Glk::Alan3::Aword)':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::ClassEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/reverse.cpp:269:14: note: in expansion of macro 'isEndOfArray'
  269 |         if (!isEndOfArray(e)) {
      |              ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from engines/glk/alan3/reverse.cpp:23:
./engines/glk/alan3/acode.h:330:8: note: defined here
  330 | struct ClassEntry { /* CLASS TABLE */
      |        ^~~~~~~~~~
In file included from engines/glk/alan3/reverse.cpp:24:
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::ClassEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/reverse.cpp:271:25: note: in expansion of macro 'isEndOfArray'
  271 |                 while (!isEndOfArray(e)) {
      |                         ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from engines/glk/alan3/reverse.cpp:23:
./engines/glk/alan3/acode.h:330:8: note: defined here
  330 | struct ClassEntry { /* CLASS TABLE */
      |        ^~~~~~~~~~
In file included from engines/glk/alan3/reverse.cpp:24:
engines/glk/alan3/reverse.cpp: In function 'void Glk::Alan3::reverseInstances(Glk::Alan3::Aword)':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::InstanceEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/reverse.cpp:293:14: note: in expansion of macro 'isEndOfArray'
  293 |         if (!isEndOfArray(e)) {
      |              ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from engines/glk/alan3/reverse.cpp:23:
./engines/glk/alan3/acode.h:347:8: note: defined here
  347 | struct InstanceEntry {  /* INSTANCE TABLE */
      |        ^~~~~~~~~~~~~
In file included from engines/glk/alan3/reverse.cpp:24:
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::InstanceEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/reverse.cpp:295:25: note: in expansion of macro 'isEndOfArray'
  295 |                 while (!isEndOfArray(e)) {
      |                         ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from engines/glk/alan3/reverse.cpp:23:
./engines/glk/alan3/acode.h:347:8: note: defined here
  347 | struct InstanceEntry {  /* INSTANCE TABLE */
      |        ^~~~~~~~~~~~~
In file included from engines/glk/alan3/reverse.cpp:24:
engines/glk/alan3/reverse.cpp: In function 'void Glk::Alan3::reverseRestrictions(Glk::Alan3::Aword)':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::RestrictionEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/reverse.cpp:318:14: note: in expansion of macro 'isEndOfArray'
  318 |         if (!isEndOfArray(e)) {
      |              ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from engines/glk/alan3/reverse.cpp:23:
./engines/glk/alan3/acode.h:408:8: note: defined here
  408 | struct RestrictionEntry {         /* PARAMETER RESTRICTION TABLE */
      |        ^~~~~~~~~~~~~~~~
In file included from engines/glk/alan3/reverse.cpp:24:
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::RestrictionEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/reverse.cpp:320:25: note: in expansion of macro 'isEndOfArray'
  320 |                 while (!isEndOfArray(e)) {
      |                         ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from engines/glk/alan3/reverse.cpp:23:
./engines/glk/alan3/acode.h:408:8: note: defined here
  408 | struct RestrictionEntry {         /* PARAMETER RESTRICTION TABLE */
      |        ^~~~~~~~~~~~~~~~
In file included from engines/glk/alan3/reverse.cpp:24:
engines/glk/alan3/reverse.cpp: In function 'void Glk::Alan3::reverseElms(Glk::Alan3::Aword)':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::ElementEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/reverse.cpp:333:14: note: in expansion of macro 'isEndOfArray'
  333 |         if (!isEndOfArray(e)) {
      |              ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from engines/glk/alan3/reverse.cpp:23:
./engines/glk/alan3/acode.h:425:8: note: defined here
  425 | struct ElementEntry {   /* SYNTAX ELEMENT TABLES */
      |        ^~~~~~~~~~~~
In file included from engines/glk/alan3/reverse.cpp:24:
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::ElementEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/reverse.cpp:335:25: note: in expansion of macro 'isEndOfArray'
  335 |                 while (!isEndOfArray(e)) {
      |                         ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from engines/glk/alan3/reverse.cpp:23:
./engines/glk/alan3/acode.h:425:8: note: defined here
  425 | struct ElementEntry {   /* SYNTAX ELEMENT TABLES */
      |        ^~~~~~~~~~~~
In file included from engines/glk/alan3/reverse.cpp:24:
engines/glk/alan3/reverse.cpp: In function 'void Glk::Alan3::reverseSyntaxTableCurrent(Glk::Alan3::Aword)':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::SyntaxEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/reverse.cpp:347:14: note: in expansion of macro 'isEndOfArray'
  347 |         if (!isEndOfArray(e)) {
      |              ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from engines/glk/alan3/reverse.cpp:23:
./engines/glk/alan3/acode.h:437:8: note: defined here
  437 | struct SyntaxEntry {     /* SYNTAX TABLE */
      |        ^~~~~~~~~~~
In file included from engines/glk/alan3/reverse.cpp:24:
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::SyntaxEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/reverse.cpp:349:25: note: in expansion of macro 'isEndOfArray'
  349 |                 while (!isEndOfArray(e)) {
      |                         ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from engines/glk/alan3/reverse.cpp:23:
./engines/glk/alan3/acode.h:437:8: note: defined here
  437 | struct SyntaxEntry {     /* SYNTAX TABLE */
      |        ^~~~~~~~~~~
In file included from engines/glk/alan3/reverse.cpp:24:
engines/glk/alan3/reverse.cpp: In function 'void Glk::Alan3::reverseSyntaxTablePreBeta2(Glk::Alan3::Aword)':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::SyntaxEntryPreBeta2' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/reverse.cpp:361:14: note: in expansion of macro 'isEndOfArray'
  361 |         if (!isEndOfArray(e)) {
      |              ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from engines/glk/alan3/reverse.cpp:23:
./engines/glk/alan3/acode.h:432:8: note: defined here
  432 | struct SyntaxEntryPreBeta2 {    /* SYNTAX TABLE */
      |        ^~~~~~~~~~~~~~~~~~~
In file included from engines/glk/alan3/reverse.cpp:24:
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::SyntaxEntryPreBeta2' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/reverse.cpp:363:25: note: in expansion of macro 'isEndOfArray'
  363 |                 while (!isEndOfArray(e)) {
      |                         ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from engines/glk/alan3/reverse.cpp:23:
./engines/glk/alan3/acode.h:432:8: note: defined here
  432 | struct SyntaxEntryPreBeta2 {    /* SYNTAX TABLE */
      |        ^~~~~~~~~~~~~~~~~~~
In file included from engines/glk/alan3/reverse.cpp:24:
engines/glk/alan3/reverse.cpp: In function 'void Glk::Alan3::reverseParameterTable(Glk::Alan3::Aword)':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::ParameterMapEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/reverse.cpp:404:14: note: in expansion of macro 'isEndOfArray'
  404 |         if (!isEndOfArray(e)) {
      |              ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from engines/glk/alan3/reverse.cpp:23:
./engines/glk/alan3/acode.h:443:8: note: defined here
  443 | struct ParameterMapEntry {  /* PARAMETER MAPPING TABLE */
      |        ^~~~~~~~~~~~~~~~~
In file included from engines/glk/alan3/reverse.cpp:24:
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::ParameterMapEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/reverse.cpp:406:25: note: in expansion of macro 'isEndOfArray'
  406 |                 while (!isEndOfArray(e)) {
      |                         ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from engines/glk/alan3/reverse.cpp:23:
./engines/glk/alan3/acode.h:443:8: note: defined here
  443 | struct ParameterMapEntry {  /* PARAMETER MAPPING TABLE */
      |        ^~~~~~~~~~~~~~~~~
In file included from engines/glk/alan3/reverse.cpp:24:
engines/glk/alan3/reverse.cpp: In function 'void Glk::Alan3::reverseEvts(Glk::Alan3::Aword)':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::EventEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/reverse.cpp:419:14: note: in expansion of macro 'isEndOfArray'
  419 |         if (!isEndOfArray(e)) {
      |              ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from engines/glk/alan3/reverse.cpp:23:
./engines/glk/alan3/acode.h:449:8: note: defined here
  449 | struct EventEntry { /* EVENT TABLE */
      |        ^~~~~~~~~~
In file included from engines/glk/alan3/reverse.cpp:24:
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::EventEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/reverse.cpp:421:25: note: in expansion of macro 'isEndOfArray'
  421 |                 while (!isEndOfArray(e)) {
      |                         ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from engines/glk/alan3/reverse.cpp:23:
./engines/glk/alan3/acode.h:449:8: note: defined here
  449 | struct EventEntry { /* EVENT TABLE */
      |        ^~~~~~~~~~
In file included from engines/glk/alan3/reverse.cpp:24:
engines/glk/alan3/reverse.cpp: In function 'void Glk::Alan3::reverseContainers(Glk::Alan3::Aword)':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::ContainerEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/reverse.cpp:449:14: note: in expansion of macro 'isEndOfArray'
  449 |         if (!isEndOfArray(e)) {
      |              ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from engines/glk/alan3/reverse.cpp:23:
./engines/glk/alan3/acode.h:414:8: note: defined here
  414 | struct ContainerEntry { /* CONTAINER TABLE */
      |        ^~~~~~~~~~~~~~
In file included from engines/glk/alan3/reverse.cpp:24:
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::ContainerEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/reverse.cpp:451:25: note: in expansion of macro 'isEndOfArray'
  451 |                 while (!isEndOfArray(e)) {
      |                         ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from engines/glk/alan3/reverse.cpp:23:
./engines/glk/alan3/acode.h:414:8: note: defined here
  414 | struct ContainerEntry { /* CONTAINER TABLE */
      |        ^~~~~~~~~~~~~~
In file included from engines/glk/alan3/reverse.cpp:24:
engines/glk/alan3/reverse.cpp: In function 'void Glk::Alan3::reverseRuls(Glk::Alan3::Aword)':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::RuleEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/reverse.cpp:468:14: note: in expansion of macro 'isEndOfArray'
  468 |         if (!isEndOfArray(e)) {
      |              ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from engines/glk/alan3/reverse.cpp:23:
./engines/glk/alan3/acode.h:397:8: note: defined here
  397 | struct RuleEntry {      /* RULE TABLE */
      |        ^~~~~~~~~
In file included from engines/glk/alan3/reverse.cpp:24:
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::RuleEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/reverse.cpp:470:25: note: in expansion of macro 'isEndOfArray'
  470 |                 while (!isEndOfArray(e)) {
      |                         ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from engines/glk/alan3/reverse.cpp:23:
./engines/glk/alan3/acode.h:397:8: note: defined here
  397 | struct RuleEntry {      /* RULE TABLE */
      |        ^~~~~~~~~
In file included from engines/glk/alan3/reverse.cpp:24:
engines/glk/alan3/reverse.cpp: In function 'void Glk::Alan3::reverseSetInitTable(Glk::Alan3::Aaddr)':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::SetInitEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/reverse.cpp:484:14: note: in expansion of macro 'isEndOfArray'
  484 |         if (!isEndOfArray(e)) {
      |              ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from engines/glk/alan3/reverse.cpp:23:
./engines/glk/alan3/acode.h:491:8: note: defined here
  491 | struct SetInitEntry {   /* SET INITIALISATION TABLE */
      |        ^~~~~~~~~~~~
In file included from engines/glk/alan3/reverse.cpp:24:
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::SetInitEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/reverse.cpp:486:25: note: in expansion of macro 'isEndOfArray'
  486 |                 while (!isEndOfArray(e)) {
      |                         ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from engines/glk/alan3/reverse.cpp:23:
./engines/glk/alan3/acode.h:491:8: note: defined here
  491 | struct SetInitEntry {   /* SET INITIALISATION TABLE */
      |        ^~~~~~~~~~~~
    C++      engines/glk/alan3/inter.o
    C++      engines/glk/alan3/score.o
    C++      engines/glk/alan3/rules.o
    C++      engines/glk/alan3/save.o
In file included from engines/glk/alan3/save.cpp:28:
engines/glk/alan3/save.cpp: In function 'void Glk::Alan3::syncGame(Common::Serializer&)':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::StringInitEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/save.cpp:87:34: note: in expansion of macro 'isEndOfArray'
   87 |                                 !isEndOfArray(initEntry); initEntry++) {
      |                                  ^~~~~~~~~~~~
In file included from engines/glk/alan3/save.cpp:24:
./engines/glk/alan3/acode.h:484:8: note: defined here
  484 | struct StringInitEntry { /* STRING INITIALISATION TABLE */
      |        ^~~~~~~~~~~~~~~
In file included from engines/glk/alan3/save.cpp:28:
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::SetInitEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/save.cpp:106:34: note: in expansion of macro 'isEndOfArray'
  106 |                                 !isEndOfArray(initEntry); initEntry++) {
      |                                  ^~~~~~~~~~~~
In file included from engines/glk/alan3/save.cpp:24:
./engines/glk/alan3/acode.h:491:8: note: defined here
  491 | struct SetInitEntry {   /* SET INITIALISATION TABLE */
      |        ^~~~~~~~~~~~
    C++      engines/glk/alan3/set.o
In file included from engines/glk/alan3/set.cpp:24:
engines/glk/alan3/set.cpp: In function 'void Glk::Alan3::initSets(Glk::Alan3::SetInitEntry*)':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::SetInitEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/set.cpp:52:33: note: in expansion of macro 'isEndOfArray'
   52 |         for (init = initTable; !isEndOfArray(init); init++) {
      |                                 ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/set.h:36,
                 from engines/glk/alan3/set.cpp:23:
./engines/glk/alan3/acode.h:491:8: note: defined here
  491 | struct SetInitEntry {   /* SET INITIALISATION TABLE */
      |        ^~~~~~~~~~~~
    C++      engines/glk/alan3/state_stack.o
    C++      engines/glk/alan3/syntax.o
In file included from engines/glk/alan3/syntax.cpp:26:
engines/glk/alan3/syntax.cpp: In function 'Glk::Alan3::SyntaxEntry* Glk::Alan3::findSyntaxEntryForPreBeta2(int, Glk::Alan3::SyntaxEntry*)':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::SyntaxEntryPreBeta2' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/syntax.cpp:50:50: note: in expansion of macro 'isEndOfArray'
   50 |         for (stx = (SyntaxEntryPreBeta2 *)stxs; !isEndOfArray(stx); stx++)
      |                                                  ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from ./engines/glk/alan3/syntax.h:26,
                 from engines/glk/alan3/syntax.cpp:23:
./engines/glk/alan3/acode.h:432:8: note: defined here
  432 | struct SyntaxEntryPreBeta2 {    /* SYNTAX TABLE */
      |        ^~~~~~~~~~~~~~~~~~~
In file included from engines/glk/alan3/syntax.cpp:26:
engines/glk/alan3/syntax.cpp: In function 'Glk::Alan3::SyntaxEntry* Glk::Alan3::findSyntaxEntry(int)':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::SyntaxEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/syntax.cpp:62:27: note: in expansion of macro 'isEndOfArray'
   62 |         for (stx = stxs; !isEndOfArray(stx); stx++)
      |                           ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from ./engines/glk/alan3/syntax.h:26,
                 from engines/glk/alan3/syntax.cpp:23:
./engines/glk/alan3/acode.h:437:8: note: defined here
  437 | struct SyntaxEntry {     /* SYNTAX TABLE */
      |        ^~~~~~~~~~~
    C++      engines/glk/alan3/state.o
    C++      engines/glk/alan3/scan.o
    C++      engines/glk/alan3/stack.o
    C++      engines/glk/alan3/types.o
    C++      engines/glk/alan3/parse.o
In file included from engines/glk/alan3/parse.cpp:35:
engines/glk/alan3/parse.cpp: In function 'int Glk::Alan3::remapParameterOrder(int, Glk::Alan3::ParameterPosition*)':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::ParameterMapEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/parse.cpp:688:96: note: in expansion of macro 'isEndOfArray'
  688 |         for (parameterMapTable = (ParameterMapEntry *)pointerTo(header->parameterMapAddress); !isEndOfArray(parameterMapTable); parameterMapTable++)
      |                                                                                                ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from ./engines/glk/alan3/parse.h:28,
                 from engines/glk/alan3/parse.cpp:24:
./engines/glk/alan3/acode.h:443:8: note: defined here
  443 | struct ParameterMapEntry {  /* PARAMETER MAPPING TABLE */
      |        ^~~~~~~~~~~~~~~~~
In file included from engines/glk/alan3/parse.cpp:35:
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::ParameterMapEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/parse.cpp:691:13: note: in expansion of macro 'isEndOfArray'
  691 |         if (isEndOfArray(parameterMapTable))
      |             ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from ./engines/glk/alan3/parse.h:28,
                 from engines/glk/alan3/parse.cpp:24:
./engines/glk/alan3/acode.h:443:8: note: defined here
  443 | struct ParameterMapEntry {  /* PARAMETER MAPPING TABLE */
      |        ^~~~~~~~~~~~~~~~~
In file included from engines/glk/alan3/parse.cpp:35:
engines/glk/alan3/parse.cpp: In function 'Glk::Alan3::ElementEntry* Glk::Alan3::elementForParameter(Glk::Alan3::ElementEntry*)':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::ElementEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/parse.cpp:754:17: note: in expansion of macro 'isEndOfArray'
  754 |         while (!isEndOfArray(elms) && elms->code != 0)
      |                 ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from ./engines/glk/alan3/parse.h:28,
                 from engines/glk/alan3/parse.cpp:24:
./engines/glk/alan3/acode.h:425:8: note: defined here
  425 | struct ElementEntry {   /* SYNTAX ELEMENT TABLES */
      |        ^~~~~~~~~~~~
In file included from engines/glk/alan3/parse.cpp:35:
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::ElementEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/parse.cpp:756:13: note: in expansion of macro 'isEndOfArray'
  756 |         if (isEndOfArray(elms))
      |             ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from ./engines/glk/alan3/parse.h:28,
                 from engines/glk/alan3/parse.cpp:24:
./engines/glk/alan3/acode.h:425:8: note: defined here
  425 | struct ElementEntry {   /* SYNTAX ELEMENT TABLES */
      |        ^~~~~~~~~~~~
In file included from engines/glk/alan3/parse.cpp:35:
engines/glk/alan3/parse.cpp: In function 'Glk::Alan3::ElementEntry* Glk::Alan3::elementForEndOfSyntax(Glk::Alan3::ElementEntry*)':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::ElementEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/parse.cpp:763:17: note: in expansion of macro 'isEndOfArray'
  763 |         while (!isEndOfArray(elms) && (Aword)elms->code != EOS)
      |                 ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from ./engines/glk/alan3/parse.h:28,
                 from engines/glk/alan3/parse.cpp:24:
./engines/glk/alan3/acode.h:425:8: note: defined here
  425 | struct ElementEntry {   /* SYNTAX ELEMENT TABLES */
      |        ^~~~~~~~~~~~
In file included from engines/glk/alan3/parse.cpp:35:
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::ElementEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/parse.cpp:765:13: note: in expansion of macro 'isEndOfArray'
  765 |         if (isEndOfArray(elms)) /* No match for EOS! */
      |             ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from ./engines/glk/alan3/parse.h:28,
                 from engines/glk/alan3/parse.cpp:24:
./engines/glk/alan3/acode.h:425:8: note: defined here
  425 | struct ElementEntry {   /* SYNTAX ELEMENT TABLES */
      |        ^~~~~~~~~~~~
In file included from engines/glk/alan3/parse.cpp:35:
engines/glk/alan3/parse.cpp: In function 'Glk::Alan3::ElementEntry* Glk::Alan3::elementForWord(Glk::Alan3::ElementEntry*, Glk::Alan3::Aint)':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::ElementEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/parse.cpp:772:17: note: in expansion of macro 'isEndOfArray'
  772 |         while (!isEndOfArray(elms) && elms->code != wordCode)
      |                 ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from ./engines/glk/alan3/parse.h:28,
                 from engines/glk/alan3/parse.cpp:24:
./engines/glk/alan3/acode.h:425:8: note: defined here
  425 | struct ElementEntry {   /* SYNTAX ELEMENT TABLES */
      |        ^~~~~~~~~~~~
In file included from engines/glk/alan3/parse.cpp:35:
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::ElementEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/parse.cpp:774:13: note: in expansion of macro 'isEndOfArray'
  774 |         if (isEndOfArray(elms))
      |             ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from ./engines/glk/alan3/parse.h:28,
                 from engines/glk/alan3/parse.cpp:24:
./engines/glk/alan3/acode.h:425:8: note: defined here
  425 | struct ElementEntry {   /* SYNTAX ELEMENT TABLES */
      |        ^~~~~~~~~~~~
In file included from engines/glk/alan3/parse.cpp:35:
engines/glk/alan3/parse.cpp: In function 'void Glk::Alan3::checkRestrictedParameters(Glk::Context&, Glk::Alan3::ParameterPosition*, Glk::Alan3::ElementEntry*)':
./engines/glk/alan3/lists.h:36:52: warning: converting a packed 'Glk::Alan3::RestrictionEntry' pointer (alignment 1) to a 'Glk::Alan3::Aword' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
   36 | #define isEndOfArray(x) implementationOfIsEndOfList((Aword *) (x))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/glk/alan3/parse.cpp:883:73: note: in expansion of macro 'isEndOfArray'
  883 |         for (restriction = (RestrictionEntry *) pointerTo(elms->next); !isEndOfArray(restriction); restriction++) {
      |                                                                         ^~~~~~~~~~~~
In file included from ./engines/glk/alan3/types.h:29,
                 from ./engines/glk/alan3/parse.h:28,
                 from engines/glk/alan3/parse.cpp:24:
./engines/glk/alan3/acode.h:408:8: note: defined here
  408 | struct RestrictionEntry {         /* PARAMETER RESTRICTION TABLE */
      |        ^~~~~~~~~~~~~~~~
    C++      engines/glk/alan3/word.o
    C++      engines/glk/alan3/sysdep.o
    C++      engines/glk/alan3/syserr.o
    C++      engines/glk/archetype/array.o
    C++      engines/glk/alan3/utils.o
    C++      engines/glk/archetype/crypt.o
    C++      engines/glk/archetype/expression.o
    C++      engines/glk/archetype/id_table.o
    C++      engines/glk/archetype/error.o
    C++      engines/glk/archetype/heap_sort.o
    C++      engines/glk/archetype/game_stat.o
    C++      engines/glk/archetype/linked_list.o
    C++      engines/glk/archetype/detection.o
    C++      engines/glk/archetype/keywords.o
    C++      engines/glk/archetype/archetype.o
    C++      engines/glk/archetype/interpreter.o
    C++      engines/glk/archetype/misc.o
    C++      engines/glk/archetype/string.o
    C++      engines/glk/archetype/timestamp.o
    C++      engines/glk/archetype/parser.o
    C++      engines/glk/archetype/saveload.o
    C++      engines/glk/archetype/semantic.o
    C++      engines/glk/comprehend/charset.o
    C++      engines/glk/archetype/sys_object.o
    C++      engines/glk/archetype/token.o
    C++      engines/glk/comprehend/debugger.o
    C++      engines/glk/comprehend/dictionary.o
    C++      engines/glk/comprehend/comprehend.o
    C++      engines/glk/comprehend/detection.o
    C++      engines/glk/comprehend/file_buf.o
    C++      engines/glk/comprehend/debugger_dumper.o
engines/glk/comprehend/debugger_dumper.cpp: In member function 'void Glk::Comprehend::DebuggerDumper::dumpWordMap()':
engines/glk/comprehend/debugger_dumper.cpp:255:77: warning: '__builtin___snprintf_chk' output truncated before the last format character [-Wformat-truncation=]
  255 |                                 snprintf(str[j], sizeof(str[j]), "%.2x:%.2x ",
      |                                                                             ^
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./common/func.h:26,
                 from ./common/hashmap.h:46,
                 from ./engines/glk/comprehend/debugger_dumper.h:26,
                 from engines/glk/comprehend/debugger_dumper.cpp:23:
/usr/include/bits/stdio2.h:71:35: note: '__builtin___snprintf_chk' output 7 bytes into a destination of size 6
   71 |   return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   72 |                                    __glibc_objsize (__s), __fmt,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   73 |                                    __va_arg_pack ());
      |                                    ~~~~~~~~~~~~~~~~~
engines/glk/comprehend/debugger_dumper.cpp:253:45: warning: '__builtin_snprintf' output may be truncated before the last format character [-Wformat-truncation=]
  253 |                                          "%s", word[j]->_word);
      |                                             ^
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./common/func.h:26,
                 from ./common/hashmap.h:46,
                 from ./engines/glk/comprehend/debugger_dumper.h:26,
                 from engines/glk/comprehend/debugger_dumper.cpp:23:
/usr/include/bits/stdio2.h:71:35: note: '__builtin_snprintf' output between 1 and 7 bytes into a destination of size 6
   71 |   return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   72 |                                    __glibc_objsize (__s), __fmt,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   73 |                                    __va_arg_pack ());
      |                                    ~~~~~~~~~~~~~~~~~
    C++      engines/glk/comprehend/draw_surface.o
    C++      engines/glk/comprehend/opcode_map.o
    C++      engines/glk/comprehend/game_cc.o
    C++      engines/glk/comprehend/game_oo.o
    C++      engines/glk/comprehend/game_tm.o
    C++      engines/glk/comprehend/game_tr.o
    C++      engines/glk/glulx/float.o
    C++      engines/glk/glulx/accel.o
    C++      engines/glk/comprehend/pics.o
    C++      engines/glk/comprehend/game_data.o
    C++      engines/glk/glulx/funcs.o
    C++      engines/glk/glulx/detection.o
    C++      engines/glk/glulx/gestalt.o
    C++      engines/glk/glulx/exec.o
    C++      engines/glk/glulx/glulx.o
    C++      engines/glk/comprehend/game.o
    C++      engines/glk/glulx/heap.o
    C++      engines/glk/glulx/search.o
    C++      engines/glk/glulx/operand.o
    C++      engines/glk/glulx/glkop.o
    C++      engines/glk/glulx/vm.o
    C++      engines/glk/glulx/string.o
    C++      engines/glk/glulx/serial.o
    C++      engines/glk/hugo/hemedia.o
    C++      engines/glk/hugo/heglk.o
    C++      engines/glk/hugo/detection.o
    C++      engines/glk/hugo/heexpr.o
    C++      engines/glk/hugo/htokens.o
    C++      engines/glk/hugo/heobject.o
    C++      engines/glk/hugo/heres.o
    C++      engines/glk/hugo/heset.o
In file included from /usr/include/string.h:519,
                 from ./common/scummsys.h:120,
                 from ./engines/glk/hugo/hugo.h:28,
                 from engines/glk/hugo/heset.cpp:23:
In function 'char* strncpy(char*, const char*, size_t)',
    inlined from 'void Glk::Hugo::Hugo::RunSet(int)' at engines/glk/hugo/heset.cpp:409:14:
/usr/include/bits/string_fortified.h:95:34: warning: 'char* __builtin_strncpy(char*, const char*, long unsigned int)' specified bound 64 equals destination size [-Wstringop-truncation]
   95 |   return __builtin___strncpy_chk (__dest, __src, __len,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
   96 |                                   __glibc_objsize (__dest));
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~
    C++      engines/glk/hugo/stringfn.o
    C++      engines/glk/hugo/resource_archive.o
engines/glk/hugo/resource_archive.cpp: In static member function 'static bool Glk::Hugo::ResourceArchive::splitName(const Common::String&, Common::String&, Common::String&)':
engines/glk/hugo/resource_archive.cpp:34:24: warning: comparison of integer expressions of different signedness: 'int' and 'const uint32' {aka 'const unsigned int'} [-Wsign-compare]
   34 |         if (commaIndex == Common::String::npos)
      |             ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
    C++      engines/glk/hugo/hugo.o
In file included from ./engines/glk/hugo/hugo.h:34,
                 from engines/glk/hugo/hugo.cpp:23:
./engines/glk/hugo/stringfn.h: In constructor 'Glk::Hugo::Hugo::Hugo(OSystem*, const Glk::GlkGameDescription&)':
./engines/glk/hugo/stringfn.h:45:29: warning: array subscript 2 is above array bounds of 'char [2][1025]' [-Warray-bounds]
   45 |                 Common::fill(&_tempString[0][0], &_tempString[NUM_TEMPSTRINGS][1025], '\0');
      |                 ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./engines/glk/hugo/stringfn.h:39:14: note: while referencing 'Glk::Hugo::StringFunctions::_tempString'
   39 |         char _tempString[NUM_TEMPSTRINGS][1025];
      |              ^~~~~~~~~~~
engines/glk/hugo/hugo.cpp:93:21: warning: array subscript 2 is above array bounds of 'long int [2][1024]' [-Warray-bounds]
   93 |         Common::fill(&resids[0][0], &resids[2][0], 0);
      |         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from engines/glk/hugo/hugo.cpp:23:
./engines/glk/hugo/hugo.h:73:14: note: while referencing 'Glk::Hugo::Hugo::resids'
   73 |         long resids[2][MAXRES];
      |              ^~~~~~
engines/glk/hugo/hugo.cpp:97:21: warning: array subscript 32 is above array bounds of 'char [32][64]' [-Warray-bounds]
   97 |         Common::fill(&context_command[0][0], &context_command[MAX_CONTEXT_COMMANDS][0], 0);
      |         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from engines/glk/hugo/hugo.cpp:23:
./engines/glk/hugo/hugo.h:107:14: note: while referencing 'Glk::Hugo::Hugo::context_command'
  107 |         char context_command[MAX_CONTEXT_COMMANDS][64];
      |              ^~~~~~~~~~~~~~~
engines/glk/hugo/hugo.cpp:101:21: warning: array subscript 1024 is above array bounds of 'int [1024][5]' [-Warray-bounds]
  101 |         Common::fill(&undostack[0][0], &undostack[MAXUNDO][0], 0);
      |         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from engines/glk/hugo/hugo.cpp:23:
./engines/glk/hugo/hugo.h:132:13: note: while referencing 'Glk::Hugo::Hugo::undostack'
  132 |         int undostack[MAXUNDO][5];
      |             ^~~~~~~~~
    C++      engines/glk/hugo/hemisc.o
In file included from /usr/include/string.h:519,
                 from ./common/scummsys.h:120,
                 from ./engines/glk/hugo/hugo.h:28,
                 from engines/glk/hugo/hemisc.cpp:23:
In function 'char* strncpy(char*, const char*, size_t)',
    inlined from 'void Glk::Hugo::Hugo::ContextCommand()' at engines/glk/hugo/hemisc.cpp:558:10:
/usr/include/bits/string_fortified.h:95:34: warning: 'char* __builtin_strncpy(char*, const char*, long unsigned int)' output may be truncated copying 64 bytes from a string of length 1280 [-Wstringop-truncation]
   95 |   return __builtin___strncpy_chk (__dest, __src, __len,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
   96 |                                   __glibc_objsize (__dest));
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~
engines/glk/hugo/hemisc.cpp: In static member function 'static const char* Glk::Hugo::Hugo::PrintHex(long int)':
engines/glk/hugo/hemisc.cpp:1466:25: warning: '%lX' directive writing between 1 and 16 bytes into a region of size 6 [-Wformat-overflow=]
 1466 |         sprintf(hex+h, "%lX", a);
      |                         ^~~
engines/glk/hugo/hemisc.cpp:1466:24: note: directive argument in the range [0, 9223372036854775807]
 1466 |         sprintf(hex+h, "%lX", a);
      |                        ^~~~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/glk/hugo/hugo.h:28,
                 from engines/glk/hugo/hemisc.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 2 and 17 bytes into a destination of size 6
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
In file included from /usr/include/string.h:519,
                 from ./common/scummsys.h:120,
                 from ./engines/glk/hugo/hugo.h:28,
                 from engines/glk/hugo/hemisc.cpp:23:
In function 'char* strncpy(char*, const char*, size_t)',
    inlined from 'void Glk::Hugo::Hugo::GetCommand()' at engines/glk/hugo/hemisc.cpp:883:9:
/usr/include/bits/string_fortified.h:95:34: warning: 'char* __builtin_strncpy(char*, const char*, long unsigned int)' output may be truncated copying 255 bytes from a string of length 1280 [-Wstringop-truncation]
   95 |   return __builtin___strncpy_chk (__dest, __src, __len,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
   96 |                                   __glibc_objsize (__dest));
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~
    C++      engines/glk/jacl/display.o
    C++      engines/glk/jacl/encapsulate.o
    C++      engines/glk/jacl/errors.o
    C++      engines/glk/hugo/herun.o
    C++      engines/glk/jacl/detection.o
    C++      engines/glk/jacl/glk_saver.o
    C++      engines/glk/hugo/heparse.o
engines/glk/hugo/heparse.cpp: In member function 'void Glk::Hugo::Hugo::ParseError(int, int)':
engines/glk/hugo/heparse.cpp:2246:51: warning: '%s' directive writing up to 1280 bytes into a region of size 1014 [-Wformat-overflow=]
 2246 |                         sprintf(line, "Nothing to %s.", parseerr);
      |                                                   ^~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/glk/hugo/hugo.h:28,
                 from engines/glk/hugo/heparse.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 13 and 1293 bytes into a destination of size 1025
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
engines/glk/hugo/heparse.cpp:2205:46: warning: '%s' directive writing up to 1280 bytes into a region of size 1019 [-Wformat-overflow=]
 2205 |                         sprintf(line, "Which %s do you mean, ", !parse_called_twice?parseerr:"exactly");
      |                                              ^~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/glk/hugo/hugo.h:28,
                 from engines/glk/hugo/heparse.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 21 and 1301 bytes into a destination of size 1025
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
engines/glk/hugo/heparse.cpp:2191:63: warning: '%s' directive writing up to 1280 bytes into a region of size 1003 [-Wformat-overflow=]
 2191 |                         sprintf(line, "You haven't seen any \"%s\", nor are you likely to in the near future even if such a thing exists.", parseerr);
      |                                                               ^~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/glk/hugo/hugo.h:28,
                 from engines/glk/hugo/heparse.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 95 and 1375 bytes into a destination of size 1025
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
engines/glk/hugo/heparse.cpp:2182:50: warning: '%s' directive writing up to 1280 bytes into a region of size 1015 [-Wformat-overflow=]
 2182 |                         sprintf(line, "You can't %s multiple objects.", parseerr);
      |                                                  ^~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/glk/hugo/hugo.h:28,
                 from engines/glk/hugo/heparse.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 29 and 1309 bytes into a destination of size 1025
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
engines/glk/hugo/heparse.cpp:2173:65: warning: '%s' directive writing up to 1280 bytes into a region of size 1001 [-Wformat-overflow=]
 2173 |                         sprintf(line, "You can't use the word \"%s\".", parseerr);
      |                                                                 ^~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/glk/hugo/hugo.h:28,
                 from engines/glk/hugo/heparse.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 27 and 1307 bytes into a destination of size 1025
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
In file included from /usr/include/string.h:519,
                 from ./common/scummsys.h:120,
                 from ./engines/glk/hugo/hugo.h:28,
                 from engines/glk/hugo/heparse.cpp:23:
In function 'char* strcat(char*, const char*)',
    inlined from 'int Glk::Hugo::Hugo::MatchCommand()' at engines/glk/hugo/heparse.cpp:436:9:
/usr/include/bits/string_fortified.h:127:33: warning: 'char* __builtin___strcat_chk(char*, const char*, long unsigned int)' accessing 2594 or more bytes at offsets 47240 and 49833 may overlap 1 byte at offset 49833 [-Wrestrict]
  127 |   return __builtin___strcat_chk (__dest, __src, __glibc_objsize (__dest));
      |          ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    C++      engines/glk/jacl/findroute.o
    C++      engines/glk/jacl/jacl.o
    C++      engines/glk/jacl/jpp.o
    C++      engines/glk/jacl/libcsv.o
    C++      engines/glk/jacl/logging.o
    C++      engines/glk/jacl/jacl_main.o
In file included from /usr/include/string.h:519,
                 from ./common/scummsys.h:120,
                 from ./engines/glk/glk.h:26,
                 from ./engines/glk/glk_api.h:26,
                 from ./engines/glk/jacl/jacl.h:28,
                 from engines/glk/jacl/jacl_main.cpp:23:
In function 'char* strncpy(char*, const char*, size_t)',
    inlined from 'void Glk::JACL::get_string(char*)' at engines/glk/jacl/jacl_main.cpp:966:9:
/usr/include/bits/string_fortified.h:95:34: warning: 'char* __builtin_strncpy(char*, const char*, long unsigned int)' output may be truncated copying 255 bytes from a string of length 255 [-Wstringop-truncation]
   95 |   return __builtin___strncpy_chk (__dest, __src, __len,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
   96 |                                   __glibc_objsize (__dest));
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~
    C++      engines/glk/jacl/utils.o
    C++      engines/glk/jacl/resolvers.o
    C++      engines/glk/jacl/parser.o
In file included from /usr/include/string.h:519,
                 from ./common/scummsys.h:120,
                 from ./engines/glk/glk.h:26,
                 from ./engines/glk/glk_api.h:26,
                 from ./engines/glk/jacl/jacl.h:28,
                 from engines/glk/jacl/parser.cpp:23:
In function 'char* strncpy(char*, const char*, size_t)',
    inlined from 'void Glk::JACL::call_functions(const char*)' at engines/glk/jacl/parser.cpp:392:9:
/usr/include/bits/string_fortified.h:95:34: warning: 'char* __builtin_strncpy(char*, const char*, long unsigned int)' output may be truncated copying 80 bytes from a string of length 83 [-Wstringop-truncation]
   95 |   return __builtin___strncpy_chk (__dest, __src, __len,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
   96 |                                   __glibc_objsize (__dest));
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~
    C++      engines/glk/level9/bitmap.o
    C++      engines/glk/level9/level9.o
    C++      engines/glk/jacl/loader.o
    C++      engines/glk/level9/detection.o
    C++      engines/glk/jacl/interpreter.o
In file included from /usr/include/string.h:519,
                 from ./common/scummsys.h:120,
                 from ./engines/glk/glk.h:26,
                 from ./engines/glk/glk_api.h:26,
                 from ./engines/glk/jacl/jacl.h:28,
                 from engines/glk/jacl/interpreter.cpp:23:
In function 'char* strncpy(char*, const char*, size_t)',
    inlined from 'void Glk::JACL::push_stack(int32)' at engines/glk/jacl/interpreter.cpp:2752:10:
/usr/include/bits/string_fortified.h:95:34: warning: 'char* __builtin_strncpy(char*, const char*, long unsigned int)' output may be truncated copying 20 bytes from a string of length 23 [-Wstringop-truncation]
   95 |   return __builtin___strncpy_chk (__dest, __src, __len,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
   96 |                                   __glibc_objsize (__dest));
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'char* strncpy(char*, const char*, size_t)',
    inlined from 'void Glk::JACL::push_stack(int32)' at engines/glk/jacl/interpreter.cpp:2789:13:
/usr/include/bits/string_fortified.h:95:34: warning: 'char* __builtin_strncpy(char*, const char*, long unsigned int)' output may be truncated copying 255 bytes from a string of length 255 [-Wstringop-truncation]
   95 |   return __builtin___strncpy_chk (__dest, __src, __len,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
   96 |                                   __glibc_objsize (__dest));
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'char* strncpy(char*, const char*, size_t)',
    inlined from 'void Glk::JACL::push_proxy()' at engines/glk/jacl/interpreter.cpp:2900:13:
/usr/include/bits/string_fortified.h:95:34: warning: 'char* __builtin_strncpy(char*, const char*, long unsigned int)' output may be truncated copying 255 bytes from a string of length 255 [-Wstringop-truncation]
   95 |   return __builtin___strncpy_chk (__dest, __src, __len,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
   96 |                                   __glibc_objsize (__dest));
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'char* strncpy(char*, const char*, size_t)',
    inlined from 'void Glk::JACL::push_proxy()' at engines/glk/jacl/interpreter.cpp:2897:13:
/usr/include/bits/string_fortified.h:95:34: warning: 'char* __builtin_strncpy(char*, const char*, long unsigned int)' output may be truncated copying 255 bytes from a string of length 255 [-Wstringop-truncation]
   95 |   return __builtin___strncpy_chk (__dest, __src, __len,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
   96 |                                   __glibc_objsize (__dest));
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'char* strncpy(char*, const char*, size_t)',
    inlined from 'void Glk::JACL::pop_stack()' at engines/glk/jacl/interpreter.cpp:2663:9:
/usr/include/bits/string_fortified.h:95:34: warning: 'char* __builtin_strncpy(char*, const char*, long unsigned int)' specified bound 1024 equals destination size [-Wstringop-truncation]
   95 |   return __builtin___strncpy_chk (__dest, __src, __len,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
   96 |                                   __glibc_objsize (__dest));
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'char* strncpy(char*, const char*, size_t)',
    inlined from 'void Glk::JACL::pop_stack()' at engines/glk/jacl/interpreter.cpp:2684:10:
/usr/include/bits/string_fortified.h:95:34: warning: 'char* __builtin_strncpy(char*, const char*, long unsigned int)' output may be truncated copying 80 bytes from a string of length 83 [-Wstringop-truncation]
   95 |   return __builtin___strncpy_chk (__dest, __src, __len,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
   96 |                                   __glibc_objsize (__dest));
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'char* strncpy(char*, const char*, size_t)',
    inlined from 'void Glk::JACL::pop_stack()' at engines/glk/jacl/interpreter.cpp:2685:10:
/usr/include/bits/string_fortified.h:95:34: warning: 'char* __builtin_strncpy(char*, const char*, long unsigned int)' output may be truncated copying 80 bytes from a string of length 83 [-Wstringop-truncation]
   95 |   return __builtin___strncpy_chk (__dest, __src, __len,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
   96 |                                   __glibc_objsize (__dest));
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'char* strncpy(char*, const char*, size_t)',
    inlined from 'int Glk::JACL::execute(const char*)' at engines/glk/jacl/interpreter.cpp:416:9:
/usr/include/bits/string_fortified.h:95:34: warning: 'char* __builtin_strncpy(char*, const char*, long unsigned int)' output may be truncated copying 80 bytes from a string of length 83 [-Wstringop-truncation]
   95 |   return __builtin___strncpy_chk (__dest, __src, __len,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
   96 |                                   __glibc_objsize (__dest));
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'char* strncpy(char*, const char*, size_t)',
    inlined from 'int Glk::JACL::execute(const char*)' at engines/glk/jacl/interpreter.cpp:417:9:
/usr/include/bits/string_fortified.h:95:34: warning: 'char* __builtin_strncpy(char*, const char*, long unsigned int)' output may be truncated copying 80 bytes from a string of length 83 [-Wstringop-truncation]
   95 |   return __builtin___strncpy_chk (__dest, __src, __len,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
   96 |                                   __glibc_objsize (__dest));
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'char* strncpy(char*, const char*, size_t)',
    inlined from 'int Glk::JACL::execute(const char*)' at engines/glk/jacl/interpreter.cpp:1950:13:
/usr/include/bits/string_fortified.h:95:34: warning: 'char* __builtin_strncpy(char*, const char*, long unsigned int)' output may be truncated copying 255 bytes from a string of length 2047 [-Wstringop-truncation]
   95 |   return __builtin___strncpy_chk (__dest, __src, __len,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
   96 |                                   __glibc_objsize (__dest));
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'char* strncpy(char*, const char*, size_t)',
    inlined from 'int Glk::JACL::execute(const char*)' at engines/glk/jacl/interpreter.cpp:1918:14:
/usr/include/bits/string_fortified.h:95:34: warning: 'char* __builtin_strncpy(char*, const char*, long unsigned int)' output may be truncated copying 255 bytes from a string of length 2047 [-Wstringop-truncation]
   95 |   return __builtin___strncpy_chk (__dest, __src, __len,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
   96 |                                   __glibc_objsize (__dest));
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'char* strncpy(char*, const char*, size_t)',
    inlined from 'int Glk::JACL::execute(const char*)' at engines/glk/jacl/interpreter.cpp:890:13:
/usr/include/bits/string_fortified.h:95:34: warning: 'char* __builtin_strncpy(char*, const char*, long unsigned int)' output may be truncated copying 20 bytes from a string of length 1023 [-Wstringop-truncation]
   95 |   return __builtin___strncpy_chk (__dest, __src, __len,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
   96 |                                   __glibc_objsize (__dest));
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~
    C++      engines/glk/magnetic/magnetic.o
engines/glk/magnetic/magnetic.cpp: In constructor 'Glk::Magnetic::Magnetic::Magnetic(OSystem*, const Glk::GlkGameDescription&)':
engines/glk/magnetic/magnetic.cpp:77:21: warning: array subscript 2 is above array bounds of 'Glk::Magnetic::type32 [2][18]' {aka 'unsigned int [2][18]'} [-Warray-bounds]
   77 |         Common::fill(&undo_regs[0][0], &undo_regs[2][0], 0);
      |         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from engines/glk/magnetic/magnetic.cpp:23:
./engines/glk/magnetic/magnetic.h:226:16: note: while referencing 'Glk::Magnetic::Magnetic::undo_regs'
  226 |         type32 undo_regs[2][18], undo_pc, undo_size;
      |                ^~~~~~~~~
    C++      engines/glk/magnetic/detection.o
    C++      engines/glk/quest/detection.o
    C++      engines/glk/quest/geas_glk.o
In file included from ./engines/glk/quest/geas_runner.h:27,
                 from ./engines/glk/quest/geas_glk.h:26,
                 from engines/glk/quest/geas_glk.cpp:23:
./engines/glk/quest/geas_state.h: In member function 'void Glk::Quest::SVarRecord::set(uint, Glk::Quest::String)':
./engines/glk/quest/geas_state.h:85:27: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   85 |                 data[i] = val;
      |                           ^~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from ./engines/glk/quest/geas_glk.h:26,
                 from engines/glk/quest/geas_glk.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./engines/glk/quest/geas_runner.h:27,
                 from ./engines/glk/quest/geas_glk.h:26,
                 from engines/glk/quest/geas_glk.cpp:23:
./engines/glk/quest/geas_state.h: In member function 'void Glk::Quest::SVarRecord::set(Glk::Quest::String)':
./engines/glk/quest/geas_state.h:92:27: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   92 |                 data[0] = val;
      |                           ^~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from ./engines/glk/quest/geas_glk.h:26,
                 from engines/glk/quest/geas_glk.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from engines/glk/quest/geas_glk.cpp:26:
./engines/glk/quest/streams.h: In member function 'Glk::Quest::StringStream& Glk::Quest::StringStream::operator>>(Glk::Quest::String&)':
./engines/glk/quest/streams.h:51:27: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   51 |                 rhs = str();
      |                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from ./engines/glk/quest/geas_glk.h:26,
                 from engines/glk/quest/geas_glk.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_glk.cpp: In member function 'virtual uint Glk::Quest::GeasGlkInterface::make_choice(Glk::Quest::String, Common::Array<Glk::Quest::String>)':
engines/glk/quest/geas_glk.cpp:176:33: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  176 |         s1 = "Choose [1-" + s + "]> ";
      |                                 ^~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from ./engines/glk/quest/geas_glk.h:26,
                 from engines/glk/quest/geas_glk.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_glk.cpp:190:32: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  190 |         s1 = "Chosen: " +  s + "\n";
      |                                ^~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from ./engines/glk/quest/geas_glk.h:26,
                 from engines/glk/quest/geas_glk.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_glk.cpp: In member function 'virtual Glk::Quest::String Glk::Quest::GeasGlkInterface::absolute_name(Glk::Quest::String, Glk::Quest::String) const':
engines/glk/quest/geas_glk.cpp:221:69: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  221 |                 tmp = rel_name.substr(dir_start, dir_end - dir_start);
      |                                                                     ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from ./engines/glk/quest/geas_glk.h:26,
                 from engines/glk/quest/geas_glk.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_glk.cpp:232:39: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  232 |                 rv = rv + "/" + path[i];
      |                                       ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from ./engines/glk/quest/geas_glk.h:26,
                 from engines/glk/quest/geas_glk.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./common/array.h:27,
                 from ./common/memorypool.h:27,
                 from ./common/hashmap.h:53,
                 from ./engines/glk/quest/string.h:26,
                 from ./engines/glk/quest/geas_runner.h:26,
                 from ./engines/glk/quest/geas_glk.h:26,
                 from engines/glk/quest/geas_glk.cpp:23:
./common/algorithm.h: In instantiation of 'Out Common::copy_backward(In, In, Out) [with In = Glk::Quest::String*; Out = Glk::Quest::String*]':
./common/array.h:366:18:   required from 'T* Common::Array<T>::insert_aux(Common::Array<T>::iterator, Common::Array<T>::const_iterator, Common::Array<T>::const_iterator) [with T = Glk::Quest::String; Common::Array<T>::iterator = Glk::Quest::String*; Common::Array<T>::const_iterator = const Glk::Quest::String*]'
./common/array.h:108:4:   required from 'void Common::Array<T>::push_back(const T&) [with T = Glk::Quest::String]'
engines/glk/quest/geas_glk.cpp:211:17:   required from here
./common/algorithm.h:54:24: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   54 |                 *--dst = *--last;
      |                 ~~~~~~~^~~~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from ./engines/glk/quest/geas_glk.h:26,
                 from engines/glk/quest/geas_glk.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./common/array.h:27,
                 from ./common/memorypool.h:27,
                 from ./common/hashmap.h:53,
                 from ./engines/glk/quest/string.h:26,
                 from ./engines/glk/quest/geas_runner.h:26,
                 from ./engines/glk/quest/geas_glk.h:26,
                 from engines/glk/quest/geas_glk.cpp:23:
./common/algorithm.h: In instantiation of 'Out Common::copy(In, In, Out) [with In = const Glk::Quest::String*; Out = Glk::Quest::String*]':
./common/array.h:369:9:   required from 'T* Common::Array<T>::insert_aux(Common::Array<T>::iterator, Common::Array<T>::const_iterator, Common::Array<T>::const_iterator) [with T = Glk::Quest::String; Common::Array<T>::iterator = Glk::Quest::String*; Common::Array<T>::const_iterator = const Glk::Quest::String*]'
./common/array.h:108:4:   required from 'void Common::Array<T>::push_back(const T&) [with T = Glk::Quest::String]'
engines/glk/quest/geas_glk.cpp:211:17:   required from here
./common/algorithm.h:40:24: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   40 |                 *dst++ = *first++;
      |                 ~~~~~~~^~~~~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from ./engines/glk/quest/geas_glk.h:26,
                 from engines/glk/quest/geas_glk.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
    C++      engines/glk/level9/level9_main.o
    C++      engines/glk/level9/os_glk.o
    C++      engines/glk/quest/quest.o
In file included from ./engines/glk/quest/geas_runner.h:27,
                 from ./engines/glk/quest/quest.h:30,
                 from engines/glk/quest/quest.cpp:23:
./engines/glk/quest/geas_state.h: In member function 'void Glk::Quest::SVarRecord::set(uint, Glk::Quest::String)':
./engines/glk/quest/geas_state.h:85:27: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   85 |                 data[i] = val;
      |                           ^~~
In file included from ./engines/glk/quest/quest.h:29,
                 from engines/glk/quest/quest.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./engines/glk/quest/geas_runner.h:27,
                 from ./engines/glk/quest/quest.h:30,
                 from engines/glk/quest/quest.cpp:23:
./engines/glk/quest/geas_state.h: In member function 'void Glk::Quest::SVarRecord::set(Glk::Quest::String)':
./engines/glk/quest/geas_state.h:92:27: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   92 |                 data[0] = val;
      |                           ^~~
In file included from ./engines/glk/quest/quest.h:29,
                 from engines/glk/quest/quest.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from engines/glk/quest/quest.cpp:26:
./engines/glk/quest/streams.h: In member function 'Glk::Quest::StringStream& Glk::Quest::StringStream::operator>>(Glk::Quest::String&)':
./engines/glk/quest/streams.h:51:27: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   51 |                 rhs = str();
      |                           ^
In file included from ./engines/glk/quest/quest.h:29,
                 from engines/glk/quest/quest.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/quest.cpp: In member function 'void Glk::Quest::Quest::playGame()':
engines/glk/quest/quest.cpp:72:38: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   72 |         banner = _runner->get_banner();
      |                                      ^
In file included from ./engines/glk/quest/quest.h:29,
                 from engines/glk/quest/quest.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
    C++      engines/glk/magnetic/glk.o
    C++      engines/glk/quest/geas_file.o
In file included from ./engines/glk/quest/geas_util.h:27,
                 from engines/glk/quest/geas_file.cpp:26:
./engines/glk/quest/streams.h: In member function 'Glk::Quest::StringStream& Glk::Quest::StringStream::operator>>(Glk::Quest::String&)':
./engines/glk/quest/streams.h:51:27: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   51 |                 rhs = str();
      |                           ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./engines/glk/quest/geas_runner.h:27,
                 from ./engines/glk/quest/geas_impl.h:26,
                 from engines/glk/quest/geas_file.cpp:27:
./engines/glk/quest/geas_state.h: In member function 'void Glk::Quest::SVarRecord::set(uint, Glk::Quest::String)':
./engines/glk/quest/geas_state.h:85:27: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   85 |                 data[i] = val;
      |                           ^~~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./engines/glk/quest/geas_runner.h:27,
                 from ./engines/glk/quest/geas_impl.h:26,
                 from engines/glk/quest/geas_file.cpp:27:
./engines/glk/quest/geas_state.h: In member function 'void Glk::Quest::SVarRecord::set(Glk::Quest::String)':
./engines/glk/quest/geas_state.h:92:27: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   92 |                 data[0] = val;
      |                           ^~~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from engines/glk/quest/geas_file.cpp:27:
./engines/glk/quest/geas_impl.h: In member function 'void Glk::Quest::match_binding::set(Glk::Quest::String, uint)':
./engines/glk/quest/geas_impl.h:41:28: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   41 |                 var_text = vt;
      |                            ^~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp: In member function 'void Glk::Quest::GeasFile::get_obj_keys(Glk::Quest::String, Glk::Quest::Set<Glk::Quest::String>&) const':
engines/glk/quest/geas_file.cpp:123:34: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  123 |                 line = gb->data[i];
      |                                  ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp:125:47: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  125 |                 tok = first_token(line, c1, c2);
      |                                               ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp:128:54: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  128 |                         tok = next_token(line, c1, c2);
      |                                                      ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp:152:54: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  152 |                         tok = next_token(line, c1, c2);
      |                                                      ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp: In member function 'void Glk::Quest::GeasFile::get_type_keys(Glk::Quest::String, Glk::Quest::Set<Glk::Quest::String>&) const':
engines/glk/quest/geas_file.cpp:177:34: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  177 |                 line = gb->data[i];
      |                                  ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp:179:47: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  179 |                 tok = first_token(line, c1, c2);
      |                                               ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp:182:54: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  182 |                         tok = next_token(line, c1, c2);
      |                                                      ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp: In member function 'bool Glk::Quest::GeasFile::get_obj_property(Glk::Quest::String, Glk::Quest::String, Glk::Quest::String&) const':
engines/glk/quest/geas_file.cpp:204:21: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  204 |         string_rv = "!";
      |                     ^~~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp:248:54: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  248 |                         tok = next_token(line, c1, c2);
      |                                                      ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp:257:54: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  257 |                         tok = next_token(line, c1, c2);
      |                                                      ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp:268:53: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  268 |                                         string_rv = "";
      |                                                     ^~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp:272:53: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  272 |                                         string_rv = "!";
      |                                                     ^~~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp:276:78: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  276 |                                         string_rv = props[j].substr(index + 1);
      |                                                                              ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp: In member function 'void Glk::Quest::GeasFile::get_type_property(Glk::Quest::String, Glk::Quest::String, bool&, Glk::Quest::String&) const':
engines/glk/quest/geas_file.cpp:304:54: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  304 |                         tok = next_token(line, c1, c2);
      |                                                      ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp:309:37: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  309 |                         string_rv = "";
      |                                     ^~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp:313:61: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  313 |                                 tok = trim(line.substr(0, p));
      |                                                             ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp:315:76: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  315 |                                         string_rv = trim(line.substr(p + 1));
      |                                                                            ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp: In member function 'bool Glk::Quest::GeasFile::obj_of_type(Glk::Quest::String, Glk::Quest::String) const':
engines/glk/quest/geas_file.cpp:372:54: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  372 |                         tok = next_token(line, c1, c2);
      |                                                      ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp: In member function 'bool Glk::Quest::GeasFile::type_of_type(Glk::Quest::String, Glk::Quest::String) const':
engines/glk/quest/geas_file.cpp:401:54: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  401 |                         tok = next_token(line, c1, c2);
      |                                                      ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp: In member function 'bool Glk::Quest::GeasFile::get_obj_action(Glk::Quest::String, Glk::Quest::String, Glk::Quest::String&) const':
engines/glk/quest/geas_file.cpp:413:21: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  413 |         string_rv = "!";
      |                     ^~~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp:441:54: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  441 |                         tok = next_token(line, c1, c2);
      |                                                      ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp:467:54: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  467 |                         tok = next_token(line, c1, c2);
      |                                                      ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp:470:71: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  470 |                                         string_rv = line.substr(c2 + 1);
      |                                                                       ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp:472:53: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  472 |                                         string_rv = "";
      |                                                     ^~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp: In member function 'void Glk::Quest::GeasFile::get_type_action(Glk::Quest::String, Glk::Quest::String, bool&, Glk::Quest::String&) const':
engines/glk/quest/geas_file.cpp:499:54: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  499 |                         tok = next_token(line, c1, c2);
      |                                                      ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp:502:59: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  502 |                                 string_rv = line.substr(c2);
      |                                                           ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp:508:54: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  508 |                         tok = next_token(line, c1, c2);
      |                                                      ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp: In member function 'void Glk::Quest::GeasFile::register_block(Glk::Quest::String, Glk::Quest::String)':
engines/glk/quest/geas_file.cpp:523:32: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  523 |         obj_types[blockname] = blocktype;
      |                                ^~~~~~~~~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp: In member function 'Glk::Quest::String Glk::Quest::GeasFile::static_svar_lookup(Glk::Quest::String) const':
engines/glk/quest/geas_file.cpp:538:63: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  538 |                                 tok = first_token(line, c1, c2);
      |                                                               ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp:541:70: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  541 |                                         tok = next_token(line, c1, c2);
      |                                                                      ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp:552:70: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  552 |                                         tok = next_token(line, c1, c2);
      |                                                                      ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp:555:64: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  555 |                                         rv = param_contents(tok);
      |                                                                ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp: In member function 'Glk::Quest::String Glk::Quest::GeasFile::static_ivar_lookup(Glk::Quest::String) const':
engines/glk/quest/geas_file.cpp:579:63: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  579 |                                 tok = first_token(line, c1, c2);
      |                                                               ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp:582:70: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  582 |                                         tok = next_token(line, c1, c2);
      |                                                                      ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp:592:70: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  592 |                                         tok = next_token(line, c1, c2);
      |                                                                      ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp:595:64: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  595 |                                         rv = param_contents(tok);
      |                                                                ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp: In member function 'Glk::Quest::String Glk::Quest::GeasFile::static_eval(Glk::Quest::String) const':
engines/glk/quest/geas_file.cpp:620:100: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  620 |                                         objname = static_svar_lookup(input.substr(i + 2, k - i - 4));
      |                                                                                                    ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_file.cpp:622:80: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  622 |                                         objname = input.substr(i + 1, k - i - 2);
      |                                                                                ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./engines/glk/quest/string.h:26,
                 from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./common/hashmap.h: In instantiation of 'void Common::HashMap<Key, Val, HashFunc, EqualFunc>::assign(const HM_t&) [with Key = Glk::Quest::String; Val = Glk::Quest::String; HashFunc = Common::IgnoreCase_Hash; EqualFunc = Common::IgnoreCase_EqualTo; Common::HashMap<Key, Val, HashFunc, EqualFunc>::HM_t = Common::HashMap<Glk::Quest::String, Glk::Quest::String, Common::IgnoreCase_Hash, Common::IgnoreCase_EqualTo>]':
./common/hashmap.h:336:2:   required from 'Common::HashMap<Key, Val, HashFunc, EqualFunc>::HashMap(const HM_t&) [with Key = Glk::Quest::String; Val = Glk::Quest::String; HashFunc = Common::IgnoreCase_Hash; EqualFunc = Common::IgnoreCase_EqualTo; Common::HashMap<Key, Val, HashFunc, EqualFunc>::HM_t = Common::HashMap<Glk::Quest::String, Glk::Quest::String, Common::IgnoreCase_Hash, Common::IgnoreCase_EqualTo>]'
engines/glk/quest/geas_file.cpp:230:10:   required from here
./common/hashmap.h:377:47: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  377 |                         _storage[ctr]->_value = map._storage[ctr]->_value;
      |                         ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./common/array.h:27,
                 from ./common/memorypool.h:27,
                 from ./common/hashmap.h:53,
                 from ./engines/glk/quest/string.h:26,
                 from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./common/algorithm.h: In instantiation of 'Out Common::copy_backward(In, In, Out) [with In = Glk::Quest::String*; Out = Glk::Quest::String*]':
./common/array.h:366:18:   required from 'T* Common::Array<T>::insert_aux(Common::Array<T>::iterator, Common::Array<T>::const_iterator, Common::Array<T>::const_iterator) [with T = Glk::Quest::String; Common::Array<T>::iterator = Glk::Quest::String*; Common::Array<T>::const_iterator = const Glk::Quest::String*]'
./common/array.h:108:4:   required from 'void Common::Array<T>::push_back(const T&) [with T = Glk::Quest::String]'
./engines/glk/quest/geas_file.h:49:18:   required from 'void Glk::Quest::Set<T>::insert(T) [with T = Glk::Quest::String]'
engines/glk/quest/geas_file.cpp:136:16:   required from here
./common/algorithm.h:54:24: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   54 |                 *--dst = *--last;
      |                 ~~~~~~~^~~~~~~~~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./common/array.h:27,
                 from ./common/memorypool.h:27,
                 from ./common/hashmap.h:53,
                 from ./engines/glk/quest/string.h:26,
                 from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./common/algorithm.h: In instantiation of 'Out Common::copy(In, In, Out) [with In = const Glk::Quest::String*; Out = Glk::Quest::String*]':
./common/array.h:369:9:   required from 'T* Common::Array<T>::insert_aux(Common::Array<T>::iterator, Common::Array<T>::const_iterator, Common::Array<T>::const_iterator) [with T = Glk::Quest::String; Common::Array<T>::iterator = Glk::Quest::String*; Common::Array<T>::const_iterator = const Glk::Quest::String*]'
./common/array.h:108:4:   required from 'void Common::Array<T>::push_back(const T&) [with T = Glk::Quest::String]'
./engines/glk/quest/geas_file.h:49:18:   required from 'void Glk::Quest::Set<T>::insert(T) [with T = Glk::Quest::String]'
engines/glk/quest/geas_file.cpp:136:16:   required from here
./common/algorithm.h:40:24: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   40 |                 *dst++ = *first++;
      |                 ~~~~~~~^~~~~~~~~~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./common/algorithm.h:28,
                 from ./common/array.h:27,
                 from ./common/memorypool.h:27,
                 from ./common/hashmap.h:53,
                 from ./engines/glk/quest/string.h:26,
                 from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./common/util.h: In instantiation of 'void SWAP(T&, T&) [with T = Glk::Quest::String]':
./common/algorithm.h:182:7:   required from 'T Common::sortPartition(T, T, T, StrictWeakOrdering&) [with T = Glk::Quest::String*; StrictWeakOrdering = Common::Less<Glk::Quest::String>]'
./common/algorithm.h:223:23:   required from 'void Common::sort(T, T, StrictWeakOrdering) [with T = Glk::Quest::String*; StrictWeakOrdering = Common::Less<Glk::Quest::String>]'
./common/algorithm.h:233:6:   required from 'void Common::sort(T*, T*) [with T = Glk::Quest::String]'
./engines/glk/quest/geas_file.h:50:15:   required from 'void Glk::Quest::Set<T>::insert(T) [with T = Glk::Quest::String]'
engines/glk/quest/geas_file.cpp:136:16:   required from here
./common/util.h:68:66: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   68 | template<typename T> inline void SWAP(T &a, T &b) { T tmp = a; a = b; b = tmp; }
      |                                                                ~~^~~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./common/algorithm.h:28,
                 from ./common/array.h:27,
                 from ./common/memorypool.h:27,
                 from ./common/hashmap.h:53,
                 from ./engines/glk/quest/string.h:26,
                 from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./common/util.h:68:73: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   68 | template<typename T> inline void SWAP(T &a, T &b) { T tmp = a; a = b; b = tmp; }
      |                                                                       ~~^~~~~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from engines/glk/quest/geas_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
    C++      engines/glk/quest/geas_util.o
In file included from ./engines/glk/quest/geas_util.h:27,
                 from engines/glk/quest/geas_util.cpp:23:
./engines/glk/quest/streams.h: In member function 'Glk::Quest::StringStream& Glk::Quest::StringStream::operator>>(Glk::Quest::String&)':
./engines/glk/quest/streams.h:51:27: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   51 |                 rhs = str();
      |                           ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from ./engines/glk/quest/geas_util.h:26,
                 from engines/glk/quest/geas_util.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_util.cpp: In function 'int Glk::Quest::eval_int(Glk::Quest::String)':
engines/glk/quest/geas_util.cpp:48:45: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   48 |         tmp = s.substr(index, index2 - index);
      |                                             ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from ./engines/glk/quest/geas_util.h:26,
                 from engines/glk/quest/geas_util.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_util.cpp:83:45: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   83 |         tmp = s.substr(index, index2 - index);
      |                                             ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from ./engines/glk/quest/geas_util.h:26,
                 from engines/glk/quest/geas_util.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./common/array.h:27,
                 from ./common/memorypool.h:27,
                 from ./common/hashmap.h:53,
                 from ./engines/glk/quest/string.h:26,
                 from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from ./engines/glk/quest/geas_util.h:26,
                 from engines/glk/quest/geas_util.cpp:23:
./common/algorithm.h: In instantiation of 'Out Common::copy_backward(In, In, Out) [with In = Glk::Quest::String*; Out = Glk::Quest::String*]':
./common/array.h:366:18:   required from 'T* Common::Array<T>::insert_aux(Common::Array<T>::iterator, Common::Array<T>::const_iterator, Common::Array<T>::const_iterator) [with T = Glk::Quest::String; Common::Array<T>::iterator = Glk::Quest::String*; Common::Array<T>::const_iterator = const Glk::Quest::String*]'
./common/array.h:108:4:   required from 'void Common::Array<T>::push_back(const T&) [with T = Glk::Quest::String]'
engines/glk/quest/geas_util.cpp:181:16:   required from here
./common/algorithm.h:54:24: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   54 |                 *--dst = *--last;
      |                 ~~~~~~~^~~~~~~~~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from ./engines/glk/quest/geas_util.h:26,
                 from engines/glk/quest/geas_util.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./common/array.h:27,
                 from ./common/memorypool.h:27,
                 from ./common/hashmap.h:53,
                 from ./engines/glk/quest/string.h:26,
                 from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from ./engines/glk/quest/geas_util.h:26,
                 from engines/glk/quest/geas_util.cpp:23:
./common/algorithm.h: In instantiation of 'Out Common::copy(In, In, Out) [with In = const Glk::Quest::String*; Out = Glk::Quest::String*]':
./common/array.h:369:9:   required from 'T* Common::Array<T>::insert_aux(Common::Array<T>::iterator, Common::Array<T>::const_iterator, Common::Array<T>::const_iterator) [with T = Glk::Quest::String; Common::Array<T>::iterator = Glk::Quest::String*; Common::Array<T>::const_iterator = const Glk::Quest::String*]'
./common/array.h:108:4:   required from 'void Common::Array<T>::push_back(const T&) [with T = Glk::Quest::String]'
engines/glk/quest/geas_util.cpp:181:16:   required from here
./common/algorithm.h:40:24: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   40 |                 *dst++ = *first++;
      |                 ~~~~~~~^~~~~~~~~~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from ./engines/glk/quest/geas_util.h:26,
                 from engines/glk/quest/geas_util.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
    C++      engines/glk/quest/string.o
    C++      engines/glk/quest/streams.o
In file included from engines/glk/quest/streams.cpp:23:
./engines/glk/quest/streams.h: In member function 'Glk::Quest::StringStream& Glk::Quest::StringStream::operator>>(Glk::Quest::String&)':
./engines/glk/quest/streams.h:51:27: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   51 |                 rhs = str();
      |                           ^
In file included from ./engines/glk/quest/streams.h:26,
                 from engines/glk/quest/streams.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
    C++      engines/glk/magnetic/emu.o
    C++      engines/glk/tads/os_buffer.o
    C++      engines/glk/quest/geas_state.o
In file included from engines/glk/quest/geas_state.cpp:23:
./engines/glk/quest/geas_state.h: In member function 'void Glk::Quest::SVarRecord::set(uint, Glk::Quest::String)':
./engines/glk/quest/geas_state.h:85:27: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   85 |                 data[i] = val;
      |                           ^~~
In file included from ./engines/glk/quest/geas_state.h:26,
                 from engines/glk/quest/geas_state.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from engines/glk/quest/geas_state.cpp:23:
./engines/glk/quest/geas_state.h: In member function 'void Glk::Quest::SVarRecord::set(Glk::Quest::String)':
./engines/glk/quest/geas_state.h:92:27: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   92 |                 data[0] = val;
      |                           ^~~
In file included from ./engines/glk/quest/geas_state.h:26,
                 from engines/glk/quest/geas_state.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./engines/glk/quest/geas_util.h:27,
                 from engines/glk/quest/geas_state.cpp:25:
./engines/glk/quest/streams.h: In member function 'Glk::Quest::StringStream& Glk::Quest::StringStream::operator>>(Glk::Quest::String&)':
./engines/glk/quest/streams.h:51:27: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   51 |                 rhs = str();
      |                           ^
In file included from ./engines/glk/quest/geas_state.h:26,
                 from engines/glk/quest/geas_state.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_state.cpp: In member function 'void Glk::Quest::Serializer::sync(Glk::Quest::String&)':
engines/glk/quest/geas_state.cpp:43:39: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   43 |                 s = String(str.c_str());
      |                                       ^
In file included from ./engines/glk/quest/geas_state.h:26,
                 from engines/glk/quest/geas_state.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_state.cpp: In constructor 'Glk::Quest::GeasState::GeasState(Glk::Quest::GeasInterface&, const Glk::Quest::GeasFile&)':
engines/glk/quest/geas_state.cpp:126:29: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  126 |                 data.name = "game";
      |                             ^~~~~~
In file included from ./engines/glk/quest/geas_state.h:26,
                 from engines/glk/quest/geas_state.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_state.cpp:127:31: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  127 |                 data.parent = "";
      |                               ^~
In file included from ./engines/glk/quest/geas_state.h:26,
                 from engines/glk/quest/geas_state.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_state.cpp:138:32: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  138 |                 data.name = go.name;
      |                                ^~~~
In file included from ./engines/glk/quest/geas_state.h:26,
                 from engines/glk/quest/geas_state.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_state.cpp:139:31: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  139 |                 data.parent = "";
      |                               ^~
In file included from ./engines/glk/quest/geas_state.h:26,
                 from engines/glk/quest/geas_state.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_state.cpp:150:32: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  150 |                 data.name = go.name;
      |                                ^~~~
In file included from ./engines/glk/quest/geas_state.h:26,
                 from engines/glk/quest/geas_state.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_state.cpp:152:39: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  152 |                         data.parent = "";
      |                                       ^~
In file included from ./engines/glk/quest/geas_state.h:26,
                 from engines/glk/quest/geas_state.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_state.cpp:155:63: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  155 |                         data.parent = param_contents(go.parent);
      |                                                               ^
In file included from ./engines/glk/quest/geas_state.h:26,
                 from engines/glk/quest/geas_state.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_state.cpp:172:62: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  172 |                                 tok = next_token(line, c1, c2);
      |                                                              ^
In file included from ./engines/glk/quest/geas_state.h:26,
                 from engines/glk/quest/geas_state.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_state.cpp:176:70: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  176 |                                         interval = param_contents(tok);
      |                                                                      ^
In file included from ./engines/glk/quest/geas_state.h:26,
                 from engines/glk/quest/geas_state.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_state.cpp:181:50: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  181 |                                         status = tok;
      |                                                  ^~~
In file included from ./engines/glk/quest/geas_state.h:26,
                 from engines/glk/quest/geas_state.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_state.cpp:188:30: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  188 |                 tr.name = go.name;
      |                              ^~~~
In file included from ./engines/glk/quest/geas_state.h:26,
                 from engines/glk/quest/geas_state.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_state.cpp:207:62: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  207 |                                 tok = next_token(line, c1, c2);
      |                                                              ^
In file included from ./engines/glk/quest/geas_state.h:26,
                 from engines/glk/quest/geas_state.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_state.cpp:215:51: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  215 |                                         vartype = tok;
      |                                                   ^~~
In file included from ./engines/glk/quest/geas_state.h:26,
                 from engines/glk/quest/geas_state.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_state.cpp:219:62: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  219 |                                 tok = next_token(line, c1, c2);
      |                                                              ^
In file included from ./engines/glk/quest/geas_state.h:26,
                 from engines/glk/quest/geas_state.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_state.cpp:223:67: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  223 |                                         value = param_contents(tok);
      |                                                                   ^
In file included from ./engines/glk/quest/geas_state.h:26,
                 from engines/glk/quest/geas_state.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_state.cpp:232:39: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  232 |                         ivr.name = go.name;
      |                                       ^~~~
In file included from ./engines/glk/quest/geas_state.h:26,
                 from engines/glk/quest/geas_state.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_state.cpp:239:39: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  239 |                         svr.name = go.name;
      |                                       ^~~~
In file included from ./engines/glk/quest/geas_state.h:26,
                 from engines/glk/quest/geas_state.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from engines/glk/quest/geas_state.cpp:23:
./engines/glk/quest/geas_state.h: In instantiation of 'Out Common::copy_backward(In, In, Out) [with In = Glk::Quest::ObjectRecord*; Out = Glk::Quest::ObjectRecord*]':
./common/array.h:366:18:   required from 'T* Common::Array<T>::insert_aux(Common::Array<T>::iterator, Common::Array<T>::const_iterator, Common::Array<T>::const_iterator) [with T = Glk::Quest::ObjectRecord; Common::Array<T>::iterator = Glk::Quest::ObjectRecord*; Common::Array<T>::const_iterator = const Glk::Quest::ObjectRecord*]'
./common/array.h:108:4:   required from 'void Common::Array<T>::push_back(const T&) [with T = Glk::Quest::ObjectRecord]'
engines/glk/quest/geas_state.cpp:130:17:   required from here
./engines/glk/quest/geas_state.h:46:8: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   46 | struct ObjectRecord {
      |        ^~~~~~~~~~~~
In file included from ./engines/glk/quest/geas_state.h:26,
                 from engines/glk/quest/geas_state.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from engines/glk/quest/geas_state.cpp:23:
./engines/glk/quest/geas_state.h:46:8: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   46 | struct ObjectRecord {
      |        ^~~~~~~~~~~~
In file included from ./engines/glk/quest/geas_state.h:26,
                 from engines/glk/quest/geas_state.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./common/array.h:27,
                 from ./common/memorypool.h:27,
                 from ./common/hashmap.h:53,
                 from ./engines/glk/quest/string.h:26,
                 from ./engines/glk/quest/geas_state.h:26,
                 from engines/glk/quest/geas_state.cpp:23:
./common/algorithm.h:54:24: note: synthesized method 'Glk::Quest::ObjectRecord& Glk::Quest::ObjectRecord::operator=(const Glk::Quest::ObjectRecord&)' first required here
   54 |                 *--dst = *--last;
      |                 ~~~~~~~^~~~~~~~~
In file included from engines/glk/quest/geas_state.cpp:23:
./engines/glk/quest/geas_state.h: In instantiation of 'Out Common::copy_backward(In, In, Out) [with In = Glk::Quest::TimerRecord*; Out = Glk::Quest::TimerRecord*]':
./common/array.h:366:18:   required from 'T* Common::Array<T>::insert_aux(Common::Array<T>::iterator, Common::Array<T>::const_iterator, Common::Array<T>::const_iterator) [with T = Glk::Quest::TimerRecord; Common::Array<T>::iterator = Glk::Quest::TimerRecord*; Common::Array<T>::const_iterator = const Glk::Quest::TimerRecord*]'
./common/array.h:108:4:   required from 'void Common::Array<T>::push_back(const T&) [with T = Glk::Quest::TimerRecord]'
engines/glk/quest/geas_state.cpp:192:19:   required from here
./engines/glk/quest/geas_state.h:61:8: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   61 | struct TimerRecord {
      |        ^~~~~~~~~~~
In file included from ./engines/glk/quest/geas_state.h:26,
                 from engines/glk/quest/geas_state.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./common/array.h:27,
                 from ./common/memorypool.h:27,
                 from ./common/hashmap.h:53,
                 from ./engines/glk/quest/string.h:26,
                 from ./engines/glk/quest/geas_state.h:26,
                 from engines/glk/quest/geas_state.cpp:23:
./common/algorithm.h:54:24: note: synthesized method 'Glk::Quest::TimerRecord& Glk::Quest::TimerRecord::operator=(const Glk::Quest::TimerRecord&)' first required here
   54 |                 *--dst = *--last;
      |                 ~~~~~~~^~~~~~~~~
In file included from engines/glk/quest/geas_state.cpp:23:
./engines/glk/quest/geas_state.h: In instantiation of 'Out Common::copy_backward(In, In, Out) [with In = Glk::Quest::IVarRecord*; Out = Glk::Quest::IVarRecord*]':
./common/array.h:366:18:   required from 'T* Common::Array<T>::insert_aux(Common::Array<T>::iterator, Common::Array<T>::const_iterator, Common::Array<T>::const_iterator) [with T = Glk::Quest::IVarRecord; Common::Array<T>::iterator = Glk::Quest::IVarRecord*; Common::Array<T>::const_iterator = const Glk::Quest::IVarRecord*]'
./common/array.h:108:4:   required from 'void Common::Array<T>::push_back(const T&) [with T = Glk::Quest::IVarRecord]'
engines/glk/quest/geas_state.cpp:234:19:   required from here
./engines/glk/quest/geas_state.h:101:8: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  101 | struct IVarRecord {
      |        ^~~~~~~~~~
In file included from ./engines/glk/quest/geas_state.h:26,
                 from engines/glk/quest/geas_state.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./common/array.h:27,
                 from ./common/memorypool.h:27,
                 from ./common/hashmap.h:53,
                 from ./engines/glk/quest/string.h:26,
                 from ./engines/glk/quest/geas_state.h:26,
                 from engines/glk/quest/geas_state.cpp:23:
./common/algorithm.h:54:24: note: synthesized method 'Glk::Quest::IVarRecord& Glk::Quest::IVarRecord::operator=(const Glk::Quest::IVarRecord&)' first required here
   54 |                 *--dst = *--last;
      |                 ~~~~~~~^~~~~~~~~
In file included from engines/glk/quest/geas_state.cpp:23:
./engines/glk/quest/geas_state.h: In instantiation of 'Out Common::copy_backward(In, In, Out) [with In = Glk::Quest::SVarRecord*; Out = Glk::Quest::SVarRecord*]':
./common/array.h:366:18:   required from 'T* Common::Array<T>::insert_aux(Common::Array<T>::iterator, Common::Array<T>::const_iterator, Common::Array<T>::const_iterator) [with T = Glk::Quest::SVarRecord; Common::Array<T>::iterator = Glk::Quest::SVarRecord*; Common::Array<T>::const_iterator = const Glk::Quest::SVarRecord*]'
./common/array.h:108:4:   required from 'void Common::Array<T>::push_back(const T&) [with T = Glk::Quest::SVarRecord]'
engines/glk/quest/geas_state.cpp:241:19:   required from here
./engines/glk/quest/geas_state.h:67:8: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   67 | struct SVarRecord {
      |        ^~~~~~~~~~
In file included from ./engines/glk/quest/geas_state.h:26,
                 from engines/glk/quest/geas_state.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./common/array.h:27,
                 from ./common/memorypool.h:27,
                 from ./common/hashmap.h:53,
                 from ./engines/glk/quest/string.h:26,
                 from ./engines/glk/quest/geas_state.h:26,
                 from engines/glk/quest/geas_state.cpp:23:
./common/algorithm.h:54:24: note: synthesized method 'Glk::Quest::SVarRecord& Glk::Quest::SVarRecord::operator=(const Glk::Quest::SVarRecord&)' first required here
   54 |                 *--dst = *--last;
      |                 ~~~~~~~^~~~~~~~~
    C++      engines/glk/scott/detection.o
    C++      engines/glk/tads/os_banners.o
    C++      engines/glk/tads/detection.o
    C++      engines/glk/tads/os_glk.o
    C++      engines/glk/tads/tads.o
    C++      engines/glk/tads/os_frob_tads.o
    C++      engines/glk/tads/os_parse.o
    C++      engines/glk/tads/tads2/command_line.o
    C++      engines/glk/tads/tads2/character_map.o
    C++      engines/glk/scott/scott.o
    C++      engines/glk/tads/tads2/data.o
    C++      engines/glk/tads/tads2/error_message.o
    C++      engines/glk/tads/tads2/error.o
    C++      engines/glk/tads/tads2/debug.o
    C++      engines/glk/tads/tads2/error_handling.o
    C++      engines/glk/quest/read_file.o
In file included from ./engines/glk/quest/geas_util.h:27,
                 from engines/glk/quest/read_file.cpp:24:
./engines/glk/quest/streams.h: In member function 'Glk::Quest::StringStream& Glk::Quest::StringStream::operator>>(Glk::Quest::String&)':
./engines/glk/quest/streams.h:51:27: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   51 |                 rhs = str();
      |                           ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./engines/glk/quest/geas_runner.h:27,
                 from engines/glk/quest/read_file.cpp:26:
./engines/glk/quest/geas_state.h: In member function 'void Glk::Quest::SVarRecord::set(uint, Glk::Quest::String)':
./engines/glk/quest/geas_state.h:85:27: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   85 |                 data[i] = val;
      |                           ^~~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./engines/glk/quest/geas_runner.h:27,
                 from engines/glk/quest/read_file.cpp:26:
./engines/glk/quest/geas_state.h: In member function 'void Glk::Quest::SVarRecord::set(Glk::Quest::String)':
./engines/glk/quest/geas_state.h:92:27: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   92 |                 data[0] = val;
      |                           ^~~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp: In function 'Glk::Quest::String Glk::Quest::nth_token(Glk::Quest::String, int)':
engines/glk/quest/read_file.cpp:81:42: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   81 |                 rv = next_token(s, x1, x2);
      |                                          ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp: In member function 'void Glk::Quest::GeasFile::read_into(const Common::Array<Glk::Quest::String>&, Glk::Quest::String, uint, bool, const Glk::Quest::reserved_words&, const Glk::Quest::reserved_words&)':
engines/glk/quest/read_file.cpp:150:28: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  150 |         out_block.parent = in_parent;
      |                            ^~~~~~~~~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:155:73: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  155 |         String blocktype = out_block.blocktype = next_token(line, t1, t2);  // "object", or the like
      |                                                                         ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:162:34: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  162 |                 out_block.name = "game";
      |                                  ^~~~~~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:165:53: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  165 |                 out_block.name = param_contents(name);
      |                                                     ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:186:40: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  186 |                 line = in_data[cur_line];
      |                                        ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:205:63: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  205 |                                 line = "properties <" + tok + ">";
      |                                                               ^~~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:208:92: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  208 |                                 line = "properties <" + tok + "=" + param_contents(rest) + ">";
      |                                                                                            ^~~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:218:79: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  218 |                                                 rest = next_token(line, t1, t2);
      |                                                                               ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:222:88: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  222 |                                                         line = lhs + "on anything> " + rhs;
      |                                                                                        ^~~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:225:108: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  225 |                                                         line = lhs + "on " + param_contents(rest) + "> " + rhs;
      |                                                                                                            ^~~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:228:76: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  228 |                                                         line = "ERROR: " + line;
      |                                                                            ^~~~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:233:91: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  233 |                                                 line = lhs + "anything> " + line.substr(t2);
      |                                                                                           ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:235:106: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  235 |                                                 line = lhs + param_contents(rest) + "> " + line.substr(t2);
      |                                                                                                          ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:237:88: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  237 |                                                 line = "action <use> " + line.substr(t1);
      |                                                                                        ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:245:79: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  245 |                                                 rest = next_token(line, t1, t2);
      |                                                                               ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:249:88: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  249 |                                                         line = lhs + "to anything> " + rhs;
      |                                                                                        ^~~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:251:108: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  251 |                                                         line = lhs + "to " + param_contents(rest) + "> " + rhs;
      |                                                                                                            ^~~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:254:76: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  254 |                                                         line = "ERROR: " + line;
      |                                                                            ^~~~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:259:91: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  259 |                                                 line = lhs + "anything> " + line.substr(t2);
      |                                                                                           ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:261:106: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  261 |                                                 line = lhs + param_contents(rest) + "> " + line.substr(t2);
      |                                                                                                          ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:263:89: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  263 |                                                 line = "action <give> " + line.substr(t1);
      |                                                                                         ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:265:88: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  265 |                                         line = "action <" + tok + "> " + line.substr(t1);
      |                                                                                        ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:272:55: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  272 |                         tok = first_token(line, t1, t2);
      |                                                       ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:275:63: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  275 |                                 rest = next_token(line, t1, t2);
      |                                                               ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp: In constructor 'Glk::Quest::GeasFile::GeasFile(const Common::Array<Glk::Quest::String>&, Glk::Quest::GeasInterface*)':
engines/glk/quest/read_file.cpp:332:54: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  332 |                                         parenttype = blocktype;
      |                                                      ^~~~~~~~~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:333:71: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  333 |                                         parentname = nth_token(v[i], 3);
      |                                                                       ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp: In function 'bool Glk::Quest::decompile(Glk::Quest::String, Common::Array<Glk::Quest::String>&)':
engines/glk/quest/read_file.cpp:492:44: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  492 |                                 cur_line = "";
      |                                            ^~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:495:44: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  495 |                                 cur_line = "";
      |                                            ^~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:507:36: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  507 |                         cur_line = "";
      |                                    ^~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:509:52: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  509 |                         tok = compilation_tokens[ch];
      |                                                    ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp: In function 'Common::Array<Glk::Quest::String> Glk::Quest::split_lines(Glk::Quest::String)':
engines/glk/quest/read_file.cpp:582:39: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  582 |                                 tmp = "";
      |                                       ^~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp: In function 'void Glk::Quest::handle_includes(const Common::Array<Glk::Quest::String>&, Glk::Quest::String, Common::Array<Glk::Quest::String>&, Glk::Quest::GeasInterface*)':
engines/glk/quest/read_file.cpp:674:34: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  674 |                 line = in_data[ln];
      |                                  ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:675:59: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  675 |                 tok = first_token(line, tok_start, tok_end);
      |                                                           ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:677:66: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  677 |                         tok = next_token(line, tok_start, tok_end);
      |                                                                  ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp: In function 'bool Glk::Quest::preprocess(Common::Array<Glk::Quest::String>, Glk::Quest::String, Common::Array<Glk::Quest::String>&, Glk::Quest::GeasInterface*)':
engines/glk/quest/read_file.cpp:723:63: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  723 |                 tok = first_token(v2[line], tok_start, tok_end);
      |                                                               ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:725:70: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  725 |                         tok = next_token(v2[line], tok_start, tok_end);
      |                                                                      ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:736:51: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  736 |                                 tok = tok + " " + tmp;
      |                                                   ^~~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:745:63: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  745 |                 tok = first_token(v2[line], tok_start, tok_end);
      |                                                               ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:757:78: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  757 |                                 tok = next_token(v2[line], tok_start, tok_end);
      |                                                                              ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:759:98: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  759 |                                         tok = tok + " " + next_token(v2[line], tok_start, tok_end);
      |                                                                                                  ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:813:76: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  813 |                         tok = next_token(v[line], tok_start, tok_end, false);
      |                                                                            ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:816:83: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  816 |                                 tok = next_token(v[line], tok_start, tok_end, true);
      |                                                                                   ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:821:75: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  821 |                                         tok = tok.substr(1, tok.size() - 2);
      |                                                                           ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:832:81: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  832 |                                                               str.substr(tok_end);
      |                                                                                 ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:835:67: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  835 |                                                         v[line] = str;
      |                                                                   ^~~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:857:77: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  857 |                                         v[line] = v[line].substr(0, start_ch);
      |                                                                             ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:907:45: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  907 |                                 str = v[line];
      |                                             ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:962:79: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  962 |                         rv[rv.size() - 1] = rv[rv.size() - 1] + " " + trim(str);
      |                                                                               ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/read_file.cpp:967:39: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  967 |                         str = trim(str);
      |                                       ^
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./engines/glk/quest/string.h:26,
                 from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./common/hashmap.h: In instantiation of 'void Common::HashMap<Key, Val, HashFunc, EqualFunc>::assign(const HM_t&) [with Key = Glk::Quest::String; Val = Glk::Quest::String; HashFunc = Common::IgnoreCase_Hash; EqualFunc = Common::IgnoreCase_EqualTo; Common::HashMap<Key, Val, HashFunc, EqualFunc>::HM_t = Common::HashMap<Glk::Quest::String, Glk::Quest::String, Common::IgnoreCase_Hash, Common::IgnoreCase_EqualTo>]':
./common/hashmap.h:336:2:   required from 'Common::HashMap<Key, Val, HashFunc, EqualFunc>::HashMap(const HM_t&) [with Key = Glk::Quest::String; Val = Glk::Quest::String; HashFunc = Common::IgnoreCase_Hash; EqualFunc = Common::IgnoreCase_EqualTo; Common::HashMap<Key, Val, HashFunc, EqualFunc>::HM_t = Common::HashMap<Glk::Quest::String, Glk::Quest::String, Common::IgnoreCase_Hash, Common::IgnoreCase_EqualTo>]'
./engines/glk/quest/geas_file.h:66:8:   required from here
./common/hashmap.h:377:47: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  377 |                         _storage[ctr]->_value = map._storage[ctr]->_value;
      |                         ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/geas_file.h: In instantiation of 'Out Common::copy_backward(In, In, Out) [with In = Glk::Quest::GeasBlock*; Out = Glk::Quest::GeasBlock*]':
./common/array.h:366:18:   required from 'T* Common::Array<T>::insert_aux(Common::Array<T>::iterator, Common::Array<T>::const_iterator, Common::Array<T>::const_iterator) [with T = Glk::Quest::GeasBlock; Common::Array<T>::iterator = Glk::Quest::GeasBlock*; Common::Array<T>::const_iterator = const Glk::Quest::GeasBlock*]'
./common/array.h:108:4:   required from 'void Common::Array<T>::push_back(const T&) [with T = Glk::Quest::GeasBlock]'
engines/glk/quest/read_file.cpp:146:18:   required from here
./engines/glk/quest/geas_file.h:54:8: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   54 | struct GeasBlock {
      |        ^~~~~~~~~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/geas_file.h:54:8: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   54 | struct GeasBlock {
      |        ^~~~~~~~~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/geas_file.h:54:8: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   54 | struct GeasBlock {
      |        ^~~~~~~~~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./common/array.h:27,
                 from ./common/memorypool.h:27,
                 from ./common/hashmap.h:53,
                 from ./engines/glk/quest/string.h:26,
                 from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./common/algorithm.h:54:24: note: synthesized method 'Glk::Quest::GeasBlock& Glk::Quest::GeasBlock::operator=(const Glk::Quest::GeasBlock&)' first required here
   54 |                 *--dst = *--last;
      |                 ~~~~~~~^~~~~~~~~
./common/algorithm.h: In instantiation of 'Out Common::copy_backward(In, In, Out) [with In = Glk::Quest::String*; Out = Glk::Quest::String*]':
./common/array.h:366:18:   required from 'T* Common::Array<T>::insert_aux(Common::Array<T>::iterator, Common::Array<T>::const_iterator, Common::Array<T>::const_iterator) [with T = Glk::Quest::String; Common::Array<T>::iterator = Glk::Quest::String*; Common::Array<T>::const_iterator = const Glk::Quest::String*]'
./common/array.h:108:4:   required from 'void Common::Array<T>::push_back(const T&) [with T = Glk::Quest::String]'
engines/glk/quest/read_file.cpp:163:21:   required from here
./common/algorithm.h:54:24: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./common/array.h:27,
                 from ./common/memorypool.h:27,
                 from ./common/hashmap.h:53,
                 from ./engines/glk/quest/string.h:26,
                 from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./common/algorithm.h: In instantiation of 'Out Common::copy(In, In, Out) [with In = const Glk::Quest::String*; Out = Glk::Quest::String*]':
./common/array.h:369:9:   required from 'T* Common::Array<T>::insert_aux(Common::Array<T>::iterator, Common::Array<T>::const_iterator, Common::Array<T>::const_iterator) [with T = Glk::Quest::String; Common::Array<T>::iterator = Glk::Quest::String*; Common::Array<T>::const_iterator = const Glk::Quest::String*]'
./common/array.h:108:4:   required from 'void Common::Array<T>::push_back(const T&) [with T = Glk::Quest::String]'
engines/glk/quest/read_file.cpp:163:21:   required from here
./common/algorithm.h:40:24: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   40 |                 *dst++ = *first++;
      |                 ~~~~~~~^~~~~~~~~~
In file included from ./engines/glk/quest/geas_file.h:26,
                 from ./engines/glk/quest/read_file.h:26,
                 from engines/glk/quest/read_file.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
    C++      engines/glk/tads/tads2/list.o
    C++      engines/glk/tads/tads2/get_string.o
    C++      engines/glk/tads/tads2/ltk.o
    C++      engines/glk/tads/tads2/line_source_file.o
    C++      engines/glk/tads/tads2/memory_cache_heap.o
    C++      engines/glk/tads/tads2/memory_cache.o
engines/glk/tads/tads2/memory_cache.cpp: In function 'Glk::TADS::TADS2::uchar* Glk::TADS::TADS2::mcmhalo(Glk::TADS::TADS2::mcmcx1def*)':
engines/glk/tads/tads2/memory_cache.cpp:809:13: warning: variable 'err' set but not used [-Wunused-but-set-variable]
  809 |     int     err;
      |             ^~~
    C++      engines/glk/tads/tads2/memory_cache_swap.o
    C++      engines/glk/tads/tads2/os.o
    C++      engines/glk/tads/tads2/file_io.o
    C++      engines/glk/tads/tads2/built_in.o
    C++      engines/glk/tads/tads2/object.o
    C++      engines/glk/tads/tads2/play.o
    C++      engines/glk/tads/tads2/execute_command.o
    C++      engines/glk/tads/tads2/post_compilation.o
    C++      engines/glk/tads/tads2/runtime_app.o
    C++      engines/glk/tads/tads2/qa_scriptor.o
engines/glk/tads/tads2/qa_scriptor.cpp: In function 'char* Glk::TADS::TADS2::qasgets(char*, int)':
engines/glk/tads/tads2/qa_scriptor.cpp:108:27: warning: comparison is always false due to limited range of data type [-Wtype-limits]
  108 |         } else if ((int)c == EOF) {
      |                           ^
    C++      engines/glk/tads/tads2/runstat.o
    C++      engines/glk/tads/tads2/tads2.o
    C++      engines/glk/tads/tads2/regex.o
engines/glk/tads/tads2/regex.cpp: In function 'int Glk::TADS::TADS2::re_compile_and_search(Glk::TADS::TADS2::re_context*, const char*, size_t, const char*, size_t, int*)':
engines/glk/tads/tads2/regex.cpp:1544:11: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'Glk::TADS::TADS2::re_group_register' {aka 'struct Glk::TADS::TADS2::_re_group_register'}; use assignment or value-initialization instead [-Wclass-memaccess]
 1544 |     memset(ctx->regs, 0, sizeof(ctx->regs));
      |     ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from engines/glk/tads/tads2/regex.cpp:70:
./engines/glk/tads/tads2/regex.h:49:16: note: 'Glk::TADS::TADS2::re_group_register' {aka 'struct Glk::TADS::TADS2::_re_group_register'} declared here
   49 | typedef struct _re_group_register
      |                ^~~~~~~~~~~~~~~~~~
engines/glk/tads/tads2/regex.cpp: In function 'int Glk::TADS::TADS2::re_compile_and_match(Glk::TADS::TADS2::re_context*, const char*, size_t, const char*, size_t)':
engines/glk/tads/tads2/regex.cpp:1576:11: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'Glk::TADS::TADS2::re_group_register' {aka 'struct Glk::TADS::TADS2::_re_group_register'}; use assignment or value-initialization instead [-Wclass-memaccess]
 1576 |     memset(ctx->regs, 0, sizeof(ctx->regs));
      |     ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from engines/glk/tads/tads2/regex.cpp:70:
./engines/glk/tads/tads2/regex.h:49:16: note: 'Glk::TADS::TADS2::re_group_register' {aka 'struct Glk::TADS::TADS2::_re_group_register'} declared here
   49 | typedef struct _re_group_register
      |                ^~~~~~~~~~~~~~~~~~
    C++      engines/glk/tads/tads2/runtime_driver.o
    C++      engines/glk/tads/tads2/output.o
    C++      engines/glk/tads/tads2/tokenizer_hash.o
    C++      engines/glk/tads/tads3/tads3.o
    C++      engines/glk/zcode/bitmap_font.o
    C++      engines/glk/tads/tads2/vocabulary.o
    C++      engines/glk/tads/tads2/tokenizer.o
    C++      engines/glk/zcode/config.o
    C++      engines/glk/zcode/zcode.o
    C++      engines/glk/zcode/mem.o
    C++      engines/glk/zcode/pics.o
    C++      engines/glk/zcode/glk_interface.o
    C++      engines/glk/zcode/pics_decoder.o
    C++      engines/glk/zcode/detection.o
    C++      engines/glk/tads/tads2/run.o
engines/glk/tads/tads2/run.cpp: In function 'void Glk::TADS::TADS2::runexe(Glk::TADS::TADS2::runcxdef*, Glk::TADS::TADS2::uchar*, Glk::TADS::TADS2::objnum, Glk::TADS::TADS2::objnum, Glk::TADS::TADS2::prpnum, int)':
engines/glk/tads/tads2/run.cpp:1562:42: warning: variable 'stkp' set but not used [-Wunused-but-set-variable]
 1562 |                                 runsdef *stkp;
      |                                          ^~~~
engines/glk/tads/tads2/run.cpp:1904:40: warning: variable 'instr' set but not used [-Wunused-but-set-variable]
 1904 |                                 uchar  instr;
      |                                        ^~~~~
    C++      engines/glk/zcode/processor_buffer.o
    C++      engines/glk/zcode/processor_maths.o
    C++      engines/glk/zcode/processor_input.o
    C++      engines/glk/zcode/processor.o
engines/glk/zcode/processor.cpp: In member function 'void Glk::ZCode::Processor::call(Glk::ZCode::zword, int, Glk::ZCode::zword*, int)':
engines/glk/zcode/processor.cpp:350:17: warning: this 'if' clause does not guard... [-Wmisleading-indentation]
  350 |                 if (h_version <= V4)            // V1 to V4 games provide default
      |                 ^~
engines/glk/zcode/processor.cpp:353:25: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
  353 |                         *--_sp = (zword)((argc-- > 0) ? args[i] : value);
      |                         ^
    C++      engines/glk/zcode/processor_mem.o
    C++      engines/glk/zcode/processor_table.o
    C++      engines/glk/zcode/processor_objects.o
    C++      engines/glk/zcode/processor_variables.o
    C++      engines/glk/zcode/processor_screen.o
    C++      engines/glk/zcode/processor_streams.o
    C++      engines/glk/zcode/processor_text.o
    C++      engines/glk/zcode/processor_windows.o
    C++      engines/glk/zcode/screen.o
    C++      engines/glk/zcode/sound_folder.o
    C++      engines/glk/zcode/quetzal.o
    C++      engines/gnap/datarchive.o
    C++      engines/glk/zcode/windows.o
    C++      engines/gnap/debugger.o
    C++      engines/glk/tads/tads2/vocabulary_parser.o
    C++      engines/gnap/character.o
    C++      engines/gnap/detection.o
    C++      engines/glk/quest/geas_runner.o
In file included from ./engines/glk/quest/geas_runner.h:27,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/geas_state.h: In member function 'void Glk::Quest::SVarRecord::set(uint, Glk::Quest::String)':
./engines/glk/quest/geas_state.h:85:27: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   85 |                 data[i] = val;
      |                           ^~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./engines/glk/quest/geas_runner.h:27,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/geas_state.h: In member function 'void Glk::Quest::SVarRecord::set(Glk::Quest::String)':
./engines/glk/quest/geas_state.h:92:27: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   92 |                 data[0] = val;
      |                           ^~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./engines/glk/quest/geas_util.h:27,
                 from engines/glk/quest/geas_runner.cpp:26:
./engines/glk/quest/streams.h: In member function 'Glk::Quest::StringStream& Glk::Quest::StringStream::operator>>(Glk::Quest::String&)':
./engines/glk/quest/streams.h:51:27: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   51 |                 rhs = str();
      |                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from engines/glk/quest/geas_runner.cpp:28:
./engines/glk/quest/geas_impl.h: In member function 'void Glk::Quest::match_binding::set(Glk::Quest::String, uint)':
./engines/glk/quest/geas_impl.h:41:28: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   41 |                 var_text = vt;
      |                            ^~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp: In member function 'void Glk::Quest::geas_implementation::set_svar(Glk::Quest::String, uint, Glk::Quest::String)':
engines/glk/quest/geas_runner.cpp:102:28: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  102 |                 svr.name = varname;
      |                            ^~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:116:88: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  116 |                                                 script = trim(go.data[j].substr(c2 + 1));
      |                                                                                        ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp: In member function 'void Glk::Quest::geas_implementation::set_ivar(Glk::Quest::String, uint, int)':
engines/glk/quest/geas_runner.cpp:201:28: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  201 |                 ivr.name = varname;
      |                            ^~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:216:88: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  216 |                                                 script = trim(go.data[j].substr(c2 + 1));
      |                                                                                        ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp: In member function 'bool Glk::Quest::geas_implementation::get_obj_action(Glk::Quest::String, Glk::Quest::String, Glk::Quest::String&) const':
engines/glk/quest/geas_runner.cpp:269:54: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  269 |                         tok = next_token(line, c1, c2);
      |                                                      ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:272:50: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  272 |                         rv = trim(line.substr(c2));
      |                                                  ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp: In member function 'bool Glk::Quest::geas_implementation::get_obj_property(Glk::Quest::String, Glk::Quest::String, Glk::Quest::String&) const':
engines/glk/quest/geas_runner.cpp:298:45: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  298 |                                 string_rv = "!";
      |                                             ^~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:303:45: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  303 |                                 string_rv = "";
      |                                             ^~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:308:65: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  308 |                                 string_rv = dat.substr(index + 1);
      |                                                                 ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp: In member function 'void Glk::Quest::geas_implementation::move(Glk::Quest::String, Glk::Quest::String)':
engines/glk/quest/geas_runner.cpp:331:48: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  331 |                         state.objs[i].parent = dest;
      |                                                ^~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp: In member function 'void Glk::Quest::geas_implementation::goto_room(Glk::Quest::String)':
engines/glk/quest/geas_runner.cpp:350:26: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  350 |         state.location = room;
      |                          ^~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp: In member function 'void Glk::Quest::geas_implementation::display_error(Glk::Quest::String, Glk::Quest::String)':
engines/glk/quest/geas_runner.cpp:367:31: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  367 |                         tmp = "it";
      |                               ^~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:371:31: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  371 |                         tmp = "it";
      |                               ^~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:386:47: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  386 |                 tok = first_token(line, c1, c2);
      |                                               ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:389:54: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  389 |                         tok = next_token(line, c1, c2);
      |                                                      ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp: In member function 'Glk::Quest::String Glk::Quest::geas_implementation::displayed_name(Glk::Quest::String) const':
engines/glk/quest/geas_runner.cpp:460:22: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  460 |                 rv = tmp;
      |                      ^~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:464:51: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  464 |                                 rv = gf.blocks[i].name;
      |                                                   ^~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp: In member function 'Common::Array<Common::Array<Glk::Quest::String> > Glk::Quest::geas_implementation::get_places(Glk::Quest::String)':
engines/glk/quest/geas_runner.cpp:488:34: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  488 |                 line = gb->data[i];
      |                                  ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:489:47: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  489 |                 tok = first_token(line, c1, c2);
      |                                               ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:491:54: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  491 |                         tok = next_token(line, c1, c2);
      |                                                      ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:505:55: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  505 |                                 dest = trim(dest_param);
      |                                                       ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:507:69: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  507 |                                 dest = trim(dest_param.substr(j + 1));
      |                                                                     ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:508:70: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  508 |                                 prefix = trim(dest_param.substr(0, j));
      |                                                                      ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:529:39: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  529 |                 line = state.exits[i].dest;
      |                                       ^~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:530:47: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  530 |                 tok = first_token(line, c1, c2);
      |                                               ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:532:54: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  532 |                         tok = next_token(line, c1, c2);
      |                                                      ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:535:54: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  535 |                         tok = next_token(line, c1, c2);
      |                                                      ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:537:49: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  537 |                         tok = param_contents(tok);
      |                                                 ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:552:54: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  552 |                         tok = next_token(line, c1, c2);
      |                                                      ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:554:54: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  554 |                         tok = next_token(line, c1, c2);
      |                                                      ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp: In member function 'Glk::Quest::String Glk::Quest::geas_implementation::exit_dest(Glk::Quest::String, Glk::Quest::String, bool*) const':
engines/glk/quest/geas_runner.cpp:579:55: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  579 |                         tok = first_token(line, c1, c2);
      |                                                       ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:584:54: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  584 |                         tok = next_token(line, c1, c2);
      |                                                      ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:588:54: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  588 |                         tok = next_token(line, c1, c2);
      |                                                      ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:618:47: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  618 |                 tok = first_token(line, c1, c2);
      |                                               ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:621:54: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  621 |                         tok = next_token(line, c1, c2);
      |                                                      ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp: In member function 'void Glk::Quest::geas_implementation::look()':
engines/glk/quest/geas_runner.cpp:650:35: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  650 |                         in_desc = tmp;
      |                                   ^~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:652:35: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  652 |                         in_desc = "You are in";
      |                                   ^~~~~~~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:655:58: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  655 |                 if ((tmp = get_svar("quest.formatobjects")) != "")
      |                                                          ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:658:57: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  658 |                 if ((tmp = get_svar("quest.doorways.out")) != "")
      |                                                         ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:660:58: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  660 |                 if ((tmp = get_svar("quest.doorways.dirs")) != "")
      |                                                          ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:663:60: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  663 |                 if ((tmp = get_svar("quest.doorways.places")) != "")
      |                                                            ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:665:53: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  665 |                 if ((tmp = get_svar("quest.lookdesc")) != "")
      |                                                     ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./engines/glk/quest/geas_runner.h:27,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/geas_state.h: In member function 'Glk::Quest::GeasState& Glk::Quest::GeasState::operator=(Glk::Quest::GeasState&&)':
./engines/glk/quest/geas_state.h:160:8: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  160 | struct GeasState {
      |        ^~~~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp: In member function 'virtual void Glk::Quest::geas_implementation::set_game(const Glk::Quest::String&)':
engines/glk/quest/geas_runner.cpp:683:34: note: synthesized method 'Glk::Quest::GeasState& Glk::Quest::GeasState::operator=(Glk::Quest::GeasState&&)' first required here
  683 |         state = GeasState(*gi, gf);
      |                                  ^
engines/glk/quest/geas_runner.cpp:705:63: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  705 |                         tok = next_token(s, tok_start, tok_end);
      |                                                               ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:713:63: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  713 |                         tok = next_token(s, tok_start, tok_end);
      |                                                               ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:716:71: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  716 |                                 tok = next_token(s, tok_start, tok_end);
      |                                                                       ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:724:71: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  724 |                                 tok = next_token(s, tok_start, tok_end);
      |                                                                       ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:733:63: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  733 |                         tok = next_token(s, tok_start, tok_end);
      |                                                               ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:741:63: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  741 |                         tok = next_token(s, tok_start, tok_end);
      |                                                               ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:755:63: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  755 |                         tok = next_token(s, tok_start, tok_end);
      |                                                               ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:759:68: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  759 |                                 state.location = param_contents(tok);
      |                                                                    ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp: In member function 'void Glk::Quest::geas_implementation::regen_var_objects()':
engines/glk/quest/geas_runner.cpp:805:33: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  805 |                 objname = objs[i];
      |                                 ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:807:32: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  807 |                         main = objname;
      |                                ^~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:808:26: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  808 |                 print1 = main;
      |                          ^~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:809:40: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  809 |                 print2 = "|b" + main + "|xb";
      |                                        ^~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:811:49: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  811 |                         print1 = prefix + " " + print1;
      |                                                 ^~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:812:49: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  812 |                         print2 = prefix + " " + print2;
      |                                                 ^~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:815:49: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  815 |                         print1 = print1 + " " + suffix;
      |                                                 ^~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:816:49: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  816 |                         print2 = print2 + " " + suffix;
      |                                                 ^~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:818:33: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  818 |                 qobjs = qobjs + print1;
      |                                 ^~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:819:35: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  819 |                 qfobjs = qfobjs + print2;
      |                                   ^~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:821:41: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  821 |                         qobjs = qobjs + ", ";
      |                                         ^~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:822:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  822 |                         qfobjs = qfobjs + ", ";
      |                                           ^~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:824:41: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  824 |                         qobjs = qobjs + " and ";
      |                                         ^~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:825:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  825 |                         qfobjs = qfobjs + " and ";
      |                                           ^~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp: In member function 'void Glk::Quest::geas_implementation::regen_var_room()':
engines/glk/quest/geas_runner.cpp:837:36: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  837 |                 formatroom = state.location;
      |                                    ^~~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:838:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  838 |         formatroom = "|cr" + formatroom + "|cb";
      |                                           ^~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:840:42: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  840 |                 formatroom = tmp + " " + formatroom;
      |                                          ^~~~~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:842:49: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  842 |                 formatroom = formatroom + " " + tmp;
      |                                                 ^~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp: In member function 'void Glk::Quest::geas_implementation::regen_var_look()':
engines/glk/quest/geas_runner.cpp:892:28: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  892 |                 look_tag = "";
      |                            ^~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp: In member function 'void Glk::Quest::geas_implementation::regen_var_dirs()':
engines/glk/quest/geas_runner.cpp:905:42: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  905 |                 exits = "|b" + dirs[0] + "|xb";
      |                                          ^~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:908:58: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  908 |                         exits = exits + "|b" + dirs[i] + "|xb";
      |                                                          ^~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:910:49: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  910 |                                 exits = exits + ", ";
      |                                                 ^~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:912:49: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  912 |                                 exits = exits + " or ";
      |                                                 ^~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:935:64: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  935 |                         prefix = trim(out_dest.substr(0, i - 1));
      |                                                                ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:936:63: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  936 |                         out_dest = trim(out_dest.substr(i + 1));
      |                                                               ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:948:44: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  948 |                         tmp = "|b" + tmp + "|xb";
      |                                            ^~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:950:59: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  950 |                         tmp = prefix + " |b" + out_dest + "|xb";
      |                                                           ^~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:952:49: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  952 |                         tmp = "|b" + out_dest + "|xb";
      |                                                 ^~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:965:61: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  965 |                         printed_places = current_places[i][0];
      |                                                             ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:967:85: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  967 |                         printed_places = printed_places + ", " + current_places[i][0];
      |                                                                                     ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:969:87: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  969 |                         printed_places = printed_places + " or " + current_places[i][0];
      |                                                                                       ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:971:88: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  971 |                         printed_places = printed_places + ", or " + current_places[i][0];
      |                                                                                        ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp: In member function 'Glk::Quest::String Glk::Quest::geas_implementation::substitute_synonyms(Glk::Quest::String) const':
engines/glk/quest/geas_runner.cpp:1005:101: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1005 |                                                 s = s.substr(0, k) + rhs + s.substr(k + lhs.length());
      |                                                                                                     ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp: In member function 'virtual Glk::Quest::String Glk::Quest::geas_implementation::get_banner()':
engines/glk/quest/geas_runner.cpp:1028:46: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1028 |                 tok = next_token(line, c1, c2);
      |                                              ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1029:46: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1029 |                 tok = next_token(line, c1, c2);
      |                                              ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1031:48: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1031 |                         banner = eval_param(tok);
      |                                                ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1034:50: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1034 |                                 line = gb->data[i];
      |                                                  ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1037:79: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1037 |                                         is_param(tok = next_token(line, c1, c2))) {
      |                                                                               ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1044:50: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1044 |                                 line = gb->data[i];
      |                                                  ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1047:79: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1047 |                                         is_param(tok = next_token(line, c1, c2))) {
      |                                                                               ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./engines/glk/quest/geas_runner.h:27,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/geas_state.h: In member function 'Glk::Quest::GeasState& Glk::Quest::GeasState::operator=(const Glk::Quest::GeasState&)':
./engines/glk/quest/geas_state.h:160:8: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  160 | struct GeasState {
      |        ^~~~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp: In member function 'virtual void Glk::Quest::geas_implementation::run_command(Glk::Quest::String)':
engines/glk/quest/geas_runner.cpp:1080:42: note: synthesized method 'Glk::Quest::GeasState& Glk::Quest::GeasState::operator=(const Glk::Quest::GeasState&)' first required here
 1080 |                 state = undo_buffer.peek();
      |                                          ^
engines/glk/quest/geas_runner.cpp:1099:41: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1099 |         s = substitute_synonyms(lcase(s));
      |                                         ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1110:42: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1110 |                         line = gb->data[i];
      |                                          ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1111:55: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1111 |                         tok = first_token(line, c1, c2);
      |                                                       ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1115:62: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1115 |                                 tok = next_token(line, c1, c2);
      |                                                              ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1135:50: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1135 |                                 line = gb->data[i];
      |                                                  ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1136:63: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1136 |                                 tok = first_token(line, c1, c2);
      |                                                               ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1140:70: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1140 |                                         tok = next_token(line, c1, c2);
      |                                                                      ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1170:42: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1170 |                         line = gb->data[i];
      |                                          ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1171:55: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1171 |                         tok = first_token(line, c1, c2);
      |                                                       ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1175:62: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1175 |                                 tok = next_token(line, c1, c2);
      |                                                              ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1193:50: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1193 |                                 line = gb->data[i];
      |                                                  ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1194:63: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1194 |                                 tok = first_token(line, c1, c2);
      |                                                               ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1198:70: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1198 |                                         tok = next_token(line, c1, c2);
      |                                                                      ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp: In member function 'Glk::Quest::match_rv Glk::Quest::geas_implementation::match_command(Glk::Quest::String, uint, Glk::Quest::String, uint, Glk::Quest::match_rv) const':
engines/glk/quest/geas_runner.cpp:1256:35: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1256 |                         varname = "";
      |                                   ^~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp: In member function 'bool Glk::Quest::geas_implementation::match_object(Glk::Quest::String, Glk::Quest::String, bool) const':
engines/glk/quest/geas_runner.cpp:1314:25: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1314 |                 alias = name;
      |                         ^~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1323:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1323 |                         line = gb->data[ln];
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1324:55: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1324 |                         tok = first_token(line, c1, c2);
      |                                                       ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1327:62: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1327 |                                 tok = next_token(line, c1, c2);
      |                                                              ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp: In member function 'bool Glk::Quest::geas_implementation::dereference_vars(Common::Array<Glk::Quest::match_binding>&, const Common::Array<Glk::Quest::String>&, bool) const':
engines/glk/quest/geas_runner.cpp:1360:56: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1360 |                                 bindings[i].var_text = obj_name;
      |                                                        ^~~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1361:85: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1361 |                                 bindings[i].var_name = bindings[i].var_name.substr(1);
      |                                                                                     ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp: In member function 'Glk::Quest::String Glk::Quest::geas_implementation::get_obj_name(Glk::Quest::String, const Common::Array<Glk::Quest::String>&, bool) const':
engines/glk/quest/geas_runner.cpp:1384:48: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1384 |                                 printed_name = oname;
      |                                                ^~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1386:48: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1386 |                                 printed_name = tmp;
      |                                                ^~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp: In member function 'bool Glk::Quest::geas_implementation::run_commands(Glk::Quest::String, const Glk::Quest::GeasBlock*, bool)':
engines/glk/quest/geas_runner.cpp:1419:44: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1419 |                         line = room->data[i];
      |                                            ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1420:55: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1420 |                         tok = first_token(line, c1, c2);
      |                                                       ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1423:62: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1423 |                                 tok = next_token(line, c1, c2);
      |                                                              ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp: In member function 'bool Glk::Quest::geas_implementation::try_match(Glk::Quest::String, bool, bool)':
engines/glk/quest/geas_runner.cpp:1536:39: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1536 |                                 tmp = "it";
      |                                       ^~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1539:39: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1539 |                                 tmp = "it";
      |                                       ^~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1638:50: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1638 |                                 line = gb->data[i];
      |                                                  ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1639:63: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1639 |                                 tok = first_token(line, c1, c2);
      |                                                               ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1643:70: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1643 |                                         tok = next_token(line, c1, c2);
      |                                                                      ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1646:78: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1646 |                                                 tok = next_token(line, c1, c2);
      |                                                                              ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1698:24: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1698 |                 line = "";
      |                        ^~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1704:50: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1704 |                                 line = gb->data[i];
      |                                                  ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1727:74: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1727 |                                         tmp = line.substr(c1, c2 - c1 + 1);
      |                                                                          ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1730:65: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1730 |                                         tmp = param_contents(tmp);
      |                                                                 ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1747:86: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1747 |                         if ((tok = exit_dest(state.location, dir_names[i], &is_script)) == "") {
      |                                                                                      ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1810:34: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1810 |                 line = gb->data[0];
      |                                  ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1811:47: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1811 |                 tok = first_token(line, c1, c2);  // game
      |                                               ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1812:46: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1812 |                 tok = next_token(line, c1, c2);  // name
      |                                              ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1813:46: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1813 |                 tok = next_token(line, c1, c2);  // <whatever>
      |                                              ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1819:42: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1819 |                         line = gb->data[i];
      |                                          ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1823:71: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1823 |                                 is_param(tok = next_token(line, c1, c2)))
      |                                                                       ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1828:42: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1828 |                         line = gb->data[i];
      |                                          ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1832:71: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1832 |                                 is_param(tok = next_token(line, c1, c2)))
      |                                                                       ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1837:42: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1837 |                         line = gb->data[i];
      |                                          ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1841:71: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1841 |                                 is_param(tok = next_token(line, c1, c2)))
      |                                                                       ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1846:42: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1846 |                         line = gb->data[i];
      |                                          ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1850:71: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1850 |                                 is_param(tok = next_token(line, c1, c2)))
      |                                                                       ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp: In member function 'void Glk::Quest::geas_implementation::run_script_as(Glk::Quest::String, Glk::Quest::String)':
engines/glk/quest/geas_runner.cpp:1867:25: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1867 |         backup_object = this_object;
      |                         ^~~~~~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1868:23: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1868 |         this_object = obj;
      |                       ^~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1870:23: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1870 |         this_object = backup_object;
      |                       ^~~~~~~~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp: In member function 'void Glk::Quest::geas_implementation::run_script(Glk::Quest::String, Glk::Quest::String&)':
engines/glk/quest/geas_runner.cpp:1884:36: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1884 |         tok = first_token(s, c1, c2);
      |                                    ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1901:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1901 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1906:37: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1906 |                 tok = eval_param(tok);
      |                                     ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1921:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1921 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1930:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1930 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1935:37: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1935 |                 tok = eval_param(tok);
      |                                     ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1944:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1944 |                         line = gb->data[ln];
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1945:55: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1945 |                         tok = first_token(line, c1, c2);
      |                                                       ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1948:62: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1948 |                                 tok = next_token(line, c1, c2);
      |                                                              ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1950:66: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1950 |                                         question = eval_param(tok);
      |                                                                  ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1956:62: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1956 |                                 tok = next_token(line, c1, c2);
      |                                                              ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1983:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1983 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1988:51: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1988 |                         tok = next_token(s, c1, c2);
      |                                                   ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1990:39: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1990 |                                 dir = tok;
      |                                       ^~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1991:59: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1991 |                                 tok = next_token(s, c1, c2);
      |                                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:1998:45: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 1998 |                         tok = eval_param(tok);
      |                                             ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2026:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2026 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2035:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2035 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2040:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2040 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2045:37: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2045 |                 tok = eval_param(tok);
      |                                     ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2062:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2062 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2079:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2079 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2098:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2098 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2108:31: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2108 |                 this_object = obj;
      |                               ^~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2114:31: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2114 |                 this_object = old_object;
      |                               ^~~~~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2124:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2124 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2129:37: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2129 |                 tok = eval_param(tok);
      |                                     ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2135:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2135 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2140:37: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2140 |                 tok = eval_param(tok);
      |                                     ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2161:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2161 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2175:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2175 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2188:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2188 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2194:59: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2194 |                                 tok = next_token(s, c1, c2);
      |                                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2208:67: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2208 |                                         tok = trim(eval_param(tok));
      |                                                                   ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2236:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2236 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2245:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2245 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2250:37: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2250 |                 tok = eval_param(tok);
      |                                     ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2262:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2262 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2283:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2283 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2292:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2292 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2305:51: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2305 |                         tok = next_token(s, c1, c2);
      |                                                   ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2319:51: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2319 |                         tok = next_token(s, c1, c2);
      |                                                   ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2340:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2340 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2345:37: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2345 |                 tok = eval_param(tok);
      |                                     ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2350:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2350 |                         varname = trim(tok);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2353:60: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2353 |                         varname = trim(tok.substr(0, index));
      |                                                            ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2365:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2365 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2370:37: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2370 |                 tok = eval_param(tok);
      |                                     ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2395:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2395 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2400:37: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2400 |                 tok = eval_param(tok);
      |                                     ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2411:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2411 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2440:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2440 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2475:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2475 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2488:46: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2488 |                         val = trim_braces(val);
      |                                              ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2496:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2496 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2504:51: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2504 |                 while ((tok = next_token(s, c1, c2)) != "") {
      |                                                   ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2526:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2526 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2528:44: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2528 |                         rv = eval_param(tok);
      |                                            ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2535:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2535 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2544:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2544 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2553:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2553 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2555:45: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2555 |                         tok = eval_param(tok);
      |                                             ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2564:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2564 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2567:51: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2567 |                         tok = next_token(s, c1, c2);
      |                                                   ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2572:45: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2572 |                         tok = eval_param(tok);
      |                                             ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2592:35: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2592 |                         vartype = tok;
      |                                   ^~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2593:51: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2593 |                         tok = next_token(s, c1, c2);
      |                                                   ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2603:37: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2603 |                 tok = eval_param(tok);
      |                                     ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2610:51: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2610 |                                         vartype = "numeric";
      |                                                   ^~~~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2616:59: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2616 |                                                 vartype = "String";
      |                                                           ^~~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2632:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2632 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2641:37: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2641 |                 tok = eval_param(tok);
      |                                     ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2649:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2649 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2658:37: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2658 |                 tok = eval_param(tok);
      |                                     ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2673:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2673 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2690:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2690 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2692:45: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2692 |                         tok = eval_param(tok);
      |                                             ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2713:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2713 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2719:45: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2719 |                         tok = eval_param(tok);
      |                                             ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp: In member function 'bool Glk::Quest::geas_implementation::eval_conds(Glk::Quest::String)':
engines/glk/quest/geas_runner.cpp:2742:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2742 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2747:44: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2747 |                 tok = first_token(s, c1, c2);
      |                                            ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2749:51: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2749 |                         tok = next_token(s, c1, c2);
      |                                                   ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp: In member function 'bool Glk::Quest::geas_implementation::eval_cond(Glk::Quest::String)':
engines/glk/quest/geas_runner.cpp:2766:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2766 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2771:37: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2771 |                 tok = eval_param(tok);
      |                                     ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2783:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2783 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2788:37: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2788 |                 tok = eval_param(tok);
      |                                     ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2793:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2793 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2816:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2816 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2821:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2821 |                 tok = trim(eval_param(tok));
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2826:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2826 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2832:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2832 |                 tok = trim(eval_param(tok));
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2841:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2841 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2847:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2847 |                 tok = trim(eval_param(tok));
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2860:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2860 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2865:37: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2865 |                 tok = eval_param(tok);
      |                                     ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2908:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2908 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2913:37: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2913 |                 tok = eval_param(tok);
      |                                     ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2925:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2925 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:2948:43: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 2948 |                 tok = next_token(s, c1, c2);
      |                                           ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp: In member function 'Glk::Quest::v2string Glk::Quest::geas_implementation::get_room_contents(Glk::Quest::String)':
engines/glk/quest/geas_runner.cpp:3243:49: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 3243 |                         objname = state.objs[i].name;
      |                                                 ^~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:3250:54: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 3250 |                                         print_name = objname;
      |                                                      ^~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:3261:49: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 3261 |                                         otype = "object";
      |                                                 ^~~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp: In member function 'virtual Glk::Quest::vstring Glk::Quest::geas_implementation::get_status_vars()':
engines/glk/quest/geas_runner.cpp:3285:41: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 3285 |                         line = gb.data[j];
      |                                         ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:3287:55: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 3287 |                         tok = first_token(line, c1, c2);
      |                                                       ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:3290:62: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 3290 |                                 tok = next_token(line, c1, c2);
      |                                                              ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:3295:70: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 3295 |                                         tok = next_token(line, c1, c2);
      |                                                                      ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:3300:48: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 3300 |                                         disp = tok;
      |                                                ^~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:3304:62: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 3304 |                                 tok = next_token(line, c1, c2);
      |                                                              ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:3313:51: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 3313 |                         disp = param_contents(disp);
      |                                                   ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:3318:95: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 3318 |                                                 outval = outval + string_int(get_ivar(gb.name));
      |                                                                                               ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:3321:83: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 3321 |                                                 outval = outval + get_svar(gb.name);
      |                                                                                   ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:3329:95: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 3329 |                                                 outval = outval + disp.substr(j + 1, k - j - 1);
      |                                                                                               ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:3332:65: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 3332 |                                         outval = outval + disp[j];
      |                                                                 ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp: In member function 'Glk::Quest::String Glk::Quest::geas_implementation::eval_string(Glk::Quest::String)':
engines/glk/quest/geas_runner.cpp:3381:86: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 3381 |                         rv = rv + displayed_name(get_svar(s.substr(i + 2, j - i - 2)));
      |                                                                                      ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:3471:61: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 3471 |                                 func_eval = run_function(tmp);
      |                                                             ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:3480:94: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 3480 |                                         func_eval = run_function(f_name, split_f_args(f_args));
      |                                                                                              ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:3483:35: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 3483 |                         rv = rv + func_eval;
      |                                   ^~~~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp: In member function 'virtual void Glk::Quest::geas_implementation::tick_timers()':
engines/glk/quest/geas_runner.cpp:3515:66: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 3515 |                                                 line = gb->data[j];
      |                                                                  ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:3516:79: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 3516 |                                                 tok = first_token(line, c1, c2);
      |                                                                               ^
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp: In member function 'Glk::Quest::GeasResult Glk::Quest::GeasInterface::print_formatted(Glk::Quest::String, bool)':
engines/glk/quest/geas_runner.cpp:3578:59: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 3578 |                                         cur_style.color = "#ffff00";
      |                                                           ^~~~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:3581:59: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 3581 |                                         cur_style.color = "#00ff00";
      |                                                           ^~~~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:3584:59: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 3584 |                                         cur_style.color = "#0000ff";
      |                                                           ^~~~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:3587:59: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 3587 |                                         cur_style.color = "#ff0000";
      |                                                           ^~~~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp:3590:59: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 3590 |                                         cur_style.color = "";
      |                                                           ^~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
engines/glk/quest/geas_runner.cpp: In member function 'void Glk::Quest::GeasInterface::set_default_font(Glk::Quest::String)':
engines/glk/quest/geas_runner.cpp:3673:24: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
 3673 |         default_font = font;
      |                        ^~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./engines/glk/quest/string.h:26,
                 from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./common/hashmap.h: In instantiation of 'void Common::HashMap<Key, Val, HashFunc, EqualFunc>::assign(const HM_t&) [with Key = Glk::Quest::String; Val = Glk::Quest::String; HashFunc = Common::IgnoreCase_Hash; EqualFunc = Common::IgnoreCase_EqualTo; Common::HashMap<Key, Val, HashFunc, EqualFunc>::HM_t = Common::HashMap<Glk::Quest::String, Glk::Quest::String, Common::IgnoreCase_Hash, Common::IgnoreCase_EqualTo>]':
./common/hashmap.h:234:3:   required from 'Common::HashMap<Key, Val, HashFunc, EqualFunc>::HM_t& Common::HashMap<Key, Val, HashFunc, EqualFunc>::operator=(const HM_t&) [with Key = Glk::Quest::String; Val = Glk::Quest::String; HashFunc = Common::IgnoreCase_Hash; EqualFunc = Common::IgnoreCase_EqualTo; Common::HashMap<Key, Val, HashFunc, EqualFunc>::HM_t = Common::HashMap<Glk::Quest::String, Glk::Quest::String, Common::IgnoreCase_Hash, Common::IgnoreCase_EqualTo>]'
./engines/glk/quest/geas_file.h:66:8:   required from here
./common/hashmap.h:377:47: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  377 |                         _storage[ctr]->_value = map._storage[ctr]->_value;
      |                         ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./engines/glk/quest/geas_runner.h:27,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/geas_state.h: In instantiation of 'Out Common::copy_backward(In, In, Out) [with In = Glk::Quest::SVarRecord*; Out = Glk::Quest::SVarRecord*]':
./common/array.h:366:18:   required from 'T* Common::Array<T>::insert_aux(Common::Array<T>::iterator, Common::Array<T>::const_iterator, Common::Array<T>::const_iterator) [with T = Glk::Quest::SVarRecord; Common::Array<T>::iterator = Glk::Quest::SVarRecord*; Common::Array<T>::const_iterator = const Glk::Quest::SVarRecord*]'
./common/array.h:108:4:   required from 'void Common::Array<T>::push_back(const T&) [with T = Glk::Quest::SVarRecord]'
engines/glk/quest/geas_runner.cpp:104:24:   required from here
./engines/glk/quest/geas_state.h:67:8: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   67 | struct SVarRecord {
      |        ^~~~~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./common/array.h:27,
                 from ./common/memorypool.h:27,
                 from ./common/hashmap.h:53,
                 from ./engines/glk/quest/string.h:26,
                 from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./common/algorithm.h:54:24: note: synthesized method 'Glk::Quest::SVarRecord& Glk::Quest::SVarRecord::operator=(const Glk::Quest::SVarRecord&)' first required here
   54 |                 *--dst = *--last;
      |                 ~~~~~~~^~~~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:27,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/geas_state.h: In instantiation of 'Out Common::copy_backward(In, In, Out) [with In = Glk::Quest::IVarRecord*; Out = Glk::Quest::IVarRecord*]':
./common/array.h:366:18:   required from 'T* Common::Array<T>::insert_aux(Common::Array<T>::iterator, Common::Array<T>::const_iterator, Common::Array<T>::const_iterator) [with T = Glk::Quest::IVarRecord; Common::Array<T>::iterator = Glk::Quest::IVarRecord*; Common::Array<T>::const_iterator = const Glk::Quest::IVarRecord*]'
./common/array.h:108:4:   required from 'void Common::Array<T>::push_back(const T&) [with T = Glk::Quest::IVarRecord]'
engines/glk/quest/geas_runner.cpp:203:24:   required from here
./engines/glk/quest/geas_state.h:101:8: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
  101 | struct IVarRecord {
      |        ^~~~~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./common/array.h:27,
                 from ./common/memorypool.h:27,
                 from ./common/hashmap.h:53,
                 from ./engines/glk/quest/string.h:26,
                 from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./common/algorithm.h:54:24: note: synthesized method 'Glk::Quest::IVarRecord& Glk::Quest::IVarRecord::operator=(const Glk::Quest::IVarRecord&)' first required here
   54 |                 *--dst = *--last;
      |                 ~~~~~~~^~~~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:27,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/geas_state.h: In instantiation of 'Out Common::copy_backward(In, In, Out) [with In = Glk::Quest::PropertyRecord*; Out = Glk::Quest::PropertyRecord*]':
./common/array.h:366:18:   required from 'T* Common::Array<T>::insert_aux(Common::Array<T>::iterator, Common::Array<T>::const_iterator, Common::Array<T>::const_iterator) [with T = Glk::Quest::PropertyRecord; Common::Array<T>::iterator = Glk::Quest::PropertyRecord*; Common::Array<T>::const_iterator = const Glk::Quest::PropertyRecord*]'
./common/array.h:108:4:   required from 'void Common::Array<T>::push_back(const T&) [with T = Glk::Quest::PropertyRecord]'
engines/glk/quest/geas_runner.cpp:316:23:   required from here
./engines/glk/quest/geas_state.h:39:8: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   39 | struct PropertyRecord {
      |        ^~~~~~~~~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./engines/glk/quest/geas_runner.h:27,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/geas_state.h:39:8: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   39 | struct PropertyRecord {
      |        ^~~~~~~~~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./common/array.h:27,
                 from ./common/memorypool.h:27,
                 from ./common/hashmap.h:53,
                 from ./engines/glk/quest/string.h:26,
                 from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./common/algorithm.h:54:24: note: synthesized method 'Glk::Quest::PropertyRecord& Glk::Quest::PropertyRecord::operator=(const Glk::Quest::PropertyRecord&)' first required here
   54 |                 *--dst = *--last;
      |                 ~~~~~~~^~~~~~~~~
./common/algorithm.h: In instantiation of 'Out Common::copy_backward(In, In, Out) [with In = Glk::Quest::String*; Out = Glk::Quest::String*]':
./common/array.h:366:18:   required from 'T* Common::Array<T>::insert_aux(Common::Array<T>::iterator, Common::Array<T>::const_iterator, Common::Array<T>::const_iterator) [with T = Glk::Quest::String; Common::Array<T>::iterator = Glk::Quest::String*; Common::Array<T>::const_iterator = const Glk::Quest::String*]'
./common/array.h:108:4:   required from 'void Common::Array<T>::push_back(const T&) [with T = Glk::Quest::String]'
engines/glk/quest/geas_runner.cpp:515:17:   required from here
./common/algorithm.h:54:24: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./common/array.h:27,
                 from ./common/memorypool.h:27,
                 from ./common/hashmap.h:53,
                 from ./engines/glk/quest/string.h:26,
                 from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./common/algorithm.h: In instantiation of 'Out Common::copy(In, In, Out) [with In = const Glk::Quest::String*; Out = Glk::Quest::String*]':
./common/array.h:369:9:   required from 'T* Common::Array<T>::insert_aux(Common::Array<T>::iterator, Common::Array<T>::const_iterator, Common::Array<T>::const_iterator) [with T = Glk::Quest::String; Common::Array<T>::iterator = Glk::Quest::String*; Common::Array<T>::const_iterator = const Glk::Quest::String*]'
./common/array.h:108:4:   required from 'void Common::Array<T>::push_back(const T&) [with T = Glk::Quest::String]'
engines/glk/quest/geas_runner.cpp:515:17:   required from here
./common/algorithm.h:40:24: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   40 |                 *dst++ = *first++;
      |                 ~~~~~~~^~~~~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from engines/glk/quest/geas_runner.cpp:28:
./engines/glk/quest/geas_impl.h: In instantiation of 'Out Common::copy_backward(In, In, Out) [with In = Glk::Quest::match_binding*; Out = Glk::Quest::match_binding*]':
./common/array.h:366:18:   required from 'T* Common::Array<T>::insert_aux(Common::Array<T>::iterator, Common::Array<T>::const_iterator, Common::Array<T>::const_iterator) [with T = Glk::Quest::match_binding; Common::Array<T>::iterator = Glk::Quest::match_binding*; Common::Array<T>::const_iterator = const Glk::Quest::match_binding*]'
./common/array.h:108:4:   required from 'void Common::Array<T>::push_back(const T&) [with T = Glk::Quest::match_binding]'
engines/glk/quest/geas_runner.cpp:1254:25:   required from here
./engines/glk/quest/geas_impl.h:33:8: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   33 | struct match_binding {
      |        ^~~~~~~~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from engines/glk/quest/geas_runner.cpp:28:
./engines/glk/quest/geas_impl.h:33:8: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   33 | struct match_binding {
      |        ^~~~~~~~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./common/array.h:27,
                 from ./common/memorypool.h:27,
                 from ./common/hashmap.h:53,
                 from ./engines/glk/quest/string.h:26,
                 from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./common/algorithm.h:54:24: note: synthesized method 'Glk::Quest::match_binding& Glk::Quest::match_binding::operator=(const Glk::Quest::match_binding&)' first required here
   54 |                 *--dst = *--last;
      |                 ~~~~~~~^~~~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:27,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/geas_state.h: In instantiation of 'Out Common::copy_backward(In, In, Out) [with In = Glk::Quest::ExitRecord*; Out = Glk::Quest::ExitRecord*]':
./common/array.h:366:18:   required from 'T* Common::Array<T>::insert_aux(Common::Array<T>::iterator, Common::Array<T>::const_iterator, Common::Array<T>::const_iterator) [with T = Glk::Quest::ExitRecord; Common::Array<T>::iterator = Glk::Quest::ExitRecord*; Common::Array<T>::const_iterator = const Glk::Quest::ExitRecord*]'
./common/array.h:108:4:   required from 'void Common::Array<T>::push_back(const T&) [with T = Glk::Quest::ExitRecord]'
engines/glk/quest/geas_runner.cpp:2005:26:   required from here
./engines/glk/quest/geas_state.h:54:8: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   54 | struct ExitRecord {
      |        ^~~~~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./engines/glk/quest/geas_runner.h:27,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/geas_state.h:54:8: warning: implicitly-declared 'Glk::Quest::String& Glk::Quest::String::operator=(const Glk::Quest::String&)' is deprecated [-Wdeprecated-copy]
   54 | struct ExitRecord {
      |        ^~~~~~~~~~
In file included from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./engines/glk/quest/string.h:46:9: note: because 'Glk::Quest::String' has user-provided 'Glk::Quest::String::String(const Glk::Quest::String&)'
   46 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./common/array.h:27,
                 from ./common/memorypool.h:27,
                 from ./common/hashmap.h:53,
                 from ./engines/glk/quest/string.h:26,
                 from ./engines/glk/quest/geas_runner.h:26,
                 from engines/glk/quest/geas_runner.cpp:23:
./common/algorithm.h:54:24: note: synthesized method 'Glk::Quest::ExitRecord& Glk::Quest::ExitRecord::operator=(const Glk::Quest::ExitRecord&)' first required here
   54 |                 *--dst = *--last;
      |                 ~~~~~~~^~~~~~~~~
    C++      engines/gnap/music.o
    C++      engines/gnap/grid.o
    C++      engines/gnap/resource.o
    C++      engines/gnap/menu.o
    C++      engines/gnap/sound.o
    C++      engines/gnap/scenes/groupcs.o
    C++      engines/gnap/gnap.o
    C++      engines/gnap/gamesys.o
    C++      engines/gnap/scenes/group5.o
    C++      engines/gnap/scenes/intro.o
    C++      engines/gnap/scenes/group3.o
    C++      engines/gnap/scenes/arcade.o
    C++      engines/gnap/scenes/scenecore.o
    C++      engines/gob/backbuffer.o
    C++      engines/gob/aniobject.o
    C++      engines/gob/cheater.o
    C++      engines/gob/cheater_geisha.o
    C++      engines/gnap/scenes/group4.o
    C++      engines/gnap/scenes/group2.o
    C++      engines/gnap/scenes/group0.o
    C++      engines/gob/console.o
    C++      engines/gob/cmpfile.o
    C++      engines/gob/anifile.o
    C++      engines/gob/dbase.o
    C++      engines/gnap/scenes/group1.o
    C++      engines/gob/databases.o
    C++      engines/gob/decfile.o
    C++      engines/gob/dataio.o
    C++      engines/gob/draw_bargon.o
    C++      engines/gob/draw_v1.o
    C++      engines/gob/draw.o
    C++      engines/gob/global.o
    C++      engines/gob/draw_playtoons.o
    C++      engines/gob/draw_v2.o
    C++      engines/gob/expression.o
    C++      engines/gob/goblin_v3.o
    C++      engines/gob/goblin_v1.o
    C++      engines/gob/game.o
    C++      engines/gob/goblin_v2.o
    C++      engines/gob/draw_fascin.o
    C++      engines/gob/iniconfig.o
    C++      engines/gob/goblin_v4.o
    C++      engines/gob/init_v1.o
    C++      engines/gob/gob.o
    C++      engines/gob/init.o
    C++      engines/gob/init_geisha.o
    C++      engines/gob/init_v2.o
    C++      engines/gob/goblin.o
    C++      engines/gob/init_fascin.o
    C++      engines/gob/init_v3.o
    C++      engines/gob/init_v4.o
    C++      engines/gob/init_v6.o
    C++      engines/gob/init_v7.o
    C++      engines/gob/inter_littlered.o
    C++      engines/gob/inter.o
    C++      engines/gob/hotspots.o
    C++      engines/gob/inter_geisha.o
    C++      engines/gob/inter_bargon.o
    C++      engines/gob/inter_fascin.o
    C++      engines/gob/inter_inca2.o
    C++      engines/gob/inter_v3.o
    C++      engines/gob/inter_v4.o
    C++      engines/gob/inter_playtoons.o
    C++      engines/gob/inter_v6.o
    C++      engines/gob/map.o
    C++      engines/gob/inter_v5.o
    C++      engines/gob/inter_v2.o
    C++      engines/gob/map_v1.o
    C++      engines/gob/map_v2.o
    C++      engines/gob/inter_v7.o
    C++      engines/gob/mult.o
    C++      engines/gob/palanim.o
    C++      engines/gob/scenery_v1.o
    C++      engines/gob/scenery_v2.o
    C++      engines/gob/rxyfile.o
    C++      engines/gob/resources.o
    C++      engines/gob/mult_v1.o
    C++      engines/gob/totfile.o
    C++      engines/gob/script.o
    C++      engines/gob/mult_v2.o
    C++      engines/gob/scenery.o
    C++      engines/gob/variables.o
    C++      engines/gob/inter_v1.o
    C++      engines/gob/util.o
    C++      engines/gob/video_v1.o
    C++      engines/gob/surface.o
    C++      engines/gob/video_v2.o
    C++      engines/gob/video.o
    C++      engines/gob/video_v6.o
    C++      engines/gob/demos/batplayer.o
    C++      engines/gob/demos/scnplayer.o
    C++      engines/gob/demos/demoplayer.o
    C++      engines/gob/pregob/txtfile.o
    C++      engines/gob/detection/detection.o
    C++      engines/gob/pregob/pregob.o
    C++      engines/gob/videoplayer.o
    C++      engines/gob/pregob/onceupon/abracadabra.o
    C++      engines/gob/pregob/onceupon/babayaga.o
    C++      engines/gob/pregob/onceupon/title.o
    C++      engines/gob/pregob/gctfile.o
    C++      engines/gob/pregob/onceupon/chargenchild.o
    C++      engines/gob/pregob/onceupon/stork.o
    C++      engines/gob/minigames/geisha/oko.o
    C++      engines/gob/pregob/seqfile.o
    C++      engines/gob/minigames/geisha/evilfish.o
    C++      engines/gob/pregob/onceupon/parents.o
    C++      engines/gob/minigames/geisha/meter.o
    C++      engines/gob/minigames/geisha/mouth.o
    C++      engines/gob/minigames/geisha/submarine.o
    C++      engines/gob/save/saveload.o
    C++      engines/gob/save/savehandler.o
    C++      engines/gob/save/saveload_v2.o
    C++      engines/gob/pregob/onceupon/onceupon.o
    C++      engines/gob/minigames/geisha/diving.o
    C++      engines/gob/save/saveload_v3.o
    C++      engines/gob/save/saveload_v4.o
    C++      engines/gob/save/saveload_v7.o
    C++      engines/gob/save/saveload_geisha.o
    C++      engines/gob/save/savefile.o
    C++      engines/gob/save/saveload_ajworld.o
    C++      engines/gob/save/saveload_fascin.o
    C++      engines/gob/minigames/geisha/penetration.o
    C++      engines/gob/save/saveload_v6.o
    C++      engines/gob/save/saveconverter_v2.o
    C++      engines/gob/save/saveload_playtoons.o
    C++      engines/gob/save/saveconverter_v4.o
    C++      engines/gob/save/saveconverter_v3.o
    C++      engines/gob/sound/pcspeaker.o
    C++      engines/gob/save/saveload_inca2.o
    C++      engines/gob/sound/sounddesc.o
    C++      engines/gob/save/saveconverter.o
    C++      engines/gob/sound/infogrames.o
    C++      engines/gob/sound/protracker.o
    C++      engines/gob/sound/adlplayer.o
    C++      engines/gob/sound/soundblaster.o
    C++      engines/gob/sound/sound.o
    C++      engines/gob/sound/soundmixer.o
    C++      engines/gob/sound/musplayer.o
    C++      engines/gob/sound/adlib.o
    C++      engines/griffon/console.o
    C++      engines/gob/sound/bgatmosphere.o
    C++      engines/gob/sound/cdrom.o
    C++      engines/griffon/cutscenes.o
    C++      engines/griffon/detection.o
    C++      engines/griffon/gfx.o
    C++      engines/griffon/engine.o
    C++      engines/griffon/griffon.o
    C++      engines/griffon/combat.o
    C++      engines/griffon/input.o
    C++      engines/griffon/dialogs.o
    C++      engines/griffon/sound.o
    C++      engines/griffon/saveload.o
    C++      engines/groovie/cell.o
    C++      engines/griffon/draw.o
    C++      engines/groovie/debug.o
    C++      engines/groovie/detection.o
    C++      engines/griffon/resources.o
    C++      engines/groovie/graphics.o
    C++      engines/groovie/font.o
    C++      engines/groovie/cursor.o
    C++      engines/groovie/lzss.o
    C++      engines/groovie/player.o
    C++      engines/groovie/saveload.o
    C++      engines/groovie/groovie.o
    C++      engines/groovie/resource.o
    C++      engines/groovie/music.o
    C++      engines/groovie/vdx.o
    C++      engines/griffon/logic.o
    C++      engines/groovie/stuffit.o
    C++      engines/groovie/roq.o
    C++      engines/groovie/script.o
    C++      engines/hdb/ai-inventory.o
    C++      engines/hdb/ai-use.o
    C++      engines/hdb/ai-lists.o
    C++      engines/hdb/ai-waypoint.o
    C++      engines/hdb/ai-cinematic.o
    C++      engines/hdb/ai-bots.o
    C++      engines/hdb/ai-funcs.o
    C++      engines/hdb/ai-player.o
    C++      engines/hdb/file-manager.o
    C++      engines/hdb/ai-init.o
engines/hdb/ai-init.cpp:684:10: warning: cast between incompatible function types from 'void (*)(HDB::AIEntity*, int, int)' to 'HDB::FuncPtr' {aka 'void (*)(HDB::AIEntity*)'} [-Wcast-function-type]
  684 |         {(FuncPtr)aiPlayerDraw,         "aiPlayerDraw"},
      |          ^~~~~~~~~~~~~~~~~~~~~
engines/hdb/ai-init.cpp:763:10: warning: cast between incompatible function types from 'void (*)(HDB::AIEntity*, int, int)' to 'HDB::FuncPtr' {aka 'void (*)(HDB::AIEntity*)'} [-Wcast-function-type]
  763 |         {(FuncPtr)aiShockBotShock,      "aiShockBotShock"},
      |          ^~~~~~~~~~~~~~~~~~~~~~~~
engines/hdb/ai-init.cpp:770:10: warning: cast between incompatible function types from 'void (*)(HDB::AIEntity*, int, int)' to 'HDB::FuncPtr' {aka 'void (*)(HDB::AIEntity*)'} [-Wcast-function-type]
  770 |         {(FuncPtr)aiSlugAttackDraw, "aiSlugAttackDraw"},
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~
engines/hdb/ai-init.cpp:798:10: warning: cast between incompatible function types from 'void (*)(HDB::AIEntity*, int, int)' to 'HDB::FuncPtr' {aka 'void (*)(HDB::AIEntity*)'} [-Wcast-function-type]
  798 |         {(FuncPtr)aiLaserDraw,          "aiLaserDraw"},
      |          ^~~~~~~~~~~~~~~~~~~~
engines/hdb/ai-init.cpp:804:10: warning: cast between incompatible function types from 'void (*)(HDB::AIEntity*, int, int)' to 'HDB::FuncPtr' {aka 'void (*)(HDB::AIEntity*)'} [-Wcast-function-type]
  804 |         {(FuncPtr)aiDiverterDraw,       "aiDiverterDraw"},
      |          ^~~~~~~~~~~~~~~~~~~~~~~
engines/hdb/ai-init.cpp:818:10: warning: cast between incompatible function types from 'void (*)(HDB::AIEntity*, int, int)' to 'HDB::FuncPtr' {aka 'void (*)(HDB::AIEntity*)'} [-Wcast-function-type]
  818 |         {(FuncPtr)aiMeerkatDraw,        "aiMeerkatDraw"},
      |          ^~~~~~~~~~~~~~~~~~~~~~
engines/hdb/ai-init.cpp:823:10: warning: cast between incompatible function types from 'void (*)(HDB::AIEntity*, int, int)' to 'HDB::FuncPtr' {aka 'void (*)(HDB::AIEntity*)'} [-Wcast-function-type]
  823 |         {(FuncPtr)aiFatFrogTongueDraw, "aiFatFrogTongueDraw"},
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
engines/hdb/ai-init.cpp:834:10: warning: cast between incompatible function types from 'void (*)(HDB::AIEntity*, int, int)' to 'HDB::FuncPtr' {aka 'void (*)(HDB::AIEntity*)'} [-Wcast-function-type]
  834 |         {(FuncPtr)aiIcePuffSnowballDraw,        "aiIcePuffSnowballDraw"},
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
engines/hdb/ai-init.cpp:846:10: warning: cast between incompatible function types from 'void (*)(HDB::AIEntity*, int, int)' to 'HDB::FuncPtr' {aka 'void (*)(HDB::AIEntity*)'} [-Wcast-function-type]
  846 |         {(FuncPtr)aiDragonDraw,         "aiDragonDraw"},
      |          ^~~~~~~~~~~~~~~~~~~~~
engines/hdb/ai-init.cpp: In member function 'void HDB::AI::restartSystem()':
engines/hdb/ai-init.cpp:1280:15: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct HDB::ActionInfo'; use assignment or value-initialization instead [-Wclass-memaccess]
 1280 |         memset(_actions, 0, sizeof(_actions));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from engines/hdb/ai-init.cpp:24:
./engines/hdb/ai.h:672:8: note: 'struct HDB::ActionInfo' declared here
  672 | struct ActionInfo {
      |        ^~~~~~~~~~
engines/hdb/ai-init.cpp:1283:15: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct HDB::TeleInfo'; use assignment or value-initialization instead [-Wclass-memaccess]
 1283 |         memset(_teleporters, 0, sizeof(_teleporters));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from engines/hdb/ai-init.cpp:24:
./engines/hdb/ai.h:686:8: note: 'struct HDB::TeleInfo' declared here
  686 | struct TeleInfo {
      |        ^~~~~~~~
engines/hdb/ai-init.cpp:1287:15: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct HDB::AutoAction'; use assignment or value-initialization instead [-Wclass-memaccess]
 1287 |         memset(_autoActions, 0, sizeof(_autoActions));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from engines/hdb/ai-init.cpp:24:
./engines/hdb/ai.h:710:8: note: 'struct HDB::AutoAction' declared here
  710 | struct AutoAction {
      |        ^~~~~~~~~~
engines/hdb/ai-init.cpp:1290:15: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct HDB::Callback'; use assignment or value-initialization instead [-Wclass-memaccess]
 1290 |         memset(_callbacks, 0, sizeof(_callbacks));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from engines/hdb/ai-init.cpp:24:
./engines/hdb/ai.h:756:8: note: 'struct HDB::Callback' declared here
  756 | struct Callback {
      |        ^~~~~~~~
engines/hdb/ai-init.cpp:1299:15: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct HDB::LuaT'; use assignment or value-initialization instead [-Wclass-memaccess]
 1299 |         memset(_luaList, 0, sizeof(_luaList));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from engines/hdb/ai-init.cpp:24:
./engines/hdb/ai.h:658:8: note: 'struct HDB::LuaT' declared here
  658 | struct LuaT {
      |        ^~~~
    C++      engines/hdb/detection.o
    C++      engines/hdb/input.o
    C++      engines/hdb/hdb.o
    C++      engines/hdb/saveload.o
engines/hdb/saveload.cpp: In member function 'void HDB::AIEntity::save(Common::OutSaveFile*)':
engines/hdb/saveload.cpp:269:41: warning: cast between incompatible function types from 'void (*)(HDB::AIEntity*, int, int)' to 'HDB::FuncPtr' {aka 'void (*)(HDB::AIEntity*)'} [-Wcast-function-type]
  269 |         lookUp = g_hdb->_ai->funcLookUp((FuncPtr)aiDraw);
      |                                         ^~~~~~~~~~~~~~~
engines/hdb/saveload.cpp: In member function 'void HDB::AIEntity::load(Common::InSaveFile*)':
engines/hdb/saveload.cpp:340:25: warning: cast between incompatible function types from 'HDB::FuncPtr' {aka 'void (*)(HDB::AIEntity*)'} to 'HDB::EntFuncPtr' {aka 'void (*)(HDB::AIEntity*, int, int)'} [-Wcast-function-type]
  340 |                 drawf = (EntFuncPtr)g_hdb->_ai->funcLookUp(funcString);
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    C++      engines/hdb/sound.o
    C++      engines/hdb/map.o
    C++      engines/hdb/lua-script.o
    C++      engines/hopkins/debugger.o
    C++      engines/hdb/menu.o
    C++      engines/hopkins/anim.o
    C++      engines/hdb/gfx.o
In file included from /usr/include/string.h:519,
                 from ./common/scummsys.h:120,
                 from ./common/random.h:26,
                 from engines/hdb/gfx.cpp:25:
In function 'char* strncpy(char*, const char*, size_t)',
    inlined from 'void HDB::Gfx::init()' at engines/hdb/gfx.cpp:245:11:
/usr/include/bits/string_fortified.h:95:34: warning: 'char* __builtin___strncpy_chk(char*, const char*, long unsigned int, long unsigned int)' specified bound depends on the length of the source argument [-Wstringop-truncation]
   95 |   return __builtin___strncpy_chk (__dest, __src, __len,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
   96 |                                   __glibc_objsize (__dest));
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~
engines/hdb/gfx.cpp: In member function 'void HDB::Gfx::init()':
engines/hdb/gfx.cpp:245:78: note: length computed here
  245 |                         strncpy(search, _tLookupArray[index].filename, strlen(_tLookupArray[index].filename) - 2);
      |                                                                        ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    C++      engines/hopkins/files.o
    C++      engines/hopkins/computer.o
    C++      engines/hopkins/detection.o
    C++      engines/hopkins/events.o
    C++      engines/hopkins/dialogs.o
    C++      engines/hopkins/globals.o
    C++      engines/hdb/window.o
    C++      engines/hopkins/font.o
    C++      engines/hopkins/menu.o
    C++      engines/hopkins/saveload.o
    C++      engines/hugo/console.o
    C++      engines/hopkins/graphics.o
    C++      engines/hopkins/talk.o
    C++      engines/hopkins/sound.o
    C++      engines/hugo/detection.o
    C++      engines/hugo/dialogs.o
    C++      engines/hugo/file.o
    C++      engines/hugo/file_v1d.o
    C++      engines/hugo/display.o
    C++      engines/hugo/file_v2d.o
    C++      engines/hugo/file_v3d.o
    C++      engines/hopkins/lines.o
    C++      engines/hugo/file_v1w.o
    C++      engines/hopkins/script.o
    C++      engines/hugo/file_v2w.o
    C++      engines/hopkins/hopkins.o
    C++      engines/hugo/inventory.o
    C++      engines/hopkins/objects.o
    C++      engines/hugo/mouse.o
    C++      engines/hugo/object_v1d.o
    C++      engines/hugo/object_v1w.o
    C++      engines/hugo/intro.o
    C++      engines/hugo/hugo.o
    C++      engines/hugo/object_v2d.o
    C++      engines/hugo/object_v3d.o
    C++      engines/hugo/object.o
    C++      engines/hugo/parser_v1w.o
    C++      engines/hugo/parser_v2d.o
    C++      engines/hugo/parser_v1d.o
    C++      engines/hugo/parser.o
    C++      engines/hugo/util.o
    C++      engines/hugo/text.o
    C++      engines/hugo/route.o
    C++      engines/hugo/parser_v3d.o
    C++      engines/hugo/sound.o
    C++      engines/illusions/bbdou/bbdou_credits_staticdata.o
    C++      engines/illusions/bbdou/bbdou_credits.o
    C++      engines/illusions/bbdou/bbdou_bubble.o
    C++      engines/illusions/bbdou/bbdou_cursor.o
    C++      engines/illusions/bbdou/bbdou_foodctl.o
    C++      engines/illusions/bbdou/bbdou_menukeys.o
    C++      engines/illusions/bbdou/bbdou_inventory.o
    C++      engines/illusions/bbdou/bbdou_triggerfunctions.o
    C++      engines/illusions/bbdou/gamestate_bbdou.o
    C++      engines/illusions/bbdou/bbdou_videoplayer.o
    C++      engines/hugo/schedule.o
    C++      engines/illusions/actor.o
    C++      engines/illusions/bbdou/menusystem_bbdou.o
    C++      engines/illusions/cursor.o
    C++      engines/illusions/camera.o
    C++      engines/illusions/bbdou/bbdou_specialcode.o
    C++      engines/illusions/duckman/duckman_credits.o
    C++      engines/illusions/duckman/duckman_dialog.o
    C++      engines/illusions/detection.o
    C++      engines/illusions/bbdou/illusions_bbdou.o
    C++      engines/illusions/duckman/duckman_screenshakereffects.o
    C++      engines/illusions/duckman/duckman_inventory.o
    C++      engines/illusions/duckman/gamestate_duckman.o
    C++      engines/illusions/dictionary.o
    C++      engines/illusions/duckman/duckman_videoplayer.o
    C++      engines/illusions/bbdou/scriptopcodes_bbdou.o
    C++      engines/illusions/duckman/propertytimers.o
    C++      engines/illusions/fileresourcereader.o
    C++      engines/illusions/fixedpoint.o
    C++      engines/illusions/duckman/duckman_specialcode.o
    C++      engines/illusions/gamarchive.o
    C++      engines/illusions/gamestate.o
    C++      engines/illusions/duckman/menusystem_duckman.o
    C++      engines/illusions/graphics.o
    C++      engines/illusions/gamresourcereader.o
    C++      engines/illusions/input.o
    C++      engines/illusions/illusions.o
    C++      engines/illusions/duckman/scriptopcodes_duckman.o
    C++      engines/illusions/resources/genericresource.o
    C++      engines/illusions/pathfinder.o
    C++      engines/illusions/resources/fontresource.o
    C++      engines/illusions/duckman/illusions_duckman.o
    C++      engines/illusions/resources/midiresource.o
    C++      engines/illusions/resources/actorresource.o
    C++      engines/illusions/menusystem.o
    C++      engines/illusions/resources/backgroundresource.o
    C++      engines/illusions/resources/soundresource.o
    C++      engines/illusions/resources/talkresource.o
    C++      engines/illusions/resources/scriptresource.o
    C++      engines/illusions/scriptstack.o
    C++      engines/illusions/scriptopcodes.o
    C++      engines/illusions/saveload.o
    C++      engines/illusions/screentext.o
    C++      engines/illusions/resourcesystem.o
    C++      engines/illusions/specialcode.o
    C++      engines/illusions/threads/scriptthread.o
    C++      engines/illusions/threads/abortablethread.o
    C++      engines/illusions/threads/causethread_duckman.o
    C++      engines/illusions/textdrawer.o
    C++      engines/illusions/sequenceopcodes.o
    C++      engines/illusions/screen.o
    C++      engines/illusions/threads/timerthread.o
    C++      engines/illusions/threads/talkthread_duckman.o
    C++      engines/illusions/time.o
    C++      engines/illusions/threads/talkthread.o
    C++      engines/illusions/sound.o
    C++      engines/illusions/updatefunctions.o
    C++      engines/illusions/thread.o
    C++      engines/kingdom/constants.o
    C++      engines/kingdom/logic4.o
    C++      engines/kingdom/console.o
    C++      engines/kingdom/logic2.o
    C++      engines/kingdom/logic1.o
    C++      engines/kingdom/logic3.o
    C++      engines/kingdom/detection.o
    C++      engines/kyra/engine/items_v2.o
    C++      engines/kingdom/logic.o
    C++      engines/kingdom/kingdom.o
    C++      engines/kyra/engine/items_hof.o
    C++      engines/kyra/detection.o
    C++      engines/kyra/engine/items_mr.o
    C++      engines/kyra/engine/items_lok.o
engines/kyra/engine/items_lok.cpp: In member function 'void Kyra::KyraEngine_LoK::clearNoDropRects()':
engines/kyra/engine/items_lok.cpp:60:15: warning: 'void* memset(void*, int, size_t)' writing to an object of non-trivial type 'struct Common::Rect'; use assignment instead [-Wclass-memaccess]
   60 |         memset(_noDropRects, -1, sizeof(_noDropRects));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./common/events.h:28,
                 from ./engines/kyra/kyra_v1.h:30,
                 from ./engines/kyra/engine/kyra_lok.h:26,
                 from engines/kyra/engine/items_lok.cpp:23:
./common/rect.h:95:8: note: 'struct Common::Rect' declared here
   95 | struct Rect {
      |        ^~~~
    C++      engines/kyra/engine/scene_v1.o
    C++      engines/kyra/engine/scene_v2.o
    C++      engines/kyra/engine/kyra_v2.o
    C++      engines/kyra/engine/kyra_lok.o
    C++      engines/kyra/engine/kyra_v1.o
    C++      engines/kyra/engine/sprites.o
    C++      engines/kyra/engine/scene_hof.o
    C++      engines/kyra/engine/scene_lok.o
    C++      engines/kyra/engine/timer_lok.o
    C++      engines/kyra/engine/scene_mr.o
    C++      engines/kyra/engine/util.o
    C++      engines/kyra/engine/timer.o
    C++      engines/kyra/engine/timer_hof.o
    C++      engines/kyra/engine/kyra_mr.o
engines/kyra/engine/kyra_mr.cpp: In member function 'void Kyra::KyraEngine_MR::openTalkFile(int)':
engines/kyra/engine/kyra_mr.cpp:699:52: warning: 'TALK.TLK' directive writing 8 bytes into a region of size between 4 and 13 [-Wformat-overflow=]
  699 |                         sprintf(talkFilename, "CH%dTALK.TLK", _currentTalkFile);
      |                                                    ^~~~~~~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/engine.h:26,
                 from ./engines/kyra/kyra_v1.h:26,
                 from ./engines/kyra/engine/kyra_v2.h:26,
                 from ./engines/kyra/engine/kyra_mr.h:26,
                 from engines/kyra/engine/kyra_mr.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 12 and 21 bytes into a destination of size 16
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
    C++      engines/kyra/engine/kyra_hof.o
engines/kyra/engine/kyra_hof.cpp: In member function 'void Kyra::KyraEngine_HoF::openTalkFile(int)':
engines/kyra/engine/kyra_hof.cpp:1393:44: warning: 'VOC.TLK' directive writing 7 bytes into a region of size between 4 and 13 [-Wformat-overflow=]
 1393 |                 sprintf(talkFilename, "CH%dVOC.TLK", _oldTalkFile);
      |                                            ^~~~~~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/engine.h:26,
                 from ./engines/kyra/kyra_v1.h:26,
                 from ./engines/kyra/engine/kyra_v2.h:26,
                 from ./engines/kyra/engine/kyra_hof.h:26,
                 from engines/kyra/engine/kyra_hof.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 11 and 20 bytes into a destination of size 16
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
    C++      engines/kyra/engine/timer_mr.o
    C++      engines/kyra/graphics/animator_v2.o
    C++      engines/kyra/graphics/animator_hof.o
    C++      engines/kyra/graphics/animator_lok.o
    C++      engines/kyra/graphics/animator_tim.o
    C++      engines/kyra/graphics/screen_hof.o
    C++      engines/kyra/graphics/animator_mr.o
    C++      engines/kyra/graphics/screen_v2.o
    C++      engines/kyra/graphics/screen_lok.o
engines/kyra/graphics/screen_lok.cpp: In member function 'virtual bool Kyra::Screen_LoK::init()':
engines/kyra/graphics/screen_lok.cpp:58:15: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct Common::Rect'; use assignment or value-initialization instead [-Wclass-memaccess]
   58 |         memset(_bitBlitRects, 0, sizeof(_bitBlitRects));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./engines/kyra/graphics/screen.h:30,
                 from ./engines/kyra/graphics/screen_lok.h:26,
                 from engines/kyra/graphics/screen_lok.cpp:23:
./common/rect.h:95:8: note: 'struct Common::Rect' declared here
   95 | struct Rect {
      |        ^~~~
    C++      engines/kyra/graphics/screen_mr.o
    C++      engines/kyra/gui/gui.o
    C++      engines/kyra/graphics/wsamovie.o
    C++      engines/kyra/graphics/vqa.o
    C++      engines/kyra/gui/gui_v1.o
    C++      engines/kyra/gui/debugger.o
    C++      engines/kyra/gui/saveload.o
    C++      engines/kyra/gui/gui_v2.o
    C++      engines/kyra/gui/gui_lok.o
    C++      engines/kyra/gui/saveload_lok.o
    C++      engines/kyra/gui/gui_hof.o
    C++      engines/kyra/gui/saveload_mr.o
    C++      engines/kyra/gui/saveload_hof.o
    C++      engines/kyra/script/script_v1.o
    C++      engines/kyra/gui/gui_mr.o
    C++      engines/kyra/script/script_v2.o
    C++      engines/kyra/resource/resource.o
    C++      engines/kyra/graphics/screen.o
In file included from /usr/include/string.h:519,
                 from ./common/scummsys.h:120,
                 from ./common/util.h:26,
                 from ./engines/kyra/graphics/screen.h:26,
                 from engines/kyra/graphics/screen.cpp:23:
In function 'void* memcpy(void*, const void*, size_t)',
    inlined from 'void Kyra::Palette::setCGAPalette(int, Kyra::Palette::CGAIntensity)' at engines/kyra/graphics/screen.cpp:3882:8,
    inlined from 'virtual bool Kyra::Screen::init()' at engines/kyra/graphics/screen.cpp:217:20:
/usr/include/bits/string_fortified.h:29:33: warning: 'void* __builtin_memcpy(void*, const void*, long unsigned int)' forming offset [48, 50] is out of the bounds [0, 48] of object 'Kyra::Palette::_cgaColors' with type 'const uint8 [4][12]' {aka 'const unsigned char [4][12]'} [-Warray-bounds]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
engines/kyra/graphics/screen.cpp: In member function 'virtual bool Kyra::Screen::init()':
engines/kyra/graphics/screen.cpp:3970:13: note: 'Kyra::Palette::_cgaColors' declared here
 3970 | const uint8 Palette::_cgaColors[4][12] = {
      |             ^~~~~~~
    C++      engines/kyra/script/script.o
    C++      engines/kyra/resource/resource_intern.o
    C++      engines/kyra/sequence/sequences_v2.o
    C++      engines/kyra/sequence/seqplayer_lok.o
engines/kyra/sequence/seqplayer_lok.cpp: In member function 'bool Kyra::SeqPlayer::playSequence(const uint8*, bool)':
engines/kyra/sequence/seqplayer_lok.cpp:602:15: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct Kyra::SeqPlayer::SeqMovie'; use assignment or value-initialization instead [-Wclass-memaccess]
  602 |         memset(_seqMovies, 0, sizeof(_seqMovies));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from engines/kyra/sequence/seqplayer_lok.cpp:23:
./engines/kyra/sequence/seqplayer_lok.h:99:16: note: 'struct Kyra::SeqPlayer::SeqMovie' declared here
   99 |         struct SeqMovie {
      |                ^~~~~~~~
    C++      engines/kyra/script/script_tim.o
    C++      engines/kyra/sequence/sequences_mr.o
    C++      engines/kyra/sound/sound_amiga_lok.o
    C++      engines/kyra/script/script_lok.o
    C++      engines/kyra/sequence/sequences_lok.o
    C++      engines/kyra/script/script_mr.o
    C++      engines/kyra/sound/sound_digital_mr.o
    C++      engines/kyra/sound/sound_pc_v1.o
    C++      engines/kyra/script/script_hof.o
engines/kyra/script/script_hof.cpp: In member function 'int Kyra::KyraEngine_HoF::o2_showLetter(Kyra::EMCState*)':
engines/kyra/script/script_hof.cpp:787:39: warning: '.COL' directive writing 4 bytes into a region of size between 3 and 8 [-Wformat-overflow=]
  787 |         sprintf(filename, "_NTEPAL%.1d.COL", letter+1);
      |                                       ^~~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/engine.h:26,
                 from ./engines/kyra/kyra_v1.h:26,
                 from ./engines/kyra/engine/kyra_v2.h:26,
                 from ./engines/kyra/engine/kyra_hof.h:26,
                 from engines/kyra/script/script_hof.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 13 and 18 bytes into a destination of size 16
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
engines/kyra/script/script_hof.cpp:796:50: warning: '__builtin___sprintf_chk' may write a terminating nul past the end of the destination [-Wformat-overflow=]
  796 |                 sprintf(filename, "LETTER%.1d.TXT", letter);
      |                                                  ^
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/engine.h:26,
                 from ./engines/kyra/kyra_v1.h:26,
                 from ./engines/kyra/engine/kyra_v2.h:26,
                 from ./engines/kyra/engine/kyra_hof.h:26,
                 from engines/kyra/script/script_hof.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 12 and 17 bytes into a destination of size 16
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
    C++      engines/kyra/sound/sound_pc98_lok.o
    C++      engines/kyra/sound/sound_pc_midi.o
    C++      engines/kyra/sound/sound_pc98_v2.o
    C++      engines/kyra/sound/sound_lok.o
    C++      engines/kyra/sound/sound_towns_lok.o
    C++      engines/kyra/sound/sound.o
    C++      engines/kyra/sound/drivers/pcspeaker_v2.o
    C++      engines/kyra/text/text.o
    C++      engines/kyra/sound/drivers/audstream.o
    C++      engines/kyra/resource/staticres.o
    C++      engines/kyra/text/text_lok.o
    C++      engines/kyra/sound/drivers/adlib.o
engines/kyra/sound/drivers/adlib.cpp: In member function 'virtual void Kyra::AdLibDriver::setSoundData(uint8*, uint32)':
engines/kyra/sound/drivers/adlib.cpp:473:15: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct Kyra::AdLibDriver::QueueEntry'; use assignment or value-initialization instead [-Wclass-memaccess]
  473 |         memset(_programQueue, 0, sizeof(_programQueue));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
engines/kyra/sound/drivers/adlib.cpp:311:16: note: 'struct Kyra::AdLibDriver::QueueEntry' declared here
  311 |         struct QueueEntry {
      |                ^~~~~~~~~~
    C++      engines/kyra/engine/sprites_rpg.o
    C++      engines/kyra/sequence/sequences_hof.o
    C++      engines/kyra/engine/timer_rpg.o
    C++      engines/kyra/text/text_hof.o
    C++      engines/kyra/engine/kyra_rpg.o
    C++      engines/kyra/gui/gui_rpg.o
    C++      engines/kyra/text/text_mr.o
    C++      engines/kyra/gui/saveload_rpg.o
    C++      engines/kyra/resource/staticres_rpg.o
    C++      engines/kyra/engine/items_lol.o
    C++      engines/kyra/engine/scene_rpg.o
    C++      engines/kyra/text/text_rpg.o
    C++      engines/kyra/engine/timer_lol.o
    C++      engines/kyra/graphics/screen_lol.o
    C++      engines/kyra/engine/sprites_lol.o
    C++      engines/kyra/engine/scene_lol.o
    C++      engines/kyra/sound/sound_lol.o
    C++      engines/kyra/gui/saveload_lol.o
    C++      engines/kyra/text/text_lol.o
    C++      engines/kyra/sequence/sequences_lol.o
    C++      engines/kyra/gui/gui_lol.o
engines/kyra/gui/gui_lol.cpp: In member function 'void Kyra::LoLEngine::gui_displayCharInventory(int)':
engines/kyra/gui/gui_lol.cpp:164:44: warning: '__builtin___sprintf_chk' may write a terminating nul past the end of the destination [-Wformat-overflow=]
  164 |                 sprintf(file, "invent%d.cps", inventoryTypes[id]);
      |                                            ^
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/engine.h:26,
                 from ./engines/kyra/kyra_v1.h:26,
                 from ./engines/kyra/gui/gui.h:26,
                 from ./engines/kyra/gui/gui_v1.h:26,
                 from ./engines/kyra/gui/gui_lol.h:28,
                 from engines/kyra/gui/gui_lol.cpp:25:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 12 and 14 bytes into a destination of size 13
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
    C++      engines/kyra/engine/eob.o
    C++      engines/kyra/engine/darkmoon.o
    C++      engines/kyra/resource/staticres_lol.o
    C++      engines/kyra/engine/lol.o
    C++      engines/kyra/engine/items_eob.o
    C++      engines/kyra/engine/chargen.o
    C++      engines/kyra/engine/timer_eob.o
    C++      engines/kyra/engine/scene_eob.o
    C++      engines/kyra/graphics/screen_eob_amiga.o
engines/kyra/graphics/screen_eob_amiga.cpp: In member function 'void Kyra::Screen_EoB::loadSpecialAmigaCPS(const char*, int, bool)':
engines/kyra/graphics/screen_eob_amiga.cpp:68:22: warning: '%s' directive argument is null [-Wformat-overflow=]
   68 |                 error("Screen_EoB::loadSpecialAmigaCPS(): Failed to load file '%s'", file);
      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    C++      engines/kyra/script/script_lol.o
    C++      engines/kyra/engine/magic_eob.o
    C++      engines/kyra/engine/sprites_eob.o
    C++      engines/kyra/graphics/screen_eob_pc98.o
    C++      engines/kyra/engine/eobcommon.o
    C++      engines/kyra/graphics/screen_eob_towns.o
    C++      engines/kyra/resource/resource_segacd.o
    C++      engines/kyra/graphics/screen_eob.o
    C++      engines/kyra/graphics/screen_eob_segacd.o
    C++      engines/kyra/gui/gui_eob_segacd.o
    C++      engines/kyra/sound/sound_amiga_eob.o
    C++      engines/kyra/sequence/seqplayer_eob_segacd.o
    C++      engines/kyra/gui/saveload_eob.o
    C++      engines/kyra/script/script_eob.o
    C++      engines/kyra/sound/sound_pc98_eob.o
    C++      engines/kyra/sound/sound_segacd_eob.o
    C++      engines/kyra/sound/sound_towns_darkmoon.o
    C++      engines/kyra/resource/staticres_eob.o
    C++      engines/kyra/sequence/sequences_darkmoon.o
    C++      engines/kyra/sound/drivers/pcspeaker_v1.o
    C++      engines/lab/anim.o
    C++      engines/kyra/sequence/sequences_eob.o
    C++      engines/kyra/text/text_eob_segacd.o
    C++      engines/lab/console.o
    C++      engines/kyra/sound/drivers/audiomaster2.o
    C++      engines/lab/eventman.o
    C++      engines/lab/image.o
    C++      engines/lab/detection.o
    C++      engines/kyra/gui/gui_eob.o
    C++      engines/lab/interface.o
    C++      engines/lab/engine.o
    C++      engines/lab/labsets.o
    C++      engines/kyra/sound/drivers/segacd.o
    C++      engines/lab/intro.o
    C++      engines/lab/dispman.o
    C++      engines/lab/lab.o
    C++      engines/lab/music.o
    C++      engines/lab/map.o
    C++      engines/lab/savegame.o
    C++      engines/lab/processroom.o
    C++      engines/lab/special.o
    C++      engines/lab/utils.o
    C++      engines/lab/speciallocks.o
    C++      engines/lab/resource.o
    C++      engines/lastexpress/data/background.o
    C++      engines/lastexpress/data/archive.o
    C++      engines/lastexpress/data/animation.o
    C++      engines/kyra/sound/drivers/mlalf98.o
    C++      engines/lastexpress/data/cursor.o
    C++      engines/lastexpress/data/font.o
    C++      engines/lastexpress/data/subtitle.o
    C++      engines/lastexpress/data/scene.o
    C++      engines/lastexpress/data/snd.o
    C++      engines/lastexpress/data/sequence.o
    C++      engines/lastexpress/entities/entity.o
In file included from ./engines/lastexpress/entities/entity.h:34,
                 from engines/lastexpress/entities/entity.cpp:23:
In member function 'void Common::Serializer::syncBytes(byte*, uint32, Common::Serializer::Version, Common::Serializer::Version)',
    inlined from 'void LastExpress::EntityData::_ZN11LastExpress10EntityData22saveLoadWithSerializerERN6Common10SerializerEPKNS1_5ArrayIPFvPNS0_20EntityCallParametersEEEE.part.0(Common::Serializer&, const Common::Array<void (*)(LastExpress::EntityData::EntityCallParameters*)>*)' at engines/lastexpress/entities/entity.cpp:164:14:
./common/serializer.h:202:43: warning: 'buf' may be used uninitialized [-Wmaybe-uninitialized]
  202 |                         _saveStream->write(buf, size);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
./common/serializer.h: In member function 'void LastExpress::EntityData::_ZN11LastExpress10EntityData22saveLoadWithSerializerERN6Common10SerializerEPKNS1_5ArrayIPFvPNS0_20EntityCallParametersEEEE.part.0(Common::Serializer&, const Common::Array<void (*)(LastExpress::EntityData::EntityCallParameters*)>*)':
./common/serializer.h:202:43: note: by argument 2 of type 'const void*' to 'uint32 (Common::WriteStream::)(const void*, uint32)' {aka 'unsigned int (Common::WriteStream::)(const void*, unsigned int)'}
engines/lastexpress/entities/entity.cpp:163:22: note: 'buf' declared here
  163 |                 byte buf[ARRAYSIZE(_parameters) * 32 * 4];
      |                      ^~~
    C++      engines/lastexpress/entities/alouan.o
    C++      engines/lastexpress/entities/boutarel.o
    C++      engines/lastexpress/entities/cooks.o
    C++      engines/lastexpress/entities/abbot.o
    C++      engines/lastexpress/entities/alexei.o
    C++      engines/lastexpress/entities/chapters.o
    C++      engines/lastexpress/entities/entity39.o
    C++      engines/lastexpress/entities/hadija.o
    C++      engines/lastexpress/entities/gendarmes.o
    C++      engines/lastexpress/entities/francois.o
    C++      engines/lastexpress/entities/august.o
    C++      engines/lastexpress/entities/ivo.o
    C++      engines/lastexpress/entities/anna.o
    C++      engines/lastexpress/entities/kahina.o
    C++      engines/lastexpress/entities/coudert.o
    C++      engines/lastexpress/entities/kronos.o
    C++      engines/lastexpress/entities/mahmud.o
    C++      engines/lastexpress/entities/max.o
    C++      engines/lastexpress/entities/mmeboutarel.o
    C++      engines/lastexpress/entities/tables.o
    C++      engines/lastexpress/entities/sophie.o
    C++      engines/lastexpress/entities/milos.o
    C++      engines/lastexpress/entities/pascale.o
    C++      engines/lastexpress/entities/salko.o
    C++      engines/lastexpress/entities/train.o
    C++      engines/lastexpress/entities/rebecca.o
    C++      engines/lastexpress/entities/vassili.o
    C++      engines/lastexpress/entities/mertens.o
    C++      engines/lastexpress/fight/fight.o
    C++      engines/lastexpress/fight/fighter.o
    C++      engines/lastexpress/entities/waiter1.o
    C++      engines/lastexpress/entities/vesna.o
    C++      engines/lastexpress/fight/fighter_anna.o
    C++      engines/lastexpress/entities/waiter2.o
    C++      engines/lastexpress/entities/verges.o
    C++      engines/lastexpress/entities/tatiana.o
    C++      engines/lastexpress/entities/yasmin.o
    C++      engines/lastexpress/fight/fighter_milos.o
    C++      engines/lastexpress/fight/fighter_ivo.o
    C++      engines/lastexpress/fight/fighter_salko.o
    C++      engines/lastexpress/fight/fighter_vesna.o
    C++      engines/lastexpress/game/object.o
    C++      engines/lastexpress/game/logic.o
    C++      engines/lastexpress/game/beetle.o
    C++      engines/lastexpress/game/savepoint.o
    C++      engines/lastexpress/game/inventory.o
    C++      engines/lastexpress/menu/clock.o
    C++      engines/lastexpress/game/savegame.o
    C++      engines/lastexpress/menu/trainline.o
    C++      engines/lastexpress/game/state.o
In file included from ./engines/lastexpress/game/state.h:29,
                 from engines/lastexpress/game/state.cpp:23:
In member function 'void Common::Serializer::syncAsUint32LE(T&, Common::Serializer::Version, Common::Serializer::Version) [with T = unsigned int]',
    inlined from 'virtual void LastExpress::State::GameProgress::saveLoadWithSerializer(Common::Serializer&)' at ./engines/lastexpress/game/state.h:479:22:
./common/serializer.h:41:30: warning: 'val' may be used uninitialized [-Wmaybe-uninitialized]
   41 |                         TYPE tmp = val; \
      |                              ^~~
./common/serializer.h:121:9: note: in expansion of macro 'SYNC_AS'
  121 |         SYNC_AS(Uint32LE, uint32, 4)
      |         ^~~~~~~
In file included from engines/lastexpress/game/state.cpp:23:
./engines/lastexpress/game/state.h: In member function 'virtual void LastExpress::State::GameProgress::saveLoadWithSerializer(Common::Serializer&)':
./engines/lastexpress/game/state.h:478:48: note: 'val' declared here
  478 |                                         uint32 val;
      |                                                ^~~
    C++      engines/lastexpress/game/scenes.o
    C++      engines/lastexpress/detection.o
    C++      engines/lastexpress/sound/queue.o
    C++      engines/lastexpress/sound/entry.o
engines/lastexpress/sound/entry.cpp: In member function 'virtual void LastExpress::SoundEntry::saveLoadWithSerializer(Common::Serializer&)':
engines/lastexpress/sound/entry.cpp:350:24: warning: 'blocksLeft' may be used uninitialized [-Wmaybe-uninitialized]
  350 |                 uint32 blocksLeft;
      |                        ^~~~~~~~~~
engines/lastexpress/sound/entry.cpp:356:24: warning: 'unused' may be used uninitialized [-Wmaybe-uninitialized]
  356 |                 uint32 unused;
      |                        ^~~~~~
engines/lastexpress/sound/entry.cpp:361:24: warning: 'activateDelay' may be used uninitialized [-Wmaybe-uninitialized]
  361 |                 uint32 activateDelay;
      |                        ^~~~~~~~~~~~~
    C++      engines/lastexpress/game/action.o
    C++      engines/lastexpress/graphics.o
    C++      engines/lastexpress/menu/menu.o
    C++      engines/lilliput/console.o
    C++      engines/lastexpress/resource.o
    C++      engines/lastexpress/sound/sound.o
    C++      engines/lastexpress/lastexpress.o
    C++      engines/lastexpress/game/entities.o
    C++      engines/lilliput/stream.o
    C++      engines/lilliput/detection.o
    C++      engines/lilliput/sound.o
    C++      engines/lure/animseq.o
    C++      engines/lastexpress/debug.o
    C++      engines/lure/disk.o
engines/lure/disk.cpp: In member function 'void Lure::Disk::openFile(uint8)':
engines/lure/disk.cpp:94:44: warning: '%s' directive writing 3 bytes into a region of size between 2 and 4 [-Wformat-overflow=]
   94 |                 sprintf(sFilename, "disk%d.%s", _fileNum, isEGA ? "ega" : "vga");
      |                                            ^~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./common/endian.h:26,
                 from engines/lure/disk.cpp:24:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 10 and 12 bytes into a destination of size 10
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
    C++      engines/lure/decode.o
    C++      engines/lure/debugger.o
    C++      engines/lure/events.o
    C++      engines/lure/detection.o
    C++      engines/lure/intro.o
    C++      engines/lure/memory.o
    C++      engines/lure/fights.o
    C++      engines/lilliput/script.o
    C++      engines/lure/lure.o
    C++      engines/lure/palette.o
    C++      engines/lilliput/lilliput.o
    C++      engines/lure/game.o
    C++      engines/lure/menu.o
    C++      engines/lure/screen.o
    C++      engines/lure/strings.o
    C++      engines/lure/room.o
    C++      engines/lure/sound.o
    C++      engines/macventure/container.o
    C++      engines/macventure/controls.o
    C++      engines/macventure/cursor.o
    C++      engines/macventure/datafiles.o
    C++      engines/lure/scripts.o
    C++      engines/lure/res.o
    C++      engines/lure/res_struct.o
    C++      engines/lure/surface.o
    C++      engines/macventure/prebuilt_dialogs.o
    C++      engines/macventure/dialog.o
    C++      engines/macventure/detection.o
    C++      engines/macventure/saveload.o
    C++      engines/macventure/windows.o
    C++      engines/lure/hotspots.o
    C++      engines/made/console.o
    C++      engines/macventure/image.o
    C++      engines/macventure/text.o
    C++      engines/made/detection.o
    C++      engines/macventure/sound.o
    C++      engines/made/graphics.o
    C++      engines/made/music.o
    C++      engines/macventure/script.o
    C++      engines/macventure/world.o
    C++      engines/made/made.o
    C++      engines/macventure/macventure.o
    C++      engines/made/pmvplayer.o
    C++      engines/macventure/gui.o
    C++      engines/made/database.o
    C++      engines/made/redreader.o
    C++      engines/made/screenfx.o
    C++      engines/made/script.o
    C++      engines/made/sound.o
    C++      engines/made/screen.o
    C++      engines/mads/dragonsphere/game_dragonsphere.o
    C++      engines/mads/dragonsphere/globals_dragonsphere.o
    C++      engines/made/resource.o
    C++      engines/mads/phantom/globals_phantom.o
    C++      engines/mads/dragonsphere/dragonsphere_scenes.o
    C++      engines/mads/phantom/phantom_scenes.o
    C++      engines/mads/phantom/game_phantom.o
    C++      engines/made/scriptfuncs.o
    C++      engines/mads/nebular/game_nebular.o
    C++      engines/mads/nebular/dialogs_nebular.o
    C++      engines/mads/nebular/globals_nebular.o
    C++      engines/mads/nebular/menu_nebular.o
    C++      engines/mads/phantom/phantom_scenes3.o
    C++      engines/mads/dragonsphere/dragonsphere_scenes1.o
    C++      engines/mads/nebular/nebular_scenes.o
    C++      engines/mads/phantom/phantom_scenes5.o
    C++      engines/mads/phantom/phantom_scenes2.o
    C++      engines/mads/phantom/phantom_scenes4.o
    C++      engines/mads/nebular/sound_nebular.o
    C++      engines/mads/nebular/nebular_scenes1.o
    C++      engines/mads/phantom/phantom_scenes1.o
    C++      engines/mads/nebular/nebular_scenes5.o
    C++      engines/mads/action.o
    C++      engines/mads/nebular/nebular_scenes2.o
    C++      engines/mads/nebular/nebular_scenes8.o
    C++      engines/mads/audio.o
    C++      engines/mads/camera.o
    C++      engines/mads/assets.o
    C++      engines/mads/nebular/nebular_scenes7.o
    C++      engines/mads/animation.o
    C++      engines/mads/nebular/nebular_scenes4.o
    C++      engines/mads/compression.o
    C++      engines/mads/debugger.o
    C++      engines/mads/events.o
    C++      engines/mads/detection.o
    C++      engines/mads/font.o
    C++      engines/mads/globals.o
    C++      engines/mads/dialogs.o
    C++      engines/mads/game_data.o
    C++      engines/mads/nebular/nebular_scenes3.o
    C++      engines/mads/hotspots.o
    C++      engines/mads/mads.o
    C++      engines/mads/game.o
    C++      engines/mads/inventory.o
    C++      engines/mads/nebular/nebular_scenes6.o
    C++      engines/mads/conversations.o
    C++      engines/mads/messages.o
    C++      engines/mads/menu_views.o
    C++      engines/mads/msurface.o
    C++      engines/mads/rails.o
    C++      engines/mads/resources.o
    C++      engines/mads/palette.o
    C++      engines/mads/player.o
    C++      engines/mads/sound.o
    C++      engines/mads/staticres.o
    C++      engines/mads/sequence.o
    C++      engines/mads/screen.o
    C++      engines/mads/scene_data.o
    C++      engines/mads/sprites.o
    C++      engines/mads/scene.o
    C++      engines/mohawk/cursors.o
    C++      engines/mohawk/bitmap.o
    C++      engines/mohawk/installer_archive.o
    C++      engines/mohawk/graphics.o
    C++      engines/mohawk/console.o
    C++      engines/mohawk/detection.o
    C++      engines/mads/user_interface.o
    C++      engines/mohawk/livingbooks_graphics.o
    C++      engines/mohawk/dialogs.o
    C++      engines/mohawk/mohawk.o
    C++      engines/mohawk/livingbooks_lbx.o
engines/mohawk/livingbooks_lbx.cpp: In member function 'virtual bool Mohawk::LBXDataFile::call(uint, const Common::Array<Mohawk::LBValue>&, Mohawk::LBValue&)':
engines/mohawk/livingbooks_lbx.cpp:83:38: warning: implicitly-declared 'Mohawk::LBValue& Mohawk::LBValue::operator=(const Mohawk::LBValue&)' is deprecated [-Wdeprecated-copy]
   83 |                 result = LBValue(list);
      |                                      ^
In file included from ./engines/mohawk/livingbooks.h:37,
                 from engines/mohawk/livingbooks_lbx.cpp:23:
./engines/mohawk/livingbooks_code.h:82:9: note: because 'Mohawk::LBValue' has user-provided 'Mohawk::LBValue::LBValue(const Mohawk::LBValue&)'
   82 |         LBValue(const LBValue &val) {
      |         ^~~~~~~
engines/mohawk/livingbooks_lbx.cpp:127:34: warning: implicitly-declared 'Mohawk::LBValue& Mohawk::LBValue::operator=(const Mohawk::LBValue&)' is deprecated [-Wdeprecated-copy]
  127 |                         result = 1;
      |                                  ^
In file included from ./engines/mohawk/livingbooks.h:37,
                 from engines/mohawk/livingbooks_lbx.cpp:23:
./engines/mohawk/livingbooks_code.h:82:9: note: because 'Mohawk::LBValue' has user-provided 'Mohawk::LBValue::LBValue(const Mohawk::LBValue&)'
   82 |         LBValue(const LBValue &val) {
      |         ^~~~~~~
engines/mohawk/livingbooks_lbx.cpp:129:34: warning: implicitly-declared 'Mohawk::LBValue& Mohawk::LBValue::operator=(const Mohawk::LBValue&)' is deprecated [-Wdeprecated-copy]
  129 |                         result = 0;
      |                                  ^
In file included from ./engines/mohawk/livingbooks.h:37,
                 from engines/mohawk/livingbooks_lbx.cpp:23:
./engines/mohawk/livingbooks_code.h:82:9: note: because 'Mohawk::LBValue' has user-provided 'Mohawk::LBValue::LBValue(const Mohawk::LBValue&)'
   82 |         LBValue(const LBValue &val) {
      |         ^~~~~~~
In file included from ./common/array.h:27,
                 from ./engines/mohawk/mohawk.h:27,
                 from ./engines/mohawk/livingbooks.h:26,
                 from engines/mohawk/livingbooks_lbx.cpp:23:
./common/algorithm.h: In instantiation of 'Out Common::copy_backward(In, In, Out) [with In = Mohawk::LBValue*; Out = Mohawk::LBValue*]':
./common/array.h:366:18:   required from 'T* Common::Array<T>::insert_aux(Common::Array<T>::iterator, Common::Array<T>::const_iterator, Common::Array<T>::const_iterator) [with T = Mohawk::LBValue; Common::Array<T>::iterator = Mohawk::LBValue*; Common::Array<T>::const_iterator = const Mohawk::LBValue*]'
./common/array.h:108:4:   required from 'void Common::Array<T>::push_back(const T&) [with T = Mohawk::LBValue]'
engines/mohawk/livingbooks_lbx.cpp:82:25:   required from here
./common/algorithm.h:54:24: warning: implicitly-declared 'Mohawk::LBValue& Mohawk::LBValue::operator=(const Mohawk::LBValue&)' is deprecated [-Wdeprecated-copy]
   54 |                 *--dst = *--last;
      |                 ~~~~~~~^~~~~~~~~
In file included from ./engines/mohawk/livingbooks.h:37,
                 from engines/mohawk/livingbooks_lbx.cpp:23:
./engines/mohawk/livingbooks_code.h:82:9: note: because 'Mohawk::LBValue' has user-provided 'Mohawk::LBValue::LBValue(const Mohawk::LBValue&)'
   82 |         LBValue(const LBValue &val) {
      |         ^~~~~~~
In file included from ./common/array.h:27,
                 from ./engines/mohawk/mohawk.h:27,
                 from ./engines/mohawk/livingbooks.h:26,
                 from engines/mohawk/livingbooks_lbx.cpp:23:
./common/algorithm.h: In instantiation of 'Out Common::copy(In, In, Out) [with In = const Mohawk::LBValue*; Out = Mohawk::LBValue*]':
./common/array.h:369:9:   required from 'T* Common::Array<T>::insert_aux(Common::Array<T>::iterator, Common::Array<T>::const_iterator, Common::Array<T>::const_iterator) [with T = Mohawk::LBValue; Common::Array<T>::iterator = Mohawk::LBValue*; Common::Array<T>::const_iterator = const Mohawk::LBValue*]'
./common/array.h:108:4:   required from 'void Common::Array<T>::push_back(const T&) [with T = Mohawk::LBValue]'
engines/mohawk/livingbooks_lbx.cpp:82:25:   required from here
./common/algorithm.h:40:24: warning: implicitly-declared 'Mohawk::LBValue& Mohawk::LBValue::operator=(const Mohawk::LBValue&)' is deprecated [-Wdeprecated-copy]
   40 |                 *dst++ = *first++;
      |                 ~~~~~~~^~~~~~~~~~
In file included from ./engines/mohawk/livingbooks.h:37,
                 from engines/mohawk/livingbooks_lbx.cpp:23:
./engines/mohawk/livingbooks_code.h:82:9: note: because 'Mohawk::LBValue' has user-provided 'Mohawk::LBValue::LBValue(const Mohawk::LBValue&)'
   82 |         LBValue(const LBValue &val) {
      |         ^~~~~~~
    C++      engines/mohawk/sound.o
    C++      engines/mohawk/view.o
    C++      engines/mohawk/video.o
    C++      engines/mohawk/cstime_graphics.o
    C++      engines/mohawk/resource.o
    C++      engines/mohawk/cstime.o
    C++      engines/mohawk/cstime_cases.o
    C++      engines/mohawk/cstime_view.o
    C++      engines/mohawk/cstime_ui.o
    C++      engines/mohawk/myst_card.o
    C++      engines/mohawk/myst_areas.o
    C++      engines/mohawk/myst_sound.o
    C++      engines/mohawk/myst_graphics.o
    C++      engines/mohawk/cstime_game.o
    C++      engines/mohawk/resource_cache.o
    C++      engines/mohawk/myst.o
    C++      engines/mohawk/myst_stacks/credits.o
    C++      engines/mohawk/myst_stacks/demo.o
    C++      engines/mohawk/livingbooks_code.o
engines/mohawk/livingbooks_code.cpp: In member function 'void Mohawk::LBCode::nextToken()':
engines/mohawk/livingbooks_code.cpp:207:45: warning: implicitly-declared 'Mohawk::LBValue& Mohawk::LBValue::operator=(const Mohawk::LBValue&)' is deprecated [-Wdeprecated-copy]
  207 |                 _currValue = _strings[offset];
      |                                             ^
In file included from ./engines/mohawk/livingbooks.h:37,
                 from engines/mohawk/livingbooks_code.cpp:23:
./engines/mohawk/livingbooks_code.h:82:9: note: because 'Mohawk::LBValue' has user-provided 'Mohawk::LBValue::LBValue(const Mohawk::LBValue&)'
   82 |         LBValue(const LBValue &val) {
      |         ^~~~~~~
engines/mohawk/livingbooks_code.cpp:221:72: warning: implicitly-declared 'Mohawk::LBValue& Mohawk::LBValue::operator=(const Mohawk::LBValue&)' is deprecated [-Wdeprecated-copy]
  221 |                         _currValue = READ_BE_UINT16(_data + _currOffset);
      |                                                                        ^
In file included from ./engines/mohawk/livingbooks.h:37,
                 from engines/mohawk/livingbooks_code.cpp:23:
./engines/mohawk/livingbooks_code.h:82:9: note: because 'Mohawk::LBValue' has user-provided 'Mohawk::LBValue::LBValue(const Mohawk::LBValue&)'
   82 |         LBValue(const LBValue &val) {
      |         ^~~~~~~
engines/mohawk/livingbooks_code.cpp:236:64: warning: implicitly-declared 'Mohawk::LBValue& Mohawk::LBValue::operator=(const Mohawk::LBValue&)' is deprecated [-Wdeprecated-copy]
  236 |                 _currValue = READ_BE_UINT16(_data + _currOffset);
      |                                                                ^
In file included from ./engines/mohawk/livingbooks.h:37,
                 from engines/mohawk/livingbooks_code.cpp:23:
./engines/mohawk/livingbooks_code.h:82:9: note: because 'Mohawk::LBValue' has user-provided 'Mohawk::LBValue::LBValue(const Mohawk::LBValue&)'
   82 |         LBValue(const LBValue &val) {
      |         ^~~~~~~
engines/mohawk/livingbooks_code.cpp:245:49: warning: implicitly-declared 'Mohawk::LBValue& Mohawk::LBValue::operator=(const Mohawk::LBValue&)' is deprecated [-Wdeprecated-copy]
  245 |                 _currValue = _data[_currOffset++];
      |                                                 ^
In file included from ./engines/mohawk/livingbooks.h:37,
                 from engines/mohawk/livingbooks_code.cpp:23:
./engines/mohawk/livingbooks_code.h:82:9: note: because 'Mohawk::LBValue' has user-provided 'Mohawk::LBValue::LBValue(const Mohawk::LBValue&)'
   82 |         LBValue(const LBValue &val) {
      |         ^~~~~~~
engines/mohawk/livingbooks_code.cpp:256:45: warning: implicitly-declared 'Mohawk::LBValue& Mohawk::LBValue::operator=(const Mohawk::LBValue&)' is deprecated [-Wdeprecated-copy]
  256 |                 _currValue = _strings[offset];
      |                                             ^
In file included from ./engines/mohawk/livingbooks.h:37,
                 from engines/mohawk/livingbooks_code.cpp:23:
./engines/mohawk/livingbooks_code.h:82:9: note: because 'Mohawk::LBValue' has user-provided 'Mohawk::LBValue::LBValue(const Mohawk::LBValue&)'
   82 |         LBValue(const LBValue &val) {
      |         ^~~~~~~
engines/mohawk/livingbooks_code.cpp:262:38: warning: implicitly-declared 'Mohawk::LBValue& Mohawk::LBValue::operator=(const Mohawk::LBValue&)' is deprecated [-Wdeprecated-copy]
  262 |                 _currValue = LBValue();
      |                                      ^
In file included from ./engines/mohawk/livingbooks.h:37,
                 from engines/mohawk/livingbooks_code.cpp:23:
./engines/mohawk/livingbooks_code.h:82:9: note: because 'Mohawk::LBValue' has user-provided 'Mohawk::LBValue::LBValue(const Mohawk::LBValue&)'
   82 |         LBValue(const LBValue &val) {
      |         ^~~~~~~
engines/mohawk/livingbooks_code.cpp: In member function 'Mohawk::LBValue Mohawk::LBCode::runCode(byte)':
engines/mohawk/livingbooks_code.cpp:276:45: warning: implicitly-declared 'Mohawk::LBValue& Mohawk::LBValue::operator=(const Mohawk::LBValue&)' is deprecated [-Wdeprecated-copy]
  276 |                         result = _stack.pop();
      |                                             ^
In file included from ./engines/mohawk/livingbooks.h:37,
                 from engines/mohawk/livingbooks_code.cpp:23:
./engines/mohawk/livingbooks_code.h:82:9: note: because 'Mohawk::LBValue' has user-provided 'Mohawk::LBValue::LBValue(const Mohawk::LBValue&)'
   82 |         LBValue(const LBValue &val) {
      |         ^~~~~~~
engines/mohawk/livingbooks_code.cpp: In member function 'void Mohawk::LBCode::parseArithmetic1()':
engines/mohawk/livingbooks_code.cpp:416:60: warning: implicitly-declared 'Mohawk::LBValue& Mohawk::LBValue::operator=(const Mohawk::LBValue&)' is deprecated [-Wdeprecated-copy]
  416 |                         result = val1.toInt() - val2.toInt();
      |                                                            ^
In file included from ./engines/mohawk/livingbooks.h:37,
                 from engines/mohawk/livingbooks_code.cpp:23:
./engines/mohawk/livingbooks_code.h:82:9: note: because 'Mohawk::LBValue' has user-provided 'Mohawk::LBValue::LBValue(const Mohawk::LBValue&)'
   82 |         LBValue(const LBValue &val) {
      |         ^~~~~~~
engines/mohawk/livingbooks_code.cpp:418:60: warning: implicitly-declared 'Mohawk::LBValue& Mohawk::LBValue::operator=(const Mohawk::LBValue&)' is deprecated [-Wdeprecated-copy]
  418 |                         result = val1.toInt() + val2.toInt();
      |                                                            ^
In file included from ./engines/mohawk/livingbooks.h:37,
                 from engines/mohawk/livingbooks_code.cpp:23:
./engines/mohawk/livingbooks_code.h:82:9: note: because 'Mohawk::LBValue' has user-provided 'Mohawk::LBValue::LBValue(const Mohawk::LBValue&)'
   82 |         LBValue(const LBValue &val) {
      |         ^~~~~~~
engines/mohawk/livingbooks_code.cpp: In member function 'void Mohawk::LBCode::parseArithmetic2()':
engines/mohawk/livingbooks_code.cpp:454:60: warning: implicitly-declared 'Mohawk::LBValue& Mohawk::LBValue::operator=(const Mohawk::LBValue&)' is deprecated [-Wdeprecated-copy]
  454 |                         result = val1.toInt() * val2.toInt();
      |                                                            ^
In file included from ./engines/mohawk/livingbooks.h:37,
                 from engines/mohawk/livingbooks_code.cpp:23:
./engines/mohawk/livingbooks_code.h:82:9: note: because 'Mohawk::LBValue' has user-provided 'Mohawk::LBValue::LBValue(const Mohawk::LBValue&)'
   82 |         LBValue(const LBValue &val) {
      |         ^~~~~~~
engines/mohawk/livingbooks_code.cpp:456:34: warning: implicitly-declared 'Mohawk::LBValue& Mohawk::LBValue::operator=(const Mohawk::LBValue&)' is deprecated [-Wdeprecated-copy]
  456 |                         result = 1;
      |                                  ^
In file included from ./engines/mohawk/livingbooks.h:37,
                 from engines/mohawk/livingbooks_code.cpp:23:
./engines/mohawk/livingbooks_code.h:82:9: note: because 'Mohawk::LBValue' has user-provided 'Mohawk::LBValue::LBValue(const Mohawk::LBValue&)'
   82 |         LBValue(const LBValue &val) {
      |         ^~~~~~~
engines/mohawk/livingbooks_code.cpp:461:68: warning: implicitly-declared 'Mohawk::LBValue& Mohawk::LBValue::operator=(const Mohawk::LBValue&)' is deprecated [-Wdeprecated-copy]
  461 |                                 result = val1.toInt() / val2.toInt();
      |                                                                    ^
In file included from ./engines/mohawk/livingbooks.h:37,
                 from engines/mohawk/livingbooks_code.cpp:23:
./engines/mohawk/livingbooks_code.h:82:9: note: because 'Mohawk::LBValue' has user-provided 'Mohawk::LBValue::LBValue(const Mohawk::LBValue&)'
   82 |         LBValue(const LBValue &val) {
      |         ^~~~~~~
engines/mohawk/livingbooks_code.cpp:464:68: warning: implicitly-declared 'Mohawk::LBValue& Mohawk::LBValue::operator=(const Mohawk::LBValue&)' is deprecated [-Wdeprecated-copy]
  464 |                                 result = val1.toInt() / val2.toInt();
      |                                                                    ^
In file included from ./engines/mohawk/livingbooks.h:37,
                 from engines/mohawk/livingbooks_code.cpp:23:
./engines/mohawk/livingbooks_code.h:82:9: note: because 'Mohawk::LBValue' has user-provided 'Mohawk::LBValue::LBValue(const Mohawk::LBValue&)'
   82 |         LBValue(const LBValue &val) {
      |         ^~~~~~~
engines/mohawk/livingbooks_code.cpp:467:68: warning: implicitly-declared 'Mohawk::LBValue& Mohawk::LBValue::operator=(const Mohawk::LBValue&)' is deprecated [-Wdeprecated-copy]
  467 |                                 result = val1.toInt() % val2.toInt();
      |                                                                    ^
In file included from ./engines/mohawk/livingbooks.h:37,
                 from engines/mohawk/livingbooks_code.cpp:23:
./engines/mohawk/livingbooks_code.h:82:9: note: because 'Mohawk::LBValue' has user-provided 'Mohawk::LBValue::LBValue(const Mohawk::LBValue&)'
   82 |         LBValue(const LBValue &val) {
      |         ^~~~~~~
engines/mohawk/livingbooks_code.cpp: In member function 'void Mohawk::LBCode::parseMain()':
engines/mohawk/livingbooks_code.cpp:526:51: warning: implicitly-declared 'Mohawk::LBValue& Mohawk::LBValue::operator=(const Mohawk::LBValue&)' is deprecated [-Wdeprecated-copy]
  526 |                                 *val = _stack.pop();
      |                                                   ^
In file included from ./engines/mohawk/livingbooks.h:37,
                 from engines/mohawk/livingbooks_code.cpp:23:
./engines/mohawk/livingbooks_code.h:82:9: note: because 'Mohawk::LBValue' has user-provided 'Mohawk::LBValue::LBValue(const Mohawk::LBValue&)'
   82 |         LBValue(const LBValue &val) {
      |         ^~~~~~~
engines/mohawk/livingbooks_code.cpp: In member function 'void Mohawk::LBCode::cmdSetAt(const Common::Array<Mohawk::LBValue>&)':
engines/mohawk/livingbooks_code.cpp:1239:65: warning: implicitly-declared 'Mohawk::LBValue& Mohawk::LBValue::operator=(const Mohawk::LBValue&)' is deprecated [-Wdeprecated-copy]
 1239 |         params[0].list->array[params[1].integer - 1] =  params[2];
      |                                                                 ^
In file included from ./engines/mohawk/livingbooks.h:37,
                 from engines/mohawk/livingbooks_code.cpp:23:
./engines/mohawk/livingbooks_code.h:82:9: note: because 'Mohawk::LBValue' has user-provided 'Mohawk::LBValue::LBValue(const Mohawk::LBValue&)'
   82 |         LBValue(const LBValue &val) {
      |         ^~~~~~~
engines/mohawk/livingbooks_code.cpp: In member function 'void Mohawk::LBCode::cmdSetProperty(const Common::Array<Mohawk::LBValue>&)':
engines/mohawk/livingbooks_code.cpp:1278:31: warning: implicitly-declared 'Mohawk::LBValue& Mohawk::LBValue::operator=(const Mohawk::LBValue&)' is deprecated [-Wdeprecated-copy]
 1278 |                 val = params[2];
      |                               ^
In file included from ./engines/mohawk/livingbooks.h:37,
                 from engines/mohawk/livingbooks_code.cpp:23:
./engines/mohawk/livingbooks_code.h:82:9: note: because 'Mohawk::LBValue' has user-provided 'Mohawk::LBValue::LBValue(const Mohawk::LBValue&)'
   82 |         LBValue(const LBValue &val) {
      |         ^~~~~~~
engines/mohawk/livingbooks_code.cpp:1281:31: warning: implicitly-declared 'Mohawk::LBValue& Mohawk::LBValue::operator=(const Mohawk::LBValue&)' is deprecated [-Wdeprecated-copy]
 1281 |                 val = params[1];
      |                               ^
In file included from ./engines/mohawk/livingbooks.h:37,
                 from engines/mohawk/livingbooks_code.cpp:23:
./engines/mohawk/livingbooks_code.h:82:9: note: because 'Mohawk::LBValue' has user-provided 'Mohawk::LBValue::LBValue(const Mohawk::LBValue&)'
   82 |         LBValue(const LBValue &val) {
      |         ^~~~~~~
engines/mohawk/livingbooks_code.cpp:1284:36: warning: implicitly-declared 'Mohawk::LBValue& Mohawk::LBValue::operator=(const Mohawk::LBValue&)' is deprecated [-Wdeprecated-copy]
 1284 |         target->_variables[name] = val;
      |                                    ^~~
In file included from ./engines/mohawk/livingbooks.h:37,
                 from engines/mohawk/livingbooks_code.cpp:23:
./engines/mohawk/livingbooks_code.h:82:9: note: because 'Mohawk::LBValue' has user-provided 'Mohawk::LBValue::LBValue(const Mohawk::LBValue&)'
   82 |         LBValue(const LBValue &val) {
      |         ^~~~~~~
In file included from ./common/array.h:27,
                 from ./engines/mohawk/mohawk.h:27,
                 from ./engines/mohawk/livingbooks.h:26,
                 from engines/mohawk/livingbooks_code.cpp:23:
./common/algorithm.h: In instantiation of 'Out Common::copy(In, In, Out) [with In = Mohawk::LBValue*; Out = Mohawk::LBValue*]':
./common/array.h:182:7:   required from 'T Common::Array<T>::remove_at(Common::Array<T>::size_type) [with T = Mohawk::LBValue; Common::Array<T>::size_type = unsigned int]'
engines/mohawk/livingbooks_code.cpp:1263:33:   required from here
./common/algorithm.h:40:24: warning: implicitly-declared 'Mohawk::LBValue& Mohawk::LBValue::operator=(const Mohawk::LBValue&)' is deprecated [-Wdeprecated-copy]
   40 |                 *dst++ = *first++;
      |                 ~~~~~~~^~~~~~~~~~
In file included from ./engines/mohawk/livingbooks.h:37,
                 from engines/mohawk/livingbooks_code.cpp:23:
./engines/mohawk/livingbooks_code.h:82:9: note: because 'Mohawk::LBValue' has user-provided 'Mohawk::LBValue::LBValue(const Mohawk::LBValue&)'
   82 |         LBValue(const LBValue &val) {
      |         ^~~~~~~
In file included from ./common/array.h:27,
                 from ./engines/mohawk/mohawk.h:27,
                 from ./engines/mohawk/livingbooks.h:26,
                 from engines/mohawk/livingbooks_code.cpp:23:
./common/algorithm.h: In instantiation of 'Out Common::copy_backward(In, In, Out) [with In = Mohawk::LBValue*; Out = Mohawk::LBValue*]':
./common/array.h:366:18:   required from 'T* Common::Array<T>::insert_aux(Common::Array<T>::iterator, Common::Array<T>::const_iterator, Common::Array<T>::const_iterator) [with T = Mohawk::LBValue; Common::Array<T>::iterator = Mohawk::LBValue*; Common::Array<T>::const_iterator = const Mohawk::LBValue*]'
./common/array.h:108:4:   required from 'void Common::Array<T>::push_back(const T&) [with T = Mohawk::LBValue]'
engines/mohawk/livingbooks_code.cpp:512:19:   required from here
./common/algorithm.h:54:24: warning: implicitly-declared 'Mohawk::LBValue& Mohawk::LBValue::operator=(const Mohawk::LBValue&)' is deprecated [-Wdeprecated-copy]
   54 |                 *--dst = *--last;
      |                 ~~~~~~~^~~~~~~~~
In file included from ./engines/mohawk/livingbooks.h:37,
                 from engines/mohawk/livingbooks_code.cpp:23:
./engines/mohawk/livingbooks_code.h:82:9: note: because 'Mohawk::LBValue' has user-provided 'Mohawk::LBValue::LBValue(const Mohawk::LBValue&)'
   82 |         LBValue(const LBValue &val) {
      |         ^~~~~~~
In file included from ./common/array.h:27,
                 from ./engines/mohawk/mohawk.h:27,
                 from ./engines/mohawk/livingbooks.h:26,
                 from engines/mohawk/livingbooks_code.cpp:23:
./common/algorithm.h: In instantiation of 'Out Common::copy(In, In, Out) [with In = const Mohawk::LBValue*; Out = Mohawk::LBValue*]':
./common/array.h:369:9:   required from 'T* Common::Array<T>::insert_aux(Common::Array<T>::iterator, Common::Array<T>::const_iterator, Common::Array<T>::const_iterator) [with T = Mohawk::LBValue; Common::Array<T>::iterator = Mohawk::LBValue*; Common::Array<T>::const_iterator = const Mohawk::LBValue*]'
./common/array.h:108:4:   required from 'void Common::Array<T>::push_back(const T&) [with T = Mohawk::LBValue]'
engines/mohawk/livingbooks_code.cpp:512:19:   required from here
./common/algorithm.h:40:24: warning: implicitly-declared 'Mohawk::LBValue& Mohawk::LBValue::operator=(const Mohawk::LBValue&)' is deprecated [-Wdeprecated-copy]
   40 |                 *dst++ = *first++;
      |                 ~~~~~~~^~~~~~~~~~
In file included from ./engines/mohawk/livingbooks.h:37,
                 from engines/mohawk/livingbooks_code.cpp:23:
./engines/mohawk/livingbooks_code.h:82:9: note: because 'Mohawk::LBValue' has user-provided 'Mohawk::LBValue::LBValue(const Mohawk::LBValue&)'
   82 |         LBValue(const LBValue &val) {
      |         ^~~~~~~
    C++      engines/mohawk/myst_state.o
    C++      engines/mohawk/myst_scripts.o
    C++      engines/mohawk/myst_stacks/makingof.o
    C++      engines/mohawk/myst_stacks/dni.o
    C++      engines/mohawk/myst_stacks/channelwood.o
    C++      engines/mohawk/myst_stacks/intro.o
    C++      engines/mohawk/myst_stacks/slides.o
    C++      engines/mohawk/myst_stacks/menu.o
    C++      engines/mohawk/myst_stacks/preview.o
    C++      engines/mohawk/livingbooks.o
    C++      engines/mohawk/myst_stacks/mechanical.o
    C++      engines/mohawk/myst_stacks/selenitic.o
    C++      engines/mohawk/myst_stacks/stoneship.o
    C++      engines/mohawk/riven_inventory.o
    C++      engines/mohawk/riven_sound.o
    C++      engines/mohawk/riven_graphics.o
    C++      engines/mohawk/riven.o
    C++      engines/mohawk/riven_vars.o
    C++      engines/mohawk/riven_saveload.o
    C++      engines/mohawk/riven_stack.o
    C++      engines/mohawk/riven_video.o
    C++      engines/mohawk/myst_stacks/myst.o
    C++      engines/mohawk/riven_card.o
    C++      engines/mohawk/riven_stacks/domespit.o
    C++      engines/mohawk/riven_stacks/aspit.o
    C++      engines/mohawk/riven_scripts.o
    C++      engines/mohawk/riven_stacks/bspit.o
    C++      engines/mohawk/riven_stacks/rspit.o
    C++      engines/mohawk/riven_stacks/pspit.o
    C++      engines/mohawk/riven_stacks/ospit.o
    C++      engines/mohawk/riven_stacks/gspit.o
    C++      engines/mortevielle/debugger.o
    C++      engines/mortevielle/detection.o
    C++      engines/mohawk/riven_stacks/tspit.o
    C++      engines/mohawk/riven_stacks/jspit.o
    C++      engines/mortevielle/dialogs.o
    C++      engines/mortevielle/mouse.o
    C++      engines/mortevielle/menu.o
    C++      engines/mortevielle/outtext.o
    C++      engines/mortevielle/mortevielle.o
    C++      engines/mortevielle/actions.o
    C++      engines/mortevielle/graphics.o
    C++      engines/mutationofjb/commands/additemcommand.o
    C++      engines/mutationofjb/commands/bitmapvisibilitycommand.o
    C++      engines/mutationofjb/commands/camefromcommand.o
    C++      engines/mutationofjb/commands/command.o
    C++      engines/mutationofjb/commands/callmacrocommand.o
    C++      engines/mortevielle/saveload.o
    C++      engines/mutationofjb/commands/conditionalcommand.o
    C++      engines/mortevielle/sound.o
    C++      engines/mutationofjb/commands/ifcommand.o
    C++      engines/mutationofjb/commands/changecommand.o
In file included from /usr/include/string.h:519,
                 from ./common/scummsys.h:120,
                 from ./engines/mutationofjb/commands/seqcommand.h:27,
                 from ./engines/mutationofjb/commands/changecommand.h:23,
                 from engines/mutationofjb/commands/changecommand.cpp:23:
In function 'char* strncpy(char*, const char*, size_t)',
    inlined from 'virtual MutationOfJB::Command::ExecuteResult MutationOfJB::ChangeDoorCommand::execute(MutationOfJB::ScriptExecutionContext&)' at engines/mutationofjb/commands/changecommand.cpp:358:10:
/usr/include/bits/string_fortified.h:95:34: warning: 'char* __builtin_strncpy(char*, const char*, long unsigned int)' output may be truncated copying 20 bytes from a string of length 20 [-Wstringop-truncation]
   95 |   return __builtin___strncpy_chk (__dest, __src, __len,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
   96 |                                   __glibc_objsize (__dest));
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'char* strncpy(char*, const char*, size_t)',
    inlined from 'virtual MutationOfJB::Command::ExecuteResult MutationOfJB::ChangeStaticCommand::execute(MutationOfJB::ScriptExecutionContext&)' at engines/mutationofjb/commands/changecommand.cpp:481:10:
/usr/include/bits/string_fortified.h:95:34: warning: 'char* __builtin_strncpy(char*, const char*, long unsigned int)' output may be truncated copying 20 bytes from a string of length 20 [-Wstringop-truncation]
   95 |   return __builtin___strncpy_chk (__dest, __src, __len,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
   96 |                                   __glibc_objsize (__dest));
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~
    C++      engines/mutationofjb/commands/gotocommand.o
    C++      engines/mutationofjb/commands/ifitemcommand.o
    C++      engines/mutationofjb/commands/definestructcommand.o
    C++      engines/mutationofjb/commands/ifpiggycommand.o
    C++      engines/mutationofjb/commands/loadplayercommand.o
    C++      engines/mutationofjb/commands/labelcommand.o
    C++      engines/mutationofjb/commands/removeallitemscommand.o
    C++      engines/mutationofjb/commands/removeitemcommand.o
    C++      engines/mutationofjb/commands/playanimationcommand.o
    C++      engines/mutationofjb/commands/newroomcommand.o
    C++      engines/mutationofjb/commands/seqcommand.o
    C++      engines/mutationofjb/commands/endblockcommand.o
    C++      engines/mutationofjb/commands/renamecommand.o
    C++      engines/mutationofjb/commands/setcolorcommand.o
    C++      engines/mutationofjb/commands/specialshowcommand.o
    C++      engines/mutationofjb/commands/setobjectframecommand.o
    C++      engines/mutationofjb/commands/saycommand.o
    C++      engines/mutationofjb/commands/switchpartcommand.o
    C++      engines/mutationofjb/tasks/sequentialtask.o
    C++      engines/mortevielle/utils.o
    C++      engines/mutationofjb/commands/talkcommand.o
    C++      engines/mutationofjb/tasks/objectanimationtask.o
    C++      engines/mutationofjb/commands/randomcommand.o
    C++      engines/mutationofjb/tasks/saytask.o
    C++      engines/mutationofjb/tasks/taskmanager.o
    C++      engines/mutationofjb/widgets/buttonwidget.o
    C++      engines/mutationofjb/widgets/imagewidget.o
    C++      engines/mutationofjb/widgets/widget.o
    C++      engines/mutationofjb/widgets/labelwidget.o
    C++      engines/mutationofjb/widgets/conversationwidget.o
    C++      engines/mutationofjb/widgets/gamewidget.o
    C++      engines/mutationofjb/widgets/inventorywidget.o
    C++      engines/mutationofjb/tasks/conversationtask.o
    C++      engines/mutationofjb/assets.o
    C++      engines/mutationofjb/encryptedfile.o
    C++      engines/mutationofjb/animationdecoder.o
    C++      engines/mutationofjb/conversationlinelist.o
    C++      engines/mutationofjb/detection.o
    C++      engines/mutationofjb/guiscreen.o
    C++      engines/mutationofjb/font.o
    C++      engines/mutationofjb/game.o
    C++      engines/mutationofjb/debug.o
    C++      engines/mutationofjb/hardcodedstrings.o
    C++      engines/mutationofjb/inventoryitemdefinitionlist.o
    C++      engines/mutationofjb/gamedata.o
    C++      engines/mutationofjb/inventory.o
    C++      engines/mutationofjb/timer.o
    C++      engines/mutationofjb/gamescreen.o
    C++      engines/mutationofjb/mutationofjb.o
    C++      engines/mutationofjb/util.o
    C++      engines/mutationofjb/room.o
    C++      engines/neverhood/background.o
    C++      engines/neverhood/blbarchive.o
    C++      engines/neverhood/entity.o
    C++      engines/neverhood/console.o
    C++      engines/mutationofjb/script.o
    C++      engines/neverhood/diskplayerscene.o
    C++      engines/neverhood/gamevars.o
    C++      engines/neverhood/detection.o
    C++      engines/neverhood/microtiles.o
    C++      engines/neverhood/graphics.o
    C++      engines/neverhood/gamemodule.o
    C++      engines/neverhood/module.o
    C++      engines/neverhood/modules/module1100_sprites.o
    C++      engines/neverhood/modules/module1100.o
    C++      engines/neverhood/modules/module1000.o
    C++      engines/neverhood/modules/module1200.o
    C++      engines/neverhood/menumodule.o
    C++      engines/neverhood/modules/module1200_sprites.o
    C++      engines/neverhood/modules/module1000_sprites.o
    C++      engines/neverhood/modules/module1500.o
    C++      engines/neverhood/modules/module1400.o
    C++      engines/neverhood/modules/module1300_sprites.o
    C++      engines/neverhood/klaymen.o
    C++      engines/neverhood/modules/module1300.o
    C++      engines/neverhood/modules/module1400_sprites.o
    C++      engines/neverhood/modules/module1700.o
    C++      engines/neverhood/modules/module1700_sprites.o
    C++      engines/neverhood/modules/module1600.o
    C++      engines/neverhood/modules/module1800.o
    C++      engines/neverhood/modules/module2000.o
    C++      engines/neverhood/modules/module1600_sprites.o
    C++      engines/neverhood/modules/module1900.o
    C++      engines/neverhood/modules/module2000_sprites.o
    C++      engines/neverhood/modules/module1900_sprites.o
    C++      engines/neverhood/modules/module2100.o
    C++      engines/neverhood/modules/module2100_sprites.o
    C++      engines/neverhood/modules/module2300.o
    C++      engines/neverhood/modules/module2500_sprites.o
    C++      engines/neverhood/modules/module2600.o
    C++      engines/neverhood/modules/module2400.o
    C++      engines/neverhood/modules/module2400_sprites.o
    C++      engines/neverhood/modules/module2600_sprites.o
    C++      engines/neverhood/modules/module2500.o
    C++      engines/neverhood/modules/module2700_sprites.o
    C++      engines/neverhood/modules/module2200_sprites.o
    C++      engines/neverhood/modules/module2900.o
    C++      engines/neverhood/modules/module2900_sprites.o
    C++      engines/neverhood/modules/module2200.o
    C++      engines/neverhood/mouse.o
    C++      engines/neverhood/navigationscene.o
    C++      engines/neverhood/modules/module3000.o
    C++      engines/neverhood/modules/module3000_sprites.o
    C++      engines/neverhood/neverhood.o
    C++      engines/neverhood/modules/module2700.o
    C++      engines/neverhood/modules/module2800_sprites.o
    C++      engines/neverhood/palette.o
    C++      engines/neverhood/modules/module2800.o
    C++      engines/neverhood/saveload.o
    C++      engines/neverhood/resourceman.o
    C++      engines/neverhood/smackerscene.o
    C++      engines/neverhood/screen.o
    C++      engines/neverhood/smackerplayer.o
    C++      engines/neverhood/scene.o
    C++      engines/neverhood/sprite.o
    C++      engines/parallaction/callables_br.o
    C++      engines/parallaction/adlib.o
    C++      engines/neverhood/resource.o
    C++      engines/parallaction/debug.o
    C++      engines/parallaction/callables_ns.o
    C++      engines/parallaction/dialogue.o
    C++      engines/parallaction/balloons.o
    C++      engines/neverhood/sound.o
    C++      engines/parallaction/detection.o
    C++      engines/neverhood/staticdata.o
    C++      engines/parallaction/disk_br.o
    C++      engines/parallaction/exec.o
    C++      engines/parallaction/gfxbase.o
    C++      engines/parallaction/font.o
    C++      engines/parallaction/gui.o
    C++      engines/parallaction/disk_ns.o
    C++      engines/parallaction/graphics.o
    C++      engines/parallaction/inventory.o
    C++      engines/parallaction/gui_br.o
    C++      engines/parallaction/input.o
    C++      engines/parallaction/gui_ns.o
    C++      engines/parallaction/exec_ns.o
    C++      engines/parallaction/objects.o
    C++      engines/parallaction/parser.o
    C++      engines/parallaction/exec_br.o
    C++      engines/parallaction/parallaction_ns.o
    C++      engines/parallaction/parallaction_br.o
    C++      engines/parallaction/staticres.o
    C++      engines/parallaction/parallaction.o
    C++      engines/parallaction/sound_ns.o
    C++      engines/parallaction/sound_br.o
    C++      engines/parallaction/saveload.o
    C++      engines/pegasus/compass.o
    C++      engines/pegasus/console.o
    C++      engines/pegasus/cursor.o
    C++      engines/pegasus/detection.o
    C++      engines/parallaction/walk.o
    C++      engines/pegasus/energymonitor.o
    C++      engines/pegasus/fader.o
    C++      engines/pegasus/elements.o
    C++      engines/pegasus/graphics.o
    C++      engines/parallaction/parser_br.o
    C++      engines/pegasus/interaction.o
    C++      engines/pegasus/hotspot.o
    C++      engines/pegasus/input.o
    C++      engines/pegasus/notification.o
    C++      engines/pegasus/movie.o
    C++      engines/pegasus/sound.o
    C++      engines/parallaction/parser_ns.o
    C++      engines/pegasus/interface.o
    C++      engines/pegasus/util.o
    C++      engines/pegasus/menu.o
    C++      engines/pegasus/surface.o
    C++      engines/pegasus/ai/ai_action.o
    C++      engines/pegasus/gamestate.o
    C++      engines/pegasus/transition.o
    C++      engines/pegasus/timers.o
    C++      engines/pegasus/items/autodragger.o
    C++      engines/pegasus/ai/ai_rule.o
    C++      engines/pegasus/items/inventory.o
    C++      engines/pegasus/ai/ai_area.o
    C++      engines/pegasus/ai/ai_condition.o
    C++      engines/pegasus/items/inventorypicture.o
    C++      engines/pegasus/items/itemlist.o
    C++      engines/pegasus/items/item.o
    C++      engines/pegasus/items/itemdragger.o
    C++      engines/pegasus/items/biochips/biochipitem.o
    C++      engines/pegasus/items/biochips/aichip.o
    C++      engines/pegasus/items/biochips/retscanchip.o
    C++      engines/pegasus/items/biochips/opticalchip.o
    C++      engines/pegasus/items/biochips/shieldchip.o
    C++      engines/pegasus/items/biochips/mapchip.o
    C++      engines/pegasus/items/biochips/pegasuschip.o
    C++      engines/pegasus/items/biochips/mapimage.o
    C++      engines/pegasus/items/inventory/gascanister.o
    C++      engines/pegasus/neighborhood/door.o
    C++      engines/pegasus/neighborhood/exit.o
    C++      engines/pegasus/neighborhood/hotspotinfo.o
    C++      engines/pegasus/neighborhood/extra.o
    C++      engines/pegasus/items/inventory/keycard.o
    C++      engines/pegasus/items/inventory/inventoryitem.o
    C++      engines/pegasus/items/inventory/airmask.o
    C++      engines/pegasus/neighborhood/view.o
    C++      engines/pegasus/neighborhood/turn.o
    C++      engines/pegasus/neighborhood/spot.o
    C++      engines/pegasus/neighborhood/zoom.o
    C++      engines/pegasus/pegasus.o
    C++      engines/pegasus/neighborhood/caldoria/caldoria4dsystem.o
    C++      engines/pegasus/neighborhood/mars/energybeam.o
    C++      engines/pegasus/neighborhood/caldoria/caldoriamirror.o
    C++      engines/pegasus/neighborhood/caldoria/caldoriamessages.o
    C++      engines/pegasus/neighborhood/mars/gravitoncannon.o
    C++      engines/pegasus/neighborhood/mars/hermite.o
    C++      engines/pegasus/neighborhood/mars/planetmover.o
    C++      engines/pegasus/neighborhood/mars/shuttleenergymeter.o
    C++      engines/pegasus/neighborhood/mars/reactor.o
    C++      engines/pegasus/neighborhood/caldoria/caldoriabomb.o
    C++      engines/pegasus/neighborhood/mars/robotship.o
    C++      engines/pegasus/neighborhood/mars/spacechase3d.o
    C++      engines/pegasus/neighborhood/mars/shuttleweapon.o
    C++      engines/pegasus/neighborhood/mars/shuttlehud.o
    C++      engines/pegasus/neighborhood/mars/spacejunk.o
    C++      engines/pegasus/neighborhood/norad/noradelevator.o
    C++      engines/pegasus/neighborhood/mars/tractorbeam.o
    C++      engines/pegasus/neighborhood/norad/norad.o
    C++      engines/pegasus/neighborhood/norad/pressuretracker.o
    C++      engines/pegasus/neighborhood/caldoria/caldoria.o
    C++      engines/pegasus/neighborhood/neighborhood.o
    C++      engines/pegasus/neighborhood/norad/pressuredoor.o
    C++      engines/pegasus/neighborhood/norad/subplatform.o
    C++      engines/pegasus/neighborhood/norad/alpha/ecrmonitor.o
    C++      engines/pegasus/neighborhood/norad/subcontrolroom.o
    C++      engines/pegasus/neighborhood/norad/alpha/fillingstation.o
    C++      engines/pegasus/neighborhood/norad/alpha/panoramascroll.o
    C++      engines/pegasus/neighborhood/norad/alpha/panorama.o
    C++      engines/pegasus/neighborhood/wsc/moleculebin.o
    C++      engines/pegasus/neighborhood/norad/delta/globegame.o
    C++      engines/pegasus/neighborhood/prehistoric/prehistoric.o
    C++      engines/pegasus/neighborhood/mars/mars.o
    C++      engines/pegasus/neighborhood/norad/alpha/noradalpha.o
    C++      engines/pegasus/neighborhood/norad/delta/noraddelta.o
    C++      engines/pegasus/neighborhood/tsa/tinytsa.o
    C++      engines/petka/flc.o
    C++      engines/petka/detection.o
    C++      engines/petka/file_mgr.o
    C++      engines/petka/saveload.o
    C++      engines/petka/big_dialogue.o
    C++      engines/petka/petka.o
    C++      engines/petka/video.o
    C++      engines/petka/sound.o
    C++      engines/petka/interfaces/dialog_interface.o
    C++      engines/petka/q_manager.o
    C++      engines/petka/q_system.o
    C++      engines/petka/interfaces/interface.o
    C++      engines/petka/interfaces/map.o
    C++      engines/pegasus/neighborhood/tsa/fulltsa.o
    C++      engines/petka/interfaces/panel.o
    C++      engines/petka/interfaces/save_load.o
    C++      engines/petka/interfaces/sequence.o
    C++      engines/petka/interfaces/startup.o
    C++      engines/petka/interfaces/main.o
    C++      engines/petka/objects/object_bg.o
    C++      engines/petka/objects/object_cursor.o
    C++      engines/pegasus/neighborhood/wsc/wsc.o
    C++      engines/petka/objects/object_star.o
    C++      engines/petka/objects/object_case.o
    C++      engines/pink/audio_info_mgr.o
    C++      engines/petka/objects/object.o
    C++      engines/pink/cel_decoder.o
    C++      engines/petka/objects/heroes.o
    C++      engines/petka/objects/text.o
    C++      engines/pink/cursor_mgr.o
    C++      engines/pink/file.o
    C++      engines/pink/console.o
    C++      engines/pink/gui.o
    C++      engines/pink/detection.o
    C++      engines/pink/pda_mgr.o
    C++      engines/pink/objects/object.o
    C++      engines/pink/sound.o
    C++      engines/pink/resource_mgr.o
    C++      engines/pink/archive.o
    C++      engines/pink/director.o
    C++      engines/pink/saveload.o
    C++      engines/pink/objects/actions/action.o
    C++      engines/pink/objects/condition.o
    C++      engines/pink/objects/actions/action_hide.o
    C++      engines/pink/objects/actions/action_cel.o
    C++      engines/pink/objects/side_effect.o
    C++      engines/pink/objects/actions/action_loop.o
    C++      engines/pink/objects/module.o
    C++      engines/pink/objects/inventory.o
    C++      engines/pink/pink.o
    C++      engines/pink/objects/actions/action_play.o
    C++      engines/pink/objects/actions/action_still.o
    C++      engines/pink/objects/actions/action_talk.o
    C++      engines/pink/objects/actions/walk_action.o
    C++      engines/pink/objects/actions/action_play_with_sfx.o
In file included from ./common/stream.h:26,
                 from ./common/savefile.h:28,
                 from ./engines/pink/pink.h:27,
                 from engines/pink/objects/actions/action_play_with_sfx.cpp:25:
In member function 'uint32 Common::ReadStream::readUint32LE()',
    inlined from 'uint32 Pink::Archive::readDWORD()' at ./engines/pink/archive.h:48:55,
    inlined from 'virtual void Pink::ActionSfx::deserialize(Pink::Archive&)' at engines/pink/objects/actions/action_play_with_sfx.cpp:87:28:
./common/endian.h:382:43: warning: 'val' may be used uninitialized [-Wmaybe-uninitialized]
  382 |         #define FROM_LE_32(a) ((uint32)(a))
      |                                           ^
./common/stream.h:359:24: note: in expansion of macro 'FROM_LE_32'
  359 |                 return FROM_LE_32(val);
      |                        ^~~~~~~~~~
In file included from ./common/savefile.h:28,
                 from ./engines/pink/pink.h:27,
                 from engines/pink/objects/actions/action_play_with_sfx.cpp:25:
./common/stream.h: In member function 'virtual void Pink::ActionSfx::deserialize(Pink::Archive&)':
./common/stream.h:357:24: note: 'val' declared here
  357 |                 uint32 val;
      |                        ^~~
    C++      engines/pink/objects/actors/audio_info_pda_button.o
    C++      engines/pink/objects/actions/action_sound.o
    C++      engines/pink/objects/actions/action_text.o
    C++      engines/pink/objects/actors/actor.o
    C++      engines/pink/objects/actors/supporting_actor.o
    C++      engines/pink/objects/actors/pda_button_actor.o
    C++      engines/pink/objects/handlers/handler_mgr.o
    C++      engines/pink/objects/pages/pda_page.o
    C++      engines/pink/objects/pages/page.o
    C++      engines/pink/objects/actors/lead_actor.o
    C++      engines/pink/objects/sequences/seq_timer.o
    C++      engines/pink/objects/handlers/handler.o
    C++      engines/pink/objects/pages/game_page.o
    C++      engines/pink/objects/sequences/sequence.o
    C++      engines/pink/objects/sequences/sequence_context.o
    C++      engines/pink/objects/sequences/sequence_item.o
    C++      engines/pink/objects/walk/walk_location.o
    C++      engines/plumbers/console.o
    C++      engines/pink/objects/walk/walk_mgr.o
    C++      engines/pink/objects/walk/walk_shortest_path.o
    C++      engines/plumbers/detection.o
    C++      engines/pink/objects/sequences/sequencer.o
    C++      engines/prince/animation.o
    C++      engines/prince/decompress.o
    C++      engines/prince/cursor.o
    C++      engines/prince/debugger.o
    C++      engines/prince/archive.o
    C++      engines/plumbers/plumbers.o
engines/plumbers/plumbers.cpp: In member function 'void Plumbers::PlumbersGame::initTables()':
engines/plumbers/plumbers.cpp:317:15: warning: 'void* memset(void*, int, size_t)' clearing an object of type 'struct Plumbers::PlumbersGame::<unnamed>' with no trivial copy-assignment; use assignment or value-initialization instead [-Wclass-memaccess]
  317 |         memset(_scenes, 0, sizeof(_scenes));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from engines/plumbers/plumbers.cpp:23:
./engines/plumbers/plumbers.h:72:16: note: 'struct Plumbers::PlumbersGame::<unnamed>' declared here
   72 |         struct {
      |                ^
engines/plumbers/plumbers.cpp:318:15: warning: 'void* memset(void*, int, size_t)' clearing an object of type 'struct Plumbers::PlumbersGame::<unnamed>' with no trivial copy-assignment; use assignment or value-initialization instead [-Wclass-memaccess]
  318 |         memset(_bitmaps, 0, sizeof(_bitmaps));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from engines/plumbers/plumbers.cpp:23:
./engines/plumbers/plumbers.h:67:16: note: 'struct Plumbers::PlumbersGame::<unnamed>' declared here
   67 |         struct {
      |                ^
    C++      engines/prince/flags.o
    C++      engines/prince/font.o
    C++      engines/prince/mhwanh.o
    C++      engines/prince/music.o
    C++      engines/prince/graphics.o
    C++      engines/prince/detection.o
    C++      engines/prince/object.o
    C++      engines/prince/mob.o
    C++      engines/prince/draw.o
    C++      engines/prince/pscr.o
    C++      engines/prince/hero.o
    C++      engines/prince/inventory.o
In file included from /usr/include/string.h:519,
                 from ./common/scummsys.h:120,
                 from ./common/random.h:26,
                 from ./engines/prince/prince.h:26,
                 from engines/prince/inventory.cpp:23:
In function 'char* strncpy(char*, const char*, size_t)',
    inlined from 'void Prince::PrinceEngine::inventoryLeftMouseButton()' at engines/prince/inventory.cpp:397:11:
/usr/include/bits/string_fortified.h:95:34: warning: 'char* __builtin_strncpy(char*, const char*, long unsigned int)' specified bound 256 equals destination size [-Wstringop-truncation]
   95 |   return __builtin___strncpy_chk (__dest, __src, __len,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
   96 |                                   __glibc_objsize (__dest));
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~
    C++      engines/prince/variatxt.o
    C++      engines/prince/videoplayer.o
    C++      engines/prince/sound.o
    C++      engines/queen/bankman.o
    C++      engines/queen/credits.o
    C++      engines/prince/resource.o
engines/prince/resource.cpp: In member function 'bool Prince::PrinceEngine::loadLocation(uint16)':
engines/prince/resource.cpp:96:15: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct Prince::Text'; use assignment or value-initialization instead [-Wclass-memaccess]
   96 |         memset(_textSlots, 0, sizeof(_textSlots));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from engines/prince/resource.cpp:26:
./engines/prince/prince.h:97:8: note: 'struct Prince::Text' declared here
   97 | struct Text {
      |        ^~~~
    C++      engines/prince/saveload.o
    C++      engines/prince/walk.o
    C++      engines/queen/debug.o
    C++      engines/prince/prince.o
    C++      engines/queen/detection.o
    C++      engines/queen/cutaway.o
    C++      engines/queen/command.o
engines/queen/command.cpp: In member function 'virtual void Queen::CmdText::displayTemp(Queen::InkColor, const char*, bool)':
engines/queen/command.cpp:64:47: warning: '__builtin___snprintf_chk' output may be truncated before the last format character [-Wformat-truncation=]
   64 |         snprintf(temp, MAX_COMMAND_LEN, "%s %s", _command, name);
      |                                               ^
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./common/util.h:26,
                 from ./engines/queen/command.h:26,
                 from engines/queen/command.cpp:24:
/usr/include/bits/stdio2.h:71:35: note: '__builtin___snprintf_chk' output 2 or more bytes (assuming 257) into a destination of size 256
   71 |   return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   72 |                                    __glibc_objsize (__s), __fmt,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   73 |                                    __va_arg_pack ());
      |                                    ~~~~~~~~~~~~~~~~~
engines/queen/command.cpp: In member function 'virtual void Queen::CmdTextHebrew::displayTemp(Queen::InkColor, const char*, bool)':
engines/queen/command.cpp:90:55: warning: '__builtin___snprintf_chk' output may be truncated before the last format character [-Wformat-truncation=]
   90 |                 snprintf(temp, MAX_COMMAND_LEN, "%s %s", name, _command);
      |                                                       ^
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./common/util.h:26,
                 from ./engines/queen/command.h:26,
                 from engines/queen/command.cpp:24:
/usr/include/bits/stdio2.h:71:35: note: '__builtin___snprintf_chk' output 2 or more bytes (assuming 257) into a destination of size 256
   71 |   return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   72 |                                    __glibc_objsize (__s), __fmt,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   73 |                                    __va_arg_pack ());
      |                                    ~~~~~~~~~~~~~~~~~
    C++      engines/queen/input.o
    C++      engines/queen/grid.o
    C++      engines/queen/musicdata.o
    C++      engines/queen/journal.o
engines/queen/journal.cpp: In member function 'void Queen::Journal::drawSaveDescriptions()':
engines/queen/journal.cpp:186:30: warning: '%d' directive writing between 1 and 11 bytes into a region of size 4 [-Wformat-overflow=]
  186 |                 sprintf(nb, "%d", n + 1);
      |                              ^~
engines/queen/journal.cpp:186:29: note: directive argument in the range [-2147483647, 2147483647]
  186 |                 sprintf(nb, "%d", n + 1);
      |                             ^~~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./common/str.h:26,
                 from ./common/error.h:26,
                 from engines/queen/journal.cpp:24:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 2 and 12 bytes into a destination of size 4
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
    C++      engines/queen/display.o
engines/queen/display.cpp: In constructor 'Queen::Display::Display(Queen::QueenEngine*, OSystem*)':
engines/queen/display.cpp:76:15: warning: 'void* memset(void*, int, size_t)' clearing an object of type 'struct Queen::Display::TextSlot' with no trivial copy-assignment; use assignment or value-initialization instead [-Wclass-memaccess]
   76 |         memset(_texts, 0, sizeof(_texts));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from engines/queen/display.cpp:36:
./engines/queen/display.h:217:16: note: 'struct Queen::Display::TextSlot' declared here
  217 |         struct TextSlot {
      |                ^~~~~~~~
    C++      engines/queen/music.o
    C++      engines/queen/graphics.o
engines/queen/graphics.cpp: In constructor 'Queen::Graphics::Graphics(Queen::QueenEngine*)':
engines/queen/graphics.cpp:206:15: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct Queen::BobSlot'; use assignment or value-initialization instead [-Wclass-memaccess]
  206 |         memset(_bobs, 0, sizeof(_bobs));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from engines/queen/graphics.cpp:24:
./engines/queen/graphics.h:31:8: note: 'struct Queen::BobSlot' declared here
   31 | struct BobSlot {
      |        ^~~~~~~
    C++      engines/prince/script.o
    C++      engines/queen/midiadlib.o
    C++      engines/queen/restables.o
    C++      engines/queen/state.o
    C++      engines/queen/queen.o
    C++      engines/queen/resource.o
    C++      engines/queen/walk.o
    C++      engines/queen/sound.o
    C++      engines/queen/talk.o
    C++      engines/saga/console.o
    C++      engines/queen/logic.o
    C++      engines/saga/actor_path.o
    C++      engines/saga/actor_walk.o
    C++      engines/saga/animation.o
    C++      engines/saga/font_map.o
    C++      engines/saga/detection.o
    C++      engines/saga/input.o
    C++      engines/saga/image.o
    C++      engines/saga/events.o
    C++      engines/saga/actor.o
    C++      engines/saga/gfx.o
    C++      engines/saga/font.o
    C++      engines/saga/itedata.o
    C++      engines/saga/introproc_ite.o
    C++      engines/saga/render.o
    C++      engines/saga/objectmap.o
    C++      engines/saga/music.o
    C++      engines/saga/palanim.o
    C++      engines/saga/puzzle.o
    C++      engines/saga/resource_rsc.o
    C++      engines/saga/resource.o
    C++      engines/saga/saveload.o
    C++      engines/saga/isomap.o
    C++      engines/saga/shorten.o
    C++      engines/saga/saga.o
    C++      engines/saga/sound.o
    C++      engines/saga/interface.o
    C++      engines/saga/scene.o
    C++      engines/saga/sndres.o
engines/saga/sndres.cpp: In member function 'bool Saga::SndRes::load(Saga::ResourceContext*, uint32, Saga::SoundBuffer&, bool)':
engines/saga/sndres.cpp:222:90: warning: '%03x' directive writing between 3 and 8 bytes into a region of size between 0 and 10 [-Wformat-overflow=]
  222 |                                 sprintf(soundFileName, "Voices/Voices%d/Voices%d/Voices%d%03x", _voiceSerial, dirIndex, _voiceSerial, resourceId);
      |                                                                                          ^~~~
engines/saga/sndres.cpp:222:56: note: directive argument in the range [0, 4294967294]
  222 |                                 sprintf(soundFileName, "Voices/Voices%d/Voices%d/Voices%d%03x", _voiceSerial, dirIndex, _voiceSerial, resourceId);
      |                                                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/engine.h:26,
                 from ./engines/saga/saga.h:26,
                 from engines/saga/sndres.cpp:25:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 34 and 66 bytes into a destination of size 40
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
engines/saga/sndres.cpp:220:88: warning: '%03x' directive writing between 3 and 8 bytes into a region of size between 3 and 10 [-Wformat-overflow=]
  220 |                                 sprintf(soundFileName, "Voices/VoicesS/Voices%d/VoicesS%03x", dirIndex, resourceId);
      |                                                                                        ^~~~
engines/saga/sndres.cpp:220:56: note: directive argument in the range [0, 4294967294]
  220 |                                 sprintf(soundFileName, "Voices/VoicesS/Voices%d/VoicesS%03x", dirIndex, resourceId);
      |                                                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/engine.h:26,
                 from ./engines/saga/saga.h:26,
                 from engines/saga/sndres.cpp:25:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 34 and 46 bytes into a destination of size 40
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
    C++      engines/saga/sthread.o
In file included from ./engines/saga/interface.h:33,
                 from engines/saga/sthread.cpp:29:
In copy constructor 'Saga::ScriptThread::ScriptThread(const Saga::ScriptThread&)',
    inlined from 'Common::ListInternal::Node<T>::Node(const T&) [with T = Saga::ScriptThread]' at ./common/list_intern.h:43:22,
    inlined from 'void Common::List<T>::insert(Common::List<T>::NodeBase*, const t_T&) [with t_T = Saga::ScriptThread]' at ./common/list.h:248:37,
    inlined from 'void Common::List<T>::push_front(const t_T&) [with t_T = Saga::ScriptThread]' at ./common/list.h:126:9,
    inlined from 'Saga::ScriptThread& Saga::Script::createThread(uint16, uint16)' at engines/saga/sthread.cpp:44:24:
./engines/saga/script.h:157:7: warning: 'tmp.Saga::ScriptThread::_moduleBase' may be used uninitialized [-Wmaybe-uninitialized]
  157 | class ScriptThread {
      |       ^~~~~~~~~~~~
engines/saga/sthread.cpp: In member function 'Saga::ScriptThread& Saga::Script::createThread(uint16, uint16)':
engines/saga/sthread.cpp:43:22: note: 'tmp' declared here
   43 |         ScriptThread tmp;
      |                      ^~~
In file included from ./engines/saga/interface.h:33,
                 from engines/saga/sthread.cpp:29:
In copy constructor 'Saga::ScriptThread::ScriptThread(const Saga::ScriptThread&)',
    inlined from 'Common::ListInternal::Node<T>::Node(const T&) [with T = Saga::ScriptThread]' at ./common/list_intern.h:43:22,
    inlined from 'void Common::List<T>::insert(Common::List<T>::NodeBase*, const t_T&) [with t_T = Saga::ScriptThread]' at ./common/list.h:248:37,
    inlined from 'void Common::List<T>::push_front(const t_T&) [with t_T = Saga::ScriptThread]' at ./common/list.h:126:9,
    inlined from 'Saga::ScriptThread& Saga::Script::createThread(uint16, uint16)' at engines/saga/sthread.cpp:44:24:
./engines/saga/script.h:157:7: warning: 'tmp.Saga::ScriptThread::_moduleBaseSize' may be used uninitialized [-Wmaybe-uninitialized]
  157 | class ScriptThread {
      |       ^~~~~~~~~~~~
engines/saga/sthread.cpp: In member function 'Saga::ScriptThread& Saga::Script::createThread(uint16, uint16)':
engines/saga/sthread.cpp:43:22: note: 'tmp' declared here
   43 |         ScriptThread tmp;
      |                      ^~~
In file included from ./engines/saga/interface.h:33,
                 from engines/saga/sthread.cpp:29:
In copy constructor 'Saga::ScriptThread::ScriptThread(const Saga::ScriptThread&)',
    inlined from 'Common::ListInternal::Node<T>::Node(const T&) [with T = Saga::ScriptThread]' at ./common/list_intern.h:43:22,
    inlined from 'void Common::List<T>::insert(Common::List<T>::NodeBase*, const t_T&) [with t_T = Saga::ScriptThread]' at ./common/list.h:248:37,
    inlined from 'void Common::List<T>::push_front(const t_T&) [with t_T = Saga::ScriptThread]' at ./common/list.h:126:9,
    inlined from 'Saga::ScriptThread& Saga::Script::createThread(uint16, uint16)' at engines/saga/sthread.cpp:44:24:
./engines/saga/script.h:157:7: warning: 'tmp.Saga::ScriptThread::_commonBase' may be used uninitialized [-Wmaybe-uninitialized]
  157 | class ScriptThread {
      |       ^~~~~~~~~~~~
engines/saga/sthread.cpp: In member function 'Saga::ScriptThread& Saga::Script::createThread(uint16, uint16)':
engines/saga/sthread.cpp:43:22: note: 'tmp' declared here
   43 |         ScriptThread tmp;
      |                      ^~~
In file included from ./engines/saga/interface.h:33,
                 from engines/saga/sthread.cpp:29:
In copy constructor 'Saga::ScriptThread::ScriptThread(const Saga::ScriptThread&)',
    inlined from 'Common::ListInternal::Node<T>::Node(const T&) [with T = Saga::ScriptThread]' at ./common/list_intern.h:43:22,
    inlined from 'void Common::List<T>::insert(Common::List<T>::NodeBase*, const t_T&) [with t_T = Saga::ScriptThread]' at ./common/list.h:248:37,
    inlined from 'void Common::List<T>::push_front(const t_T&) [with t_T = Saga::ScriptThread]' at ./common/list.h:126:9,
    inlined from 'Saga::ScriptThread& Saga::Script::createThread(uint16, uint16)' at engines/saga/sthread.cpp:44:24:
./engines/saga/script.h:157:7: warning: 'tmp.Saga::ScriptThread::_staticBase' may be used uninitialized [-Wmaybe-uninitialized]
  157 | class ScriptThread {
      |       ^~~~~~~~~~~~
engines/saga/sthread.cpp: In member function 'Saga::ScriptThread& Saga::Script::createThread(uint16, uint16)':
engines/saga/sthread.cpp:43:22: note: 'tmp' declared here
   43 |         ScriptThread tmp;
      |                      ^~~
In file included from ./engines/saga/interface.h:33,
                 from engines/saga/sthread.cpp:29:
In copy constructor 'Saga::ScriptThread::ScriptThread(const Saga::ScriptThread&)',
    inlined from 'Common::ListInternal::Node<T>::Node(const T&) [with T = Saga::ScriptThread]' at ./common/list_intern.h:43:22,
    inlined from 'void Common::List<T>::insert(Common::List<T>::NodeBase*, const t_T&) [with t_T = Saga::ScriptThread]' at ./common/list.h:248:37,
    inlined from 'void Common::List<T>::push_front(const t_T&) [with t_T = Saga::ScriptThread]' at ./common/list.h:126:9,
    inlined from 'Saga::ScriptThread& Saga::Script::createThread(uint16, uint16)' at engines/saga/sthread.cpp:44:24:
./engines/saga/script.h:157:7: warning: 'tmp.Saga::ScriptThread::_voiceLUT' may be used uninitialized [-Wmaybe-uninitialized]
  157 | class ScriptThread {
      |       ^~~~~~~~~~~~
engines/saga/sthread.cpp: In member function 'Saga::ScriptThread& Saga::Script::createThread(uint16, uint16)':
engines/saga/sthread.cpp:43:22: note: 'tmp' declared here
   43 |         ScriptThread tmp;
      |                      ^~~
In file included from ./engines/saga/interface.h:33,
                 from engines/saga/sthread.cpp:29:
In copy constructor 'Saga::ScriptThread::ScriptThread(const Saga::ScriptThread&)',
    inlined from 'Common::ListInternal::Node<T>::Node(const T&) [with T = Saga::ScriptThread]' at ./common/list_intern.h:43:22,
    inlined from 'void Common::List<T>::insert(Common::List<T>::NodeBase*, const t_T&) [with t_T = Saga::ScriptThread]' at ./common/list.h:248:37,
    inlined from 'void Common::List<T>::push_front(const t_T&) [with t_T = Saga::ScriptThread]' at ./common/list.h:126:9,
    inlined from 'Saga::ScriptThread& Saga::Script::createThread(uint16, uint16)' at engines/saga/sthread.cpp:44:24:
./engines/saga/script.h:157:7: warning: 'tmp.Saga::ScriptThread::_strings' may be used uninitialized [-Wmaybe-uninitialized]
  157 | class ScriptThread {
      |       ^~~~~~~~~~~~
engines/saga/sthread.cpp: In member function 'Saga::ScriptThread& Saga::Script::createThread(uint16, uint16)':
engines/saga/sthread.cpp:43:22: note: 'tmp' declared here
   43 |         ScriptThread tmp;
      |                      ^~~
    C++      engines/saga/introproc_ihnm.o
    C++      engines/saga/sfuncs.o
    C++      engines/saga/sprite.o
    C++      engines/saga/introproc_saga2.o
    C++      engines/saga/sfuncs_ihnm.o
    C++      engines/saga/resource_hrs.o
    C++      engines/saga/resource_res.o
    C++      engines/saga/script.o
    C++      engines/sci/decompressor.o
    C++      engines/sci/event.o
    C++      engines/sci/resource_patcher.o
    C++      engines/sci/util.o
    C++      engines/sci/engine/features.o
    C++      engines/sci/engine/gc.o
    C++      engines/sci/detection.o
    C++      engines/sci/engine/file.o
In file included from /usr/include/string.h:519,
                 from ./common/scummsys.h:120,
                 from ./common/savefile.h:27,
                 from engines/sci/engine/file.cpp:23:
In function 'char* strncpy(char*, const char*, size_t)',
    inlined from 'bool Sci::fillSavegameDesc(const Common::String&, Sci::SavegameDesc&)' at engines/sci/engine/file.cpp:338:9:
/usr/include/bits/string_fortified.h:95:34: warning: 'char* __builtin_strncpy(char*, const char*, long unsigned int)' specified bound 36 equals destination size [-Wstringop-truncation]
   95 |   return __builtin___strncpy_chk (__dest, __src, __len,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
   96 |                                   __glibc_objsize (__dest));
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~
    C++      engines/sci/sci.o
    C++      engines/sci/resource_audio.o
    C++      engines/sci/engine/kevent.o
    C++      engines/sci/engine/kernel.o
    C++      engines/sci/engine/kmath.o
    C++      engines/sci/engine/klists.o
    C++      engines/sci/engine/kmenu.o
    C++      engines/sci/resource.o
    C++      engines/sci/engine/kgraphics.o
    C++      engines/sci/engine/guest_additions.o
    C++      engines/sci/engine/kfile.o
    C++      engines/sci/engine/kmovement.o
    C++      engines/sci/engine/kparse.o
    C++      engines/sci/engine/kmisc.o
    C++      engines/sci/engine/ksound.o
    C++      engines/sci/engine/kscripts.o
    C++      engines/sci/engine/kstring.o
    C++      engines/sci/engine/kvideo.o
    C++      engines/sci/console.o
    C++      engines/sci/engine/message.o
    C++      engines/sci/engine/kpathing.o
    C++      engines/sci/engine/selector.o
    C++      engines/sci/engine/object.o
    C++      engines/sci/engine/script_patches.o
    C++      engines/sci/engine/static_selectors.o
    C++      engines/sci/engine/state.o
    C++      engines/sci/engine/scriptdebug.o
    C++      engines/sci/engine/segment.o
    C++      engines/sci/engine/vm_hooks.o
    C++      engines/sci/engine/workarounds.o
    C++      engines/sci/engine/vm_types.o
engines/sci/engine/vm_types.cpp: In member function 'Sci::reg_t Sci::reg_t::lookForWorkaround(Sci::reg_t, const char*) const':
engines/sci/engine/vm_types.cpp:45:38: warning: 'r.Sci::reg_t::_segment' may be used uninitialized [-Wmaybe-uninitialized]
   45 |                 _segment = (_segment & 0xC000) | (segment & 0x3FFF);
      |                            ~~~~~~~~~~^~~~~~~~~
In file included from ./engines/sci/sci.h:30,
                 from engines/sci/engine/vm_types.cpp:23:
./engines/sci/engine/vm_types.h:176:15: note: 'r.Sci::reg_t::_segment' was declared here
  176 |         reg_t r;
      |               ^
engines/sci/engine/vm_types.cpp: In member function 'Sci::reg_t Sci::reg_t::operator+(Sci::reg_t) const':
engines/sci/engine/vm_types.cpp:45:38: warning: 'r.Sci::reg_t::_segment' may be used uninitialized [-Wmaybe-uninitialized]
   45 |                 _segment = (_segment & 0xC000) | (segment & 0x3FFF);
      |                            ~~~~~~~~~~^~~~~~~~~
In file included from ./engines/sci/sci.h:30,
                 from engines/sci/engine/vm_types.cpp:23:
./engines/sci/engine/vm_types.h:176:15: note: 'r.Sci::reg_t::_segment' was declared here
  176 |         reg_t r;
      |               ^
engines/sci/engine/vm_types.cpp:45:38: warning: 'r.Sci::reg_t::_segment' may be used uninitialized [-Wmaybe-uninitialized]
   45 |                 _segment = (_segment & 0xC000) | (segment & 0x3FFF);
      |                            ~~~~~~~~~~^~~~~~~~~
In file included from ./engines/sci/sci.h:30,
                 from engines/sci/engine/vm_types.cpp:23:
./engines/sci/engine/vm_types.h:176:15: note: 'r.Sci::reg_t::_segment' was declared here
  176 |         reg_t r;
      |               ^
engines/sci/engine/vm_types.cpp: In member function 'Sci::reg_t Sci::reg_t::operator-(Sci::reg_t) const':
engines/sci/engine/vm_types.cpp:45:38: warning: 'r.Sci::reg_t::_segment' may be used uninitialized [-Wmaybe-uninitialized]
   45 |                 _segment = (_segment & 0xC000) | (segment & 0x3FFF);
      |                            ~~~~~~~~~~^~~~~~~~~
In file included from ./engines/sci/sci.h:30,
                 from engines/sci/engine/vm_types.cpp:23:
./engines/sci/engine/vm_types.h:176:15: note: 'r.Sci::reg_t::_segment' was declared here
  176 |         reg_t r;
      |               ^
engines/sci/engine/vm_types.cpp:45:38: warning: 'r.Sci::reg_t::_segment' may be used uninitialized [-Wmaybe-uninitialized]
   45 |                 _segment = (_segment & 0xC000) | (segment & 0x3FFF);
      |                            ~~~~~~~~~~^~~~~~~~~
In file included from ./engines/sci/sci.h:30,
                 from engines/sci/engine/vm_types.cpp:23:
./engines/sci/engine/vm_types.h:176:15: note: 'r.Sci::reg_t::_segment' was declared here
  176 |         reg_t r;
      |               ^
engines/sci/engine/vm_types.cpp: In member function 'Sci::reg_t Sci::reg_t::operator*(Sci::reg_t) const':
engines/sci/engine/vm_types.cpp:45:38: warning: 'r.Sci::reg_t::_segment' may be used uninitialized [-Wmaybe-uninitialized]
   45 |                 _segment = (_segment & 0xC000) | (segment & 0x3FFF);
      |                            ~~~~~~~~~~^~~~~~~~~
In file included from ./engines/sci/sci.h:30,
                 from engines/sci/engine/vm_types.cpp:23:
./engines/sci/engine/vm_types.h:176:15: note: 'r.Sci::reg_t::_segment' was declared here
  176 |         reg_t r;
      |               ^
engines/sci/engine/vm_types.cpp: In member function 'Sci::reg_t Sci::reg_t::operator/(Sci::reg_t) const':
engines/sci/engine/vm_types.cpp:45:38: warning: 'r.Sci::reg_t::_segment' may be used uninitialized [-Wmaybe-uninitialized]
   45 |                 _segment = (_segment & 0xC000) | (segment & 0x3FFF);
      |                            ~~~~~~~~~~^~~~~~~~~
In file included from ./engines/sci/sci.h:30,
                 from engines/sci/engine/vm_types.cpp:23:
./engines/sci/engine/vm_types.h:176:15: note: 'r.Sci::reg_t::_segment' was declared here
  176 |         reg_t r;
      |               ^
engines/sci/engine/vm_types.cpp: In member function 'Sci::reg_t Sci::reg_t::operator%(Sci::reg_t) const':
engines/sci/engine/vm_types.cpp:45:38: warning: 'r.Sci::reg_t::_segment' may be used uninitialized [-Wmaybe-uninitialized]
   45 |                 _segment = (_segment & 0xC000) | (segment & 0x3FFF);
      |                            ~~~~~~~~~~^~~~~~~~~
In file included from ./engines/sci/sci.h:30,
                 from engines/sci/engine/vm_types.cpp:23:
./engines/sci/engine/vm_types.h:176:15: note: 'r.Sci::reg_t::_segment' was declared here
  176 |         reg_t r;
      |               ^
engines/sci/engine/vm_types.cpp: In member function 'Sci::reg_t Sci::reg_t::operator>>(Sci::reg_t) const':
engines/sci/engine/vm_types.cpp:45:38: warning: 'r.Sci::reg_t::_segment' may be used uninitialized [-Wmaybe-uninitialized]
   45 |                 _segment = (_segment & 0xC000) | (segment & 0x3FFF);
      |                            ~~~~~~~~~~^~~~~~~~~
In file included from ./engines/sci/sci.h:30,
                 from engines/sci/engine/vm_types.cpp:23:
./engines/sci/engine/vm_types.h:176:15: note: 'r.Sci::reg_t::_segment' was declared here
  176 |         reg_t r;
      |               ^
engines/sci/engine/vm_types.cpp: In member function 'Sci::reg_t Sci::reg_t::operator<<(Sci::reg_t) const':
engines/sci/engine/vm_types.cpp:45:38: warning: 'r.Sci::reg_t::_segment' may be used uninitialized [-Wmaybe-uninitialized]
   45 |                 _segment = (_segment & 0xC000) | (segment & 0x3FFF);
      |                            ~~~~~~~~~~^~~~~~~~~
In file included from ./engines/sci/sci.h:30,
                 from engines/sci/engine/vm_types.cpp:23:
./engines/sci/engine/vm_types.h:176:15: note: 'r.Sci::reg_t::_segment' was declared here
  176 |         reg_t r;
      |               ^
engines/sci/engine/vm_types.cpp: In member function 'Sci::reg_t Sci::reg_t::operator+(int16) const':
engines/sci/engine/vm_types.cpp:45:38: warning: 'r.Sci::reg_t::_segment' may be used uninitialized [-Wmaybe-uninitialized]
   45 |                 _segment = (_segment & 0xC000) | (segment & 0x3FFF);
      |                            ~~~~~~~~~~^~~~~~~~~
In file included from ./engines/sci/sci.h:30,
                 from engines/sci/engine/vm_types.cpp:23:
./engines/sci/engine/vm_types.h:176:15: note: 'r.Sci::reg_t::_segment' was declared here
  176 |         reg_t r;
      |               ^
engines/sci/engine/vm_types.cpp: In member function 'Sci::reg_t Sci::reg_t::operator-(int16) const':
engines/sci/engine/vm_types.cpp:45:38: warning: 'r.Sci::reg_t::_segment' may be used uninitialized [-Wmaybe-uninitialized]
   45 |                 _segment = (_segment & 0xC000) | (segment & 0x3FFF);
      |                            ~~~~~~~~~~^~~~~~~~~
In file included from ./engines/sci/sci.h:30,
                 from engines/sci/engine/vm_types.cpp:23:
./engines/sci/engine/vm_types.h:176:15: note: 'r.Sci::reg_t::_segment' was declared here
  176 |         reg_t r;
      |               ^
engines/sci/engine/vm_types.cpp: In member function 'Sci::reg_t Sci::reg_t::operator&(Sci::reg_t) const':
engines/sci/engine/vm_types.cpp:45:38: warning: 'r.Sci::reg_t::_segment' may be used uninitialized [-Wmaybe-uninitialized]
   45 |                 _segment = (_segment & 0xC000) | (segment & 0x3FFF);
      |                            ~~~~~~~~~~^~~~~~~~~
In file included from ./engines/sci/sci.h:30,
                 from engines/sci/engine/vm_types.cpp:23:
./engines/sci/engine/vm_types.h:176:15: note: 'r.Sci::reg_t::_segment' was declared here
  176 |         reg_t r;
      |               ^
engines/sci/engine/vm_types.cpp: In member function 'Sci::reg_t Sci::reg_t::operator|(Sci::reg_t) const':
engines/sci/engine/vm_types.cpp:45:38: warning: 'r.Sci::reg_t::_segment' may be used uninitialized [-Wmaybe-uninitialized]
   45 |                 _segment = (_segment & 0xC000) | (segment & 0x3FFF);
      |                            ~~~~~~~~~~^~~~~~~~~
In file included from ./engines/sci/sci.h:30,
                 from engines/sci/engine/vm_types.cpp:23:
./engines/sci/engine/vm_types.h:176:15: note: 'r.Sci::reg_t::_segment' was declared here
  176 |         reg_t r;
      |               ^
engines/sci/engine/vm_types.cpp: In member function 'Sci::reg_t Sci::reg_t::operator^(Sci::reg_t) const':
engines/sci/engine/vm_types.cpp:45:38: warning: 'r.Sci::reg_t::_segment' may be used uninitialized [-Wmaybe-uninitialized]
   45 |                 _segment = (_segment & 0xC000) | (segment & 0x3FFF);
      |                            ~~~~~~~~~~^~~~~~~~~
In file included from ./engines/sci/sci.h:30,
                 from engines/sci/engine/vm_types.cpp:23:
./engines/sci/engine/vm_types.h:176:15: note: 'r.Sci::reg_t::_segment' was declared here
  176 |         reg_t r;
      |               ^
engines/sci/engine/vm_types.cpp: In member function 'Sci::reg_t Sci::reg_t::operator&(int16) const':
engines/sci/engine/vm_types.cpp:45:38: warning: 'r.Sci::reg_t::_segment' may be used uninitialized [-Wmaybe-uninitialized]
   45 |                 _segment = (_segment & 0xC000) | (segment & 0x3FFF);
      |                            ~~~~~~~~~~^~~~~~~~~
In file included from ./engines/sci/sci.h:30,
                 from engines/sci/engine/vm_types.cpp:23:
./engines/sci/engine/vm_types.h:176:15: note: 'r.Sci::reg_t::_segment' was declared here
  176 |         reg_t r;
      |               ^
engines/sci/engine/vm_types.cpp: In member function 'Sci::reg_t Sci::reg_t::operator|(int16) const':
engines/sci/engine/vm_types.cpp:45:38: warning: 'r.Sci::reg_t::_segment' may be used uninitialized [-Wmaybe-uninitialized]
   45 |                 _segment = (_segment & 0xC000) | (segment & 0x3FFF);
      |                            ~~~~~~~~~~^~~~~~~~~
In file included from ./engines/sci/sci.h:30,
                 from engines/sci/engine/vm_types.cpp:23:
./engines/sci/engine/vm_types.h:176:15: note: 'r.Sci::reg_t::_segment' was declared here
  176 |         reg_t r;
      |               ^
engines/sci/engine/vm_types.cpp: In member function 'Sci::reg_t Sci::reg_t::operator^(int16) const':
engines/sci/engine/vm_types.cpp:45:38: warning: 'r.Sci::reg_t::_segment' may be used uninitialized [-Wmaybe-uninitialized]
   45 |                 _segment = (_segment & 0xC000) | (segment & 0x3FFF);
      |                            ~~~~~~~~~~^~~~~~~~~
In file included from ./engines/sci/sci.h:30,
                 from engines/sci/engine/vm_types.cpp:23:
./engines/sci/engine/vm_types.h:176:15: note: 'r.Sci::reg_t::_segment' was declared here
  176 |         reg_t r;
      |               ^
    C++      engines/sci/engine/seg_manager.o
    C++      engines/sci/engine/script.o
    C++      engines/sci/graphics/cache.o
    C++      engines/sci/engine/vm.o
    C++      engines/sci/graphics/compare.o
    C++      engines/sci/graphics/coordadjuster.o
    C++      engines/sci/graphics/controls16.o
    C++      engines/sci/graphics/animate.o
    C++      engines/sci/engine/savegame.o
engines/sci/engine/savegame.cpp: In member function 'virtual void Sci::SciArray::saveLoadWithSerializer(Common::Serializer&)':
engines/sci/engine/savegame.cpp:769:16: warning: 'savedSize' may be used uninitialized in this function [-Wmaybe-uninitialized]
  769 |         uint16 savedSize;
      |                ^~~~~~~~~
In file included from ./common/savefile.h:28,
                 from engines/sci/engine/savegame.cpp:23:
./common/stream.h: In member function 'virtual void Sci::GfxCursor32::saveLoadWithSerializer(Common::Serializer&)':
./common/stream.h:162:30: warning: 'hideCount' may be used uninitialized in this function [-Wmaybe-uninitialized]
  162 |                 writeUint32LE((uint32)value);
      |                 ~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/sci/engine/savegame.cpp:1014:15: note: 'hideCount' was declared here
 1014 |         int32 hideCount;
      |               ^~~~~~~~~
In file included from ./common/savefile.h:28,
                 from engines/sci/engine/savegame.cpp:23:
./common/stream.h: In member function 'void Sci::Video32::_ZN3Sci7Video3222saveLoadWithSerializerERN6Common10SerializerE.part.0(Common::Serializer&)':
./common/stream.h:162:30: warning: 'frameNo' may be used uninitialized in this function [-Wmaybe-uninitialized]
  162 |                 writeUint32LE((uint32)value);
      |                 ~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/sci/engine/savegame.cpp:1066:21: note: 'frameNo' was declared here
 1066 |                 int frameNo;
      |                     ^~~~~~~
In file included from ./common/savefile.h:28,
                 from engines/sci/engine/savegame.cpp:23:
./common/stream.h:158:30: warning: 'scale' may be used uninitialized in this function [-Wmaybe-uninitialized]
  158 |                 writeUint16LE((uint16)value);
      |                 ~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/sci/engine/savegame.cpp:1065:33: note: 'scale' was declared here
 1065 |                 int16 priority, scale;
      |                                 ^~~~~
In file included from ./common/savefile.h:28,
                 from engines/sci/engine/savegame.cpp:23:
./common/stream.h:158:30: warning: 'priority' may be used uninitialized in this function [-Wmaybe-uninitialized]
  158 |                 writeUint16LE((uint16)value);
      |                 ~~~~~~~~~~~~~^~~~~~~~~~~~~~~
engines/sci/engine/savegame.cpp:1065:23: note: 'priority' was declared here
 1065 |                 int16 priority, scale;
      |                       ^~~~~~~~
In file included from engines/sci/engine/savegame.cpp:27:
./common/serializer.h:41:30: warning: 'robotId' may be used uninitialized in this function [-Wmaybe-uninitialized]
   41 |                         TYPE tmp = val; \
      |                              ^~~
engines/sci/engine/savegame.cpp:1062:31: note: 'robotId' was declared here
 1062 |                 GuiResourceId robotId;
      |                               ^~~~~~~
    C++      engines/sci/graphics/fontsjis.o
    C++      engines/sci/graphics/maciconbar.o
    C++      engines/sci/graphics/cursor.o
    C++      engines/sci/graphics/remap.o
    C++      engines/sci/graphics/paint16.o
    C++      engines/sci/graphics/palette.o
    C++      engines/sci/graphics/menu.o
    C++      engines/sci/graphics/scifont.o
    C++      engines/sci/graphics/ports.o
    C++      engines/sci/graphics/portrait.o
    C++      engines/sci/graphics/text16.o
    C++      engines/sci/graphics/screen.o
    C++      engines/sci/graphics/picture.o
    C++      engines/sci/graphics/transitions.o
    C++      engines/sci/parser/said.o
    C++      engines/sci/parser/grammar.o
    C++      engines/sci/sound/sync.o
    C++      engines/sci/sound/audio.o
    C++      engines/sci/graphics/view.o
    C++      engines/sci/parser/vocabulary.o
    C++      engines/sci/sound/soundcmd.o
    C++      engines/sci/sound/midiparser_sci.o
    C++      engines/sci/sound/drivers/adlib.o
    C++      engines/sci/sound/drivers/amigamac0.o
    C++      engines/sci/sound/music.o
    C++      engines/sci/sound/drivers/fmtowns.o
    C++      engines/sci/sound/drivers/fb01.o
    C++      engines/sci/sound/drivers/pcjr.o
    C++      engines/sci/video/seq_decoder.o
    C++      engines/sci/sound/drivers/amigamac1.o
    C++      engines/sci/sound/drivers/cms.o
    C++      engines/sci/engine/hoyle5poker.o
    C++      engines/sci/sound/drivers/midi.o
    C++      engines/sci/graphics/paint32.o
    C++      engines/sci/engine/kgraphics32.o
    C++      engines/sci/sound/drivers/pc9801.o
    C++      engines/sci/graphics/controls32.o
    C++      engines/sci/graphics/remap32.o
    C++      engines/sci/graphics/palette32.o
    C++      engines/sci/graphics/plane32.o
    C++      engines/sci/graphics/text32.o
    C++      engines/sci/graphics/frameout.o
    C++      engines/sci/graphics/screen_item32.o
    C++      engines/sci/graphics/cursor32.o
    C++      engines/sci/graphics/maccursor32.o
    C++      engines/sci/graphics/transitions32.o
    C++      engines/sci/graphics/video32.o
    C++      engines/sci/sound/decoders/sol.o
    C++      engines/sherlock/scalpel/3do/movie_decoder.o
    C++      engines/sherlock/scalpel/3do/scalpel_3do_screen.o
    C++      engines/sherlock/scalpel/drivers/adlib.o
    C++      engines/sherlock/scalpel/drivers/mt32.o
    C++      engines/sci/graphics/celobj32.o
    C++      engines/sherlock/scalpel/tsage/logo.o
    C++      engines/sci/sound/audio32.o
    C++      engines/sherlock/scalpel/scalpel_fixed_text.o
    C++      engines/sherlock/scalpel/scalpel_debugger.o
    C++      engines/sherlock/scalpel/tsage/resources.o
    C++      engines/sherlock/scalpel/scalpel.o
    C++      engines/sherlock/scalpel/scalpel_darts.o
    C++      engines/sherlock/scalpel/scalpel_inventory.o
    C++      engines/sherlock/scalpel/scalpel_saveload.o
    C++      engines/sherlock/scalpel/scalpel_screen.o
    C++      engines/sci/video/robot_decoder.o
    C++      engines/sherlock/scalpel/scalpel_journal.o
    C++      engines/sherlock/scalpel/scalpel_people.o
    C++      engines/sherlock/tattoo/tattoo_debugger.o
    C++      engines/sherlock/scalpel/scalpel_scene.o
    C++      engines/sherlock/scalpel/settings.o
    C++      engines/sherlock/scalpel/scalpel_map.o
    C++      engines/sherlock/tattoo/tattoo.o
    C++      engines/sherlock/tattoo/tattoo_fixed_text.o
    C++      engines/sherlock/scalpel/scalpel_talk.o
    C++      engines/sherlock/tattoo/tattoo_resources.o
    C++      engines/sherlock/tattoo/tattoo_inventory.o
    C++      engines/sherlock/tattoo/tattoo_darts.o
    C++      engines/sherlock/tattoo/tattoo_screen.o
    C++      engines/sherlock/tattoo/tattoo_map.o
    C++      engines/sherlock/tattoo/tattoo_scene.o
    C++      engines/sherlock/tattoo/tattoo_talk.o
    C++      engines/sherlock/scalpel/scalpel_user_interface.o
    C++      engines/sherlock/tattoo/widget_credits.o
    C++      engines/sherlock/tattoo/widget_base.o
    C++      engines/sherlock/tattoo/tattoo_journal.o
    C++      engines/sherlock/tattoo/tattoo_user_interface.o
    C++      engines/sherlock/tattoo/tattoo_people.o
    C++      engines/sherlock/tattoo/widget_foolscap.o
    C++      engines/sherlock/tattoo/widget_lab.o
    C++      engines/sherlock/tattoo/widget_files.o
    C++      engines/sherlock/tattoo/widget_quit.o
    C++      engines/sherlock/tattoo/widget_password.o
    C++      engines/sherlock/tattoo/widget_options.o
    C++      engines/sherlock/tattoo/widget_tooltip.o
    C++      engines/sherlock/tattoo/widget_text.o
    C++      engines/sherlock/tattoo/widget_talk.o
    C++      engines/sherlock/tattoo/widget_inventory.o
    C++      engines/sherlock/debugger.o
    C++      engines/sherlock/detection.o
    C++      engines/sherlock/animation.o
    C++      engines/sherlock/tattoo/widget_verbs.o
    C++      engines/sherlock/fixed_text.o
    C++      engines/sherlock/events.o
    C++      engines/sherlock/fonts.o
    C++      engines/sherlock/map.o
    C++      engines/sherlock/inventory.o
    C++      engines/sherlock/music.o
    C++      engines/sherlock/image_file.o
    C++      engines/sherlock/people.o
    C++      engines/sherlock/journal.o
    C++      engines/sherlock/saveload.o
    C++      engines/sherlock/resources.o
    C++      engines/sherlock/surface.o
    C++      engines/sherlock/screen.o
    C++      engines/sherlock/sound.o
    C++      engines/sherlock/objects.o
    C++      engines/sherlock/sherlock.o
    C++      engines/sky/autoroute.o
engines/sky/autoroute.cpp: In member function 'uint16 Sky::AutoRoute::autoRoute(Sky::Compact*)':
engines/sky/autoroute.cpp:245:79: warning: converting a packed 'Sky::Compact' pointer (alignment 1) to a 'uint16' {aka 'short unsigned int'} pointer (alignment 2) may result in an unaligned pointer value [-Waddress-of-packed-member]
  245 |         uint16 *routeDest = (uint16 *)_skyCompact->fetchCpt(cpt->animScratchId);
      |                                                                               ^
In file included from ./engines/sky/compact.h:27,
                 from engines/sky/autoroute.cpp:29:
./engines/sky/struc.h:79:8: note: defined here
   79 | struct Compact {
      |        ^~~~~~~
    C++      engines/sherlock/user_interface.o
    C++      engines/sky/debug.o
engines/sky/debug.cpp: In member function 'bool Sky::Debugger::Cmd_LogicList(int, const char**)':
engines/sky/debug.cpp:1339:130: warning: converting a packed 'Sky::Compact' pointer (alignment 1) to a 'uint16' {aka 'short unsigned int'} pointer (alignment 2) may result in an unaligned pointer value [-Waddress-of-packed-member]
 1339 |         uint16 *logicList = (uint16 *)_skyCompact->fetchCptInfo(Logic::_scriptVariables[LOGIC_LIST_NO], &numElems, &type, cptName);
      |                                                                                                                                  ^
In file included from engines/sky/debug.cpp:33:
./engines/sky/struc.h:79:8: note: defined here
   79 | struct Compact {
      |        ^~~~~~~
engines/sky/debug.cpp:1344:107: warning: converting a packed 'Sky::Compact' pointer (alignment 1) to a 'uint16' {aka 'short unsigned int'} pointer (alignment 2) may result in an unaligned pointer value [-Waddress-of-packed-member]
 1344 |                         logicList = (uint16 *)_skyCompact->fetchCptInfo(newList, &numElems, &type, cptName);
      |                                                                                                           ^
In file included from engines/sky/debug.cpp:33:
./engines/sky/struc.h:79:8: note: defined here
   79 | struct Compact {
      |        ^~~~~~~
    C++      engines/sky/grid.o
    C++      engines/sky/disk.o
    C++      engines/sky/compact.o
engines/sky/compact.cpp: In constructor 'Sky::SkyCompact::SkyCompact()':
engines/sky/compact.cpp:222:66: warning: converting a packed 'Sky::Compact' pointer (alignment 1) to a 'uint16' {aka 'short unsigned int'} pointer (alignment 2) may result in an unaligned pointer value [-Waddress-of-packed-member]
  222 |                         uint16 *rawCpt = (uint16 *)fetchCpt(cptId);
      |                                                                  ^
In file included from ./engines/sky/compact.h:27,
                 from engines/sky/compact.cpp:29:
./engines/sky/struc.h:79:8: note: defined here
   79 | struct Compact {
      |        ^~~~~~~
engines/sky/compact.cpp: In member function 'void Sky::SkyCompact::checkAndFixOfficerBluntError()':
engines/sky/compact.cpp:270:66: warning: converting a packed 'Sky::Compact' pointer (alignment 1) to a 'uint16' {aka 'short unsigned int'} pointer (alignment 2) may result in an unaligned pointer value [-Waddress-of-packed-member]
  270 |         uint16 *talkTable = (uint16*)fetchCpt(CPT_TALK_TABLE_LIST);
      |                                                                  ^
In file included from ./engines/sky/compact.h:27,
                 from engines/sky/compact.cpp:29:
./engines/sky/struc.h:79:8: note: defined here
   79 | struct Compact {
      |        ^~~~~~~
engines/sky/compact.cpp: In member function 'uint16* Sky::SkyCompact::getGrafixPtr(Sky::Compact*)':
engines/sky/compact.cpp:369:63: warning: converting a packed 'Sky::Compact' pointer (alignment 1) to a 'uint16' {aka 'short unsigned int'} pointer (alignment 2) may result in an unaligned pointer value [-Waddress-of-packed-member]
  369 |         uint16 *gfxBase = (uint16 *)fetchCpt(cpt->grafixProgId);
      |                                                               ^
In file included from ./engines/sky/compact.h:27,
                 from engines/sky/compact.cpp:29:
./engines/sky/struc.h:79:8: note: defined here
   79 | struct Compact {
      |        ^~~~~~~
engines/sky/compact.cpp: In member function 'uint16* Sky::SkyCompact::getTurnTable(Sky::Compact*, uint16)':
engines/sky/compact.cpp:412:35: warning: taking address of packed member of 'Sky::TurnTable' may result in an unaligned pointer value [-Waddress-of-packed-member]
  412 |                 return turnTable->turnTableUp;
      |                        ~~~~~~~~~~~^~~~~~~~~~~
engines/sky/compact.cpp:414:35: warning: taking address of packed member of 'Sky::TurnTable' may result in an unaligned pointer value [-Waddress-of-packed-member]
  414 |                 return turnTable->turnTableDown;
      |                        ~~~~~~~~~~~^~~~~~~~~~~~~
engines/sky/compact.cpp:416:35: warning: taking address of packed member of 'Sky::TurnTable' may result in an unaligned pointer value [-Waddress-of-packed-member]
  416 |                 return turnTable->turnTableLeft;
      |                        ~~~~~~~~~~~^~~~~~~~~~~~~
engines/sky/compact.cpp:418:35: warning: taking address of packed member of 'Sky::TurnTable' may result in an unaligned pointer value [-Waddress-of-packed-member]
  418 |                 return turnTable->turnTableRight;
      |                        ~~~~~~~~~~~^~~~~~~~~~~~~~
engines/sky/compact.cpp:420:35: warning: taking address of packed member of 'Sky::TurnTable' may result in an unaligned pointer value [-Waddress-of-packed-member]
  420 |                 return turnTable->turnTableTalk;
      |                        ~~~~~~~~~~~^~~~~~~~~~~~~
    C++      engines/sky/hufftext.o
    C++      engines/sky/intro.o
    C++      engines/sky/rnc_deco.o
    C++      engines/sky/mouse.o
engines/sky/mouse.cpp: In member function 'void Sky::Mouse::pointerEngine(uint16, uint16)':
engines/sky/mouse.cpp:237:77: warning: converting a packed 'Sky::Compact' pointer (alignment 1) to a 'uint16' {aka 'short unsigned int'} pointer (alignment 2) may result in an unaligned pointer value [-Waddress-of-packed-member]
  237 |                 currentList = (uint16 *)_skyCompact->fetchCpt(currentListNum);
      |                                                                             ^
In file included from engines/sky/mouse.cpp:33:
./engines/sky/struc.h:79:8: note: defined here
   79 | struct Compact {
      |        ^~~~~~~
    C++      engines/sherlock/talk.o
    C++      engines/sky/sound.o
    C++      engines/sky/detection.o
    C++      engines/sky/control.o
engines/sky/control.cpp: In member function 'uint32 Sky::Control::prepareSaveData(uint8*)':
engines/sky/control.cpp:1214:119: warning: converting a packed 'Sky::Compact' pointer (alignment 1) to a 'uint16' {aka 'short unsigned int'} pointer (alignment 2) may result in an unaligned pointer value [-Waddress-of-packed-member]
 1214 |                 uint16 *rawCpt = (uint16 *)_skyCompact->fetchCptInfo(_skyCompact->_saveIds[cnt], &numElems, NULL, NULL);
      |                                                                                                                       ^
In file included from ./engines/sky/compact.h:27,
                 from engines/sky/control.cpp:34:
./engines/sky/struc.h:79:8: note: defined here
   79 | struct Compact {
      |        ^~~~~~~
engines/sky/control.cpp: In member function 'uint16 Sky::Control::parseSaveData(uint8*)':
engines/sky/control.cpp:1393:127: warning: converting a packed 'Sky::Compact' pointer (alignment 1) to a 'uint16' {aka 'short unsigned int'} pointer (alignment 2) may result in an unaligned pointer value [-Waddress-of-packed-member]
 1393 |                         uint16 *rawCpt = (uint16 *)_skyCompact->fetchCptInfo(_skyCompact->_saveIds[cnt], &numElems, NULL, NULL);
      |                                                                                                                               ^
In file included from ./engines/sky/compact.h:27,
                 from engines/sky/control.cpp:34:
./engines/sky/struc.h:79:8: note: defined here
   79 | struct Compact {
      |        ^~~~~~~
engines/sky/control.cpp:1402:128: warning: converting a packed 'Sky::Compact' pointer (alignment 1) to a 'uint16' {aka 'short unsigned int'} pointer (alignment 2) may result in an unaligned pointer value [-Waddress-of-packed-member]
 1402 |                         uint16 *rawCpt = (uint16 *)_skyCompact->fetchCptInfo(_skyCompact->_saveIds[cnt], &numElems, &type, name);
      |                                                                                                                                ^
In file included from ./engines/sky/compact.h:27,
                 from engines/sky/control.cpp:34:
./engines/sky/struc.h:79:8: note: defined here
   79 | struct Compact {
      |        ^~~~~~~
engines/sky/control.cpp:1411:70: warning: converting a packed 'Sky::Compact' pointer (alignment 1) to a 'uint16' {aka 'short unsigned int'} pointer (alignment 2) may result in an unaligned pointer value [-Waddress-of-packed-member]
 1411 |                 uint16 *rawCpt = (uint16 *)_skyCompact->fetchCpt(0xBF);
      |                                                                      ^
In file included from ./engines/sky/compact.h:27,
                 from engines/sky/control.cpp:34:
./engines/sky/struc.h:79:8: note: defined here
   79 | struct Compact {
      |        ^~~~~~~
engines/sky/control.cpp:1414:62: warning: converting a packed 'Sky::Compact' pointer (alignment 1) to a 'uint16' {aka 'short unsigned int'} pointer (alignment 2) may result in an unaligned pointer value [-Waddress-of-packed-member]
 1414 |                 rawCpt = (uint16 *)_skyCompact->fetchCpt(0xC2);
      |                                                              ^
In file included from ./engines/sky/compact.h:27,
                 from engines/sky/control.cpp:34:
./engines/sky/struc.h:79:8: note: defined here
   79 | struct Compact {
      |        ^~~~~~~
    C++      engines/sky/text.o
engines/sky/text.cpp: In member function 'void Sky::Text::fnTextModule(uint32, uint32)':
engines/sky/text.cpp:110:69: warning: converting a packed 'Sky::Compact' pointer (alignment 1) to a 'uint16' {aka 'short unsigned int'} pointer (alignment 2) may result in an unaligned pointer value [-Waddress-of-packed-member]
  110 |         uint16* msgData = (uint16 *)_skyCompact->fetchCpt(textInfoId);
      |                                                                     ^
In file included from engines/sky/text.cpp:33:
./engines/sky/struc.h:79:8: note: defined here
   79 | struct Compact {
      |        ^~~~~~~
    C++      engines/sky/sky.o
    C++      engines/sky/screen.o
engines/sky/screen.cpp: In member function 'void Sky::Screen::sortSprites()':
engines/sky/screen.cpp:551:92: warning: converting a packed 'Sky::Compact' pointer (alignment 1) to a 'uint16' {aka 'short unsigned int'} pointer (alignment 2) may result in an unaligned pointer value [-Waddress-of-packed-member]
  551 |                         uint16 *drawListData = (uint16 *)_skyCompact->fetchCpt(loadDrawList);
      |                                                                                            ^
In file included from ./engines/sky/compact.h:27,
                 from engines/sky/screen.cpp:34:
./engines/sky/struc.h:79:8: note: defined here
   79 | struct Compact {
      |        ^~~~~~~
engines/sky/screen.cpp: In member function 'void Sky::Screen::doSprites(uint8)':
engines/sky/screen.cpp:615:65: warning: converting a packed 'Sky::Compact' pointer (alignment 1) to a 'uint16' {aka 'short unsigned int'} pointer (alignment 2) may result in an unaligned pointer value [-Waddress-of-packed-member]
  615 |                 drawList = (uint16 *)_skyCompact->fetchCpt(idNum);
      |                                                                 ^
In file included from ./engines/sky/compact.h:27,
                 from engines/sky/screen.cpp:34:
./engines/sky/struc.h:79:8: note: defined here
   79 | struct Compact {
      |        ^~~~~~~
engines/sky/screen.cpp:641:87: warning: converting a packed 'Sky::Compact' pointer (alignment 1) to a 'uint16' {aka 'short unsigned int'} pointer (alignment 2) may result in an unaligned pointer value [-Waddress-of-packed-member]
  641 |                                 drawList = (uint16 *)_skyCompact->fetchCpt(drawList[1]);
      |                                                                                       ^
In file included from ./engines/sky/compact.h:27,
                 from engines/sky/screen.cpp:34:
./engines/sky/struc.h:79:8: note: defined here
   79 | struct Compact {
      |        ^~~~~~~
    C++      engines/sky/music/adlibchannel.o
    C++      engines/sky/music/adlibmusic.o
    C++      engines/sky/music/gmchannel.o
    C++      engines/sky/music/gmmusic.o
    C++      engines/sky/logic.o
engines/sky/logic.cpp: In member function 'void Sky::Logic::engine()':
engines/sky/logic.cpp:133:100: warning: converting a packed 'Sky::Compact' pointer (alignment 1) to a 'uint16' {aka 'short unsigned int'} pointer (alignment 2) may result in an unaligned pointer value [-Waddress-of-packed-member]
  133 |                 uint16 *logicList = (uint16 *)_skyCompact->fetchCpt(_scriptVariables[LOGIC_LIST_NO]);
      |                                                                                                    ^
In file included from ./engines/sky/compact.h:27,
                 from engines/sky/logic.cpp:28:
./engines/sky/struc.h:79:8: note: defined here
   79 | struct Compact {
      |        ^~~~~~~
engines/sky/logic.cpp:138:87: warning: converting a packed 'Sky::Compact' pointer (alignment 1) to a 'uint16' {aka 'short unsigned int'} pointer (alignment 2) may result in an unaligned pointer value [-Waddress-of-packed-member]
  138 |                                 logicList = (uint16 *)_skyCompact->fetchCpt(*logicList);
      |                                                                                       ^
In file included from ./engines/sky/compact.h:27,
                 from engines/sky/logic.cpp:28:
./engines/sky/struc.h:79:8: note: defined here
   79 | struct Compact {
      |        ^~~~~~~
engines/sky/logic.cpp: In member function 'void Sky::Logic::arAnim()':
engines/sky/logic.cpp:262:92: warning: converting a packed 'Sky::Compact' pointer (alignment 1) to a 'uint16' {aka 'short unsigned int'} pointer (alignment 2) may result in an unaligned pointer value [-Waddress-of-packed-member]
  262 |         uint16 *logicList = (uint16 *)_skyCompact->fetchCpt(_scriptVariables[LOGIC_LIST_NO]);
      |                                                                                            ^
In file included from ./engines/sky/compact.h:27,
                 from engines/sky/logic.cpp:28:
./engines/sky/struc.h:79:8: note: defined here
   79 | struct Compact {
      |        ^~~~~~~
engines/sky/logic.cpp:268:79: warning: converting a packed 'Sky::Compact' pointer (alignment 1) to a 'uint16' {aka 'short unsigned int'} pointer (alignment 2) may result in an unaligned pointer value [-Waddress-of-packed-member]
  268 |                         logicList = (uint16 *)_skyCompact->fetchCpt(*logicList); // get new logic list
      |                                                                               ^
In file included from ./engines/sky/compact.h:27,
                 from engines/sky/logic.cpp:28:
./engines/sky/struc.h:79:8: note: defined here
   79 | struct Compact {
      |        ^~~~~~~
engines/sky/logic.cpp: In member function 'void Sky::Logic::mainAnim()':
engines/sky/logic.cpp:387:66: warning: converting a packed 'Sky::Compact' pointer (alignment 1) to a 'uint16' {aka 'short unsigned int'} pointer (alignment 2) may result in an unaligned pointer value [-Waddress-of-packed-member]
  387 |         uint16 *animList = (uint16 *)_skyCompact->fetchCpt(animId);
      |                                                                  ^
In file included from ./engines/sky/compact.h:27,
                 from engines/sky/logic.cpp:28:
./engines/sky/struc.h:79:8: note: defined here
   79 | struct Compact {
      |        ^~~~~~~
engines/sky/logic.cpp: In member function 'bool Sky::Logic::fnCacheChip(uint32, uint32, uint32)':
engines/sky/logic.cpp:1399:30: warning: converting a packed 'Sky::Compact' pointer (alignment 1) to a 'uint16' {aka 'short unsigned int'} pointer (alignment 2) may result in an unaligned pointer value [-Waddress-of-packed-member]
 1399 |         _skyDisk->fnCacheChip((uint16 *)_skyCompact->fetchCpt((uint16)a));
      |         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./engines/sky/compact.h:27,
                 from engines/sky/logic.cpp:28:
./engines/sky/struc.h:79:8: note: defined here
   79 | struct Compact {
      |        ^~~~~~~
engines/sky/logic.cpp: In member function 'bool Sky::Logic::fnCacheFast(uint32, uint32, uint32)':
engines/sky/logic.cpp:1404:30: warning: converting a packed 'Sky::Compact' pointer (alignment 1) to a 'uint16' {aka 'short unsigned int'} pointer (alignment 2) may result in an unaligned pointer value [-Waddress-of-packed-member]
 1404 |         _skyDisk->fnCacheFast((uint16 *)_skyCompact->fetchCpt((uint16)a));
      |         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./engines/sky/compact.h:27,
                 from engines/sky/logic.cpp:28:
./engines/sky/struc.h:79:8: note: defined here
   79 | struct Compact {
      |        ^~~~~~~
engines/sky/logic.cpp: In member function 'bool Sky::Logic::fnGetTo(uint32, uint32, uint32)':
engines/sky/logic.cpp:1551:79: warning: converting a packed 'Sky::Compact' pointer (alignment 1) to a 'uint16' {aka 'short unsigned int'} pointer (alignment 2) may result in an unaligned pointer value [-Waddress-of-packed-member]
 1551 |         uint16 *getToTable = (uint16 *)_skyCompact->fetchCpt(cpt->getToTableId);
      |                                                                               ^
In file included from ./engines/sky/compact.h:27,
                 from engines/sky/logic.cpp:28:
./engines/sky/struc.h:79:8: note: defined here
   79 | struct Compact {
      |        ^~~~~~~
engines/sky/logic.cpp: In member function 'bool Sky::Logic::fnResetId(uint32, uint32, uint32)':
engines/sky/logic.cpp:2043:65: warning: converting a packed 'Sky::Compact' pointer (alignment 1) to a 'uint16' {aka 'short unsigned int'} pointer (alignment 2) may result in an unaligned pointer value [-Waddress-of-packed-member]
 2043 |         uint16 *rst = (uint16 *)_skyCompact->fetchCpt(resetBlock);
      |                                                                 ^
In file included from ./engines/sky/compact.h:27,
                 from engines/sky/logic.cpp:28:
./engines/sky/struc.h:79:8: note: defined here
   79 | struct Compact {
      |        ^~~~~~~
engines/sky/logic.cpp: In member function 'bool Sky::Logic::fnMoveItems(uint32, uint32, uint32)':
engines/sky/logic.cpp:2132:66: warning: converting a packed 'Sky::Compact' pointer (alignment 1) to a 'uint16' {aka 'short unsigned int'} pointer (alignment 2) may result in an unaligned pointer value [-Waddress-of-packed-member]
 2132 |         uint16 *p = (uint16 *)_skyCompact->fetchCpt(CPT_MOVE_LIST);
      |                                                                  ^
In file included from ./engines/sky/compact.h:27,
                 from engines/sky/logic.cpp:28:
./engines/sky/struc.h:79:8: note: defined here
   79 | struct Compact {
      |        ^~~~~~~
engines/sky/logic.cpp:2133:54: warning: converting a packed 'Sky::Compact' pointer (alignment 1) to a 'uint16' {aka 'short unsigned int'} pointer (alignment 2) may result in an unaligned pointer value [-Waddress-of-packed-member]
 2133 |         p = (uint16 *)_skyCompact->fetchCpt(p[listNo]);
      |                                                      ^
In file included from ./engines/sky/compact.h:27,
                 from engines/sky/logic.cpp:28:
./engines/sky/struc.h:79:8: note: defined here
   79 | struct Compact {
      |        ^~~~~~~
engines/sky/logic.cpp: In member function 'bool Sky::Logic::fnTestList(uint32, uint32, uint32)':
engines/sky/logic.cpp:2204:58: warning: converting a packed 'Sky::Compact' pointer (alignment 1) to a 'uint16' {aka 'short unsigned int'} pointer (alignment 2) may result in an unaligned pointer value [-Waddress-of-packed-member]
 2204 |         uint16 *list = (uint16 *)_skyCompact->fetchCpt(id);
      |                                                          ^
In file included from ./engines/sky/compact.h:27,
                 from engines/sky/logic.cpp:28:
./engines/sky/struc.h:79:8: note: defined here
   79 | struct Compact {
      |        ^~~~~~~
engines/sky/logic.cpp: In member function 'bool Sky::Logic::fnEyeball(uint32, uint32, uint32)':
engines/sky/logic.cpp:2285:62: warning: converting a packed 'Sky::Compact' pointer (alignment 1) to a 'uint16' {aka 'short unsigned int'} pointer (alignment 2) may result in an unaligned pointer value [-Waddress-of-packed-member]
 2285 |         uint16 *eyeTable = (uint16 *)_skyCompact->fetchCpt(id);
      |                                                              ^
In file included from ./engines/sky/compact.h:27,
                 from engines/sky/logic.cpp:28:
./engines/sky/struc.h:79:8: note: defined here
   79 | struct Compact {
      |        ^~~~~~~
engines/sky/logic.cpp: In member function 'void Sky::Logic::stdSpeak(Sky::Compact*, uint32, uint32, uint32)':
engines/sky/logic.cpp:2508:80: warning: converting a packed 'Sky::Compact' pointer (alignment 1) to a 'uint16' {aka 'short unsigned int'} pointer (alignment 2) may result in an unaligned pointer value [-Waddress-of-packed-member]
 2508 |         uint16 *talkTable = (uint16 *)_skyCompact->fetchCpt(CPT_TALK_TABLE_LIST);
      |                                                                                ^
In file included from ./engines/sky/compact.h:27,
                 from engines/sky/logic.cpp:28:
./engines/sky/struc.h:79:8: note: defined here
   79 | struct Compact {
      |        ^~~~~~~
    C++      engines/sky/music/mt32music.o
    C++      engines/sludge/console.o
    C++      engines/sky/music/musicbase.o
    C++      engines/sludge/bg_effects.o
    C++      engines/sludge/cursors.o
    C++      engines/sherlock/scene.o
    C++      engines/sludge/event.o
engines/sludge/event.cpp: In member function 'bool Sludge::EventManager::handleInput()':
engines/sludge/event.cpp:309:55: warning: '%i' directive writing between 3 and 10 bytes into a region of size 7 [-Wformat-overflow=]
  309 |                                         sprintf(tmp, "%i", _input.keyPressed);
      |                                                       ^~
engines/sludge/event.cpp:309:54: note: directive argument in the range [256, 2147483647]
  309 |                                         sprintf(tmp, "%i", _input.keyPressed);
      |                                                      ^~~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./common/keyboard.h:26,
                 from ./common/events.h:26,
                 from engines/sludge/event.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 4 and 11 bytes into a destination of size 7
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
    C++      engines/sludge/detection.o
    C++      engines/sludge/backdrop.o
    C++      engines/sludge/freeze.o
    C++      engines/sludge/fileset.o
    C++      engines/sludge/floor.o
    C++      engines/sludge/imgloader.o
    C++      engines/sludge/hsi.o
    C++      engines/sludge/language.o
    C++      engines/sludge/graphics.o
    C++      engines/sludge/fonttext.o
    C++      engines/sludge/main_loop.o
    C++      engines/sludge/loadsave.o
    C++      engines/sludge/movie.o
    C++      engines/sludge/moreio.o
    C++      engines/sludge/newfatal.o
    C++      engines/sludge/function.o
    C++      engines/sludge/objtypes.o
    C++      engines/sludge/savedata.o
    C++      engines/sludge/builtin.o
    C++      engines/sludge/region.o
    C++      engines/sludge/sludger.o
    C++      engines/sludge/sprbanks.o
    C++      engines/sludge/sludge.o
    C++      engines/sludge/speech.o
    C++      engines/sludge/sound.o
    C++      engines/sludge/statusba.o
    C++      engines/sludge/timing.o
    C++      engines/sludge/transition.o
    C++      engines/sludge/thumbnail.o
    C++      engines/sludge/utf8.o
    C++      engines/sludge/people.o
    C++      engines/sludge/zbuffer.o
    C++      engines/sludge/sprites.o
    C++      engines/startrek/common.o
    C++      engines/startrek/bitmap.o
    C++      engines/sludge/variable.o
    C++      engines/startrek/font.o
    C++      engines/startrek/events.o
    C++      engines/startrek/console.o
    C++      engines/startrek/lzss.o
    C++      engines/startrek/detection.o
    C++      engines/startrek/awaymission.o
    C++      engines/startrek/intro.o
engines/startrek/intro.cpp: In member function 'void StarTrek::StarTrekEngine::playIntro()':
engines/startrek/intro.cpp:39:38: warning: implicitly-declared 'StarTrek::TMatrix<StarTrek::TPoint<StarTrek::TFixedInt<short int, 16, 14> > >& StarTrek::TMatrix<StarTrek::TPoint<StarTrek::TFixedInt<short int, 16, 14> > >::operator=(const StarTrek::TMatrix<StarTrek::TPoint<StarTrek::TFixedInt<short int, 16, 14> > >&)' is deprecated [-Wdeprecated-copy]
   39 |         planetR3.matrix = initMatrix();
      |                                      ^
In file included from ./engines/startrek/startrek.h:50,
                 from engines/startrek/intro.cpp:23:
./engines/startrek/space.h:109:9: note: because 'StarTrek::TMatrix<StarTrek::TPoint<StarTrek::TFixedInt<short int, 16, 14> > >' has user-provided 'StarTrek::TMatrix<T>::TMatrix(const StarTrek::TMatrix<T>&) [with T = StarTrek::TPoint<StarTrek::TFixedInt<short int, 16, 14> >]'
  109 |         TMatrix(const TMatrix<T> &mat) {
      |         ^~~~~~~
engines/startrek/intro.cpp: In member function 'void StarTrek::StarTrekEngine::initIntroR3ObjectToMove(StarTrek::R3*, int16, int16, int16, int16, int16)':
engines/startrek/intro.cpp:334:70: warning: implicitly-declared 'StarTrek::TMatrix<StarTrek::TPoint<StarTrek::TFixedInt<short int, 16, 14> > >& StarTrek::TMatrix<StarTrek::TPoint<StarTrek::TFixedInt<short int, 16, 14> > >::operator=(const StarTrek::TMatrix<StarTrek::TPoint<StarTrek::TFixedInt<short int, 16, 14> > >&)' is deprecated [-Wdeprecated-copy]
  334 |         r3->matrix = initSpeedMatrixForXZMovement(angle, initMatrix());
      |                                                                      ^
In file included from ./engines/startrek/startrek.h:50,
                 from engines/startrek/intro.cpp:23:
./engines/startrek/space.h:109:9: note: because 'StarTrek::TMatrix<StarTrek::TPoint<StarTrek::TFixedInt<short int, 16, 14> > >' has user-provided 'StarTrek::TMatrix<T>::TMatrix(const StarTrek::TMatrix<T>&) [with T = StarTrek::TPoint<StarTrek::TFixedInt<short int, 16, 14> >]'
  109 |         TMatrix(const TMatrix<T> &mat) {
      |         ^~~~~~~
    C++      engines/startrek/iwfile.o
    C++      engines/startrek/graphics.o
    C++      engines/startrek/actors.o
    C++      engines/startrek/text.o
    C++      engines/startrek/sound.o
    C++      engines/startrek/sprite.o
    C++      engines/startrek/menu.o
    C++      engines/startrek/space.o
engines/startrek/space.cpp: In member function 'void StarTrek::StarTrekEngine::initStarfieldPosition()':
engines/startrek/space.cpp:30:34: warning: implicitly-declared 'StarTrek::TMatrix<StarTrek::TPoint<StarTrek::TFixedInt<short int, 16, 14> > >& StarTrek::TMatrix<StarTrek::TPoint<StarTrek::TFixedInt<short int, 16, 14> > >::operator=(const StarTrek::TMatrix<StarTrek::TPoint<StarTrek::TFixedInt<short int, 16, 14> > >&)' is deprecated [-Wdeprecated-copy]
   30 |         _someMatrix = initMatrix();
      |                                  ^
In file included from ./engines/startrek/startrek.h:50,
                 from engines/startrek/space.cpp:24:
./engines/startrek/space.h:109:9: note: because 'StarTrek::TMatrix<StarTrek::TPoint<StarTrek::TFixedInt<short int, 16, 14> > >' has user-provided 'StarTrek::TMatrix<T>::TMatrix(const StarTrek::TMatrix<T>&) [with T = StarTrek::TPoint<StarTrek::TFixedInt<short int, 16, 14> >]'
  109 |         TMatrix(const TMatrix<T> &mat) {
      |         ^~~~~~~
engines/startrek/space.cpp: In member function 'void StarTrek::StarTrekEngine::initStarfield(int16, int16, int16, int16, int16)':
engines/startrek/space.cpp:45:15: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct StarTrek::Star'; use assignment or value-initialization instead [-Wclass-memaccess]
   45 |         memset(_starList, 0, sizeof(_starList));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./engines/startrek/startrek.h:50,
                 from engines/startrek/space.cpp:24:
./engines/startrek/space.h:150:8: note: 'struct StarTrek::Star' declared here
  150 | struct Star {
      |        ^~~~
engines/startrek/space.cpp: In member function 'void StarTrek::StarTrekEngine::updateStarfieldAndShips(bool)':
engines/startrek/space.cpp:156:50: warning: implicitly-declared 'StarTrek::TMatrix<StarTrek::TPoint<StarTrek::TFixedInt<short int, 16, 14> > >& StarTrek::TMatrix<StarTrek::TPoint<StarTrek::TFixedInt<short int, 16, 14> > >::operator=(const StarTrek::TMatrix<StarTrek::TPoint<StarTrek::TFixedInt<short int, 16, 14> > >&)' is deprecated [-Wdeprecated-copy]
  156 |         _starPositionMatrix = _someMatrix.invert();
      |                                                  ^
In file included from ./engines/startrek/startrek.h:50,
                 from engines/startrek/space.cpp:24:
./engines/startrek/space.h:109:9: note: because 'StarTrek::TMatrix<StarTrek::TPoint<StarTrek::TFixedInt<short int, 16, 14> > >' has user-provided 'StarTrek::TMatrix<T>::TMatrix(const StarTrek::TMatrix<T>&) [with T = StarTrek::TPoint<StarTrek::TFixedInt<short int, 16, 14> >]'
  109 |         TMatrix(const TMatrix<T> &mat) {
      |         ^~~~~~~
engines/startrek/space.cpp: In member function 'StarTrek::R3* StarTrek::StarTrekEngine::sub_19f24(StarTrek::R3*)':
engines/startrek/space.cpp:219:27: warning: implicitly-declared 'StarTrek::TMatrix<StarTrek::TPoint<StarTrek::TFixedInt<short int, 16, 14> > >& StarTrek::TMatrix<StarTrek::TPoint<StarTrek::TFixedInt<short int, 16, 14> > >::operator=(const StarTrek::TMatrix<StarTrek::TPoint<StarTrek::TFixedInt<short int, 16, 14> > >&)' is deprecated [-Wdeprecated-copy]
  219 |         r3->matrix2 = r3->matrix;
      |                           ^~~~~~
In file included from ./engines/startrek/startrek.h:50,
                 from engines/startrek/space.cpp:24:
./engines/startrek/space.h:109:9: note: because 'StarTrek::TMatrix<StarTrek::TPoint<StarTrek::TFixedInt<short int, 16, 14> > >' has user-provided 'StarTrek::TMatrix<T>::TMatrix(const StarTrek::TMatrix<T>&) [with T = StarTrek::TPoint<StarTrek::TFixedInt<short int, 16, 14> >]'
  109 |         TMatrix(const TMatrix<T> &mat) {
      |         ^~~~~~~
./engines/startrek/space.h: In instantiation of 'void StarTrek::TMatrix<T>::operator*=(const StarTrek::TMatrix<T>&) [with T = StarTrek::TPoint<StarTrek::TFixedInt<short int, 16, 14> >]':
engines/startrek/space.cpp:228:19:   required from here
./engines/startrek/space.h:134:23: warning: implicitly-declared 'StarTrek::TMatrix<StarTrek::TPoint<StarTrek::TFixedInt<short int, 16, 14> > >& StarTrek::TMatrix<StarTrek::TPoint<StarTrek::TFixedInt<short int, 16, 14> > >::operator=(const StarTrek::TMatrix<StarTrek::TPoint<StarTrek::TFixedInt<short int, 16, 14> > >&)' is deprecated [-Wdeprecated-copy]
  134 |                 *this = *this * m2;
      |                 ~~~~~~^~~~~~~~~~~~
./engines/startrek/space.h:109:9: note: because 'StarTrek::TMatrix<StarTrek::TPoint<StarTrek::TFixedInt<short int, 16, 14> > >' has user-provided 'StarTrek::TMatrix<T>::TMatrix(const StarTrek::TMatrix<T>&) [with T = StarTrek::TPoint<StarTrek::TFixedInt<short int, 16, 14> >]'
  109 |         TMatrix(const TMatrix<T> &mat) {
      |         ^~~~~~~
    C++      engines/startrek/room.o
    C++      engines/startrek/rooms/demon2.o
    C++      engines/startrek/rooms/demon0.o
    C++      engines/startrek/rooms/demon1.o
    C++      engines/startrek/startrek.o
    C++      engines/startrek/rooms/demon3.o
    C++      engines/startrek/textbox.o
    C++      engines/startrek/rooms/demon5.o
    C++      engines/startrek/rooms/tug0.o
    C++      engines/startrek/rooms/demon4.o
    C++      engines/startrek/rooms/demon6.o
    C++      engines/startrek/rooms/tug1.o
    C++      engines/startrek/rooms/love0.o
    C++      engines/startrek/rooms/tug3.o
    C++      engines/startrek/rooms/tug2.o
    C++      engines/startrek/saveload.o
engines/startrek/saveload.cpp: In member function 'bool StarTrek::StarTrekEngine::saveOrLoadGameData(Common::SeekableReadStream*, Common::WriteStream*, StarTrek::SavegameMetadata*)':
engines/startrek/saveload.cpp:357:62: warning: implicitly-declared 'Common::Queue<StarTrek::Action>& Common::Queue<StarTrek::Action>::operator=(const Common::Queue<StarTrek::Action>&)' is deprecated [-Wdeprecated-copy]
  357 |                         _actionQueue = Common::Queue<Action>();
      |                                                              ^
In file included from ./common/events.h:27,
                 from ./engines/startrek/startrek.h:27,
                 from engines/startrek/saveload.cpp:33:
./common/queue.h:41:9: note: because 'Common::Queue<StarTrek::Action>' has user-provided 'Common::Queue<T>::Queue(const Common::Queue<T>&) [with T = StarTrek::Action]'
   41 |         Queue<T>(const Queue<T> &queue) : _impl(queue._impl) {}
      |         ^~~~~~~~
    C++      engines/startrek/rooms/love1.o
    C++      engines/startrek/rooms/love4.o
    C++      engines/startrek/rooms/love3.o
    C++      engines/startrek/rooms/lovea.o
    C++      engines/startrek/rooms/love5.o
    C++      engines/startrek/rooms/love2.o
    C++      engines/startrek/rooms/mudd0.o
    C++      engines/startrek/rooms/mudd1.o
    C++      engines/startrek/rooms/mudd2.o
    C++      engines/startrek/rooms/mudd3.o
    C++      engines/startrek/rooms/mudd4.o
    C++      engines/startrek/rooms/mudd5.o
    C++      engines/startrek/rooms/feather0.o
    C++      engines/startrek/rooms/feather2.o
    C++      engines/startrek/rooms/mudda.o
    C++      engines/startrek/rooms/feather1.o
    C++      engines/startrek/rooms/feather4.o
    C++      engines/startrek/rooms/feather3.o
    C++      engines/startrek/rooms/feather5.o
    C++      engines/startrek/rooms/feather7.o
    C++      engines/startrek/rooms/feather6.o
    C++      engines/startrek/rooms/trial0.o
    C++      engines/startrek/rooms/trial1.o
    C++      engines/startrek/rooms/trial2.o
    C++      engines/startrek/rooms/trial4.o
    C++      engines/startrek/rooms/sins0.o
    C++      engines/startrek/rooms/trial3.o
    C++      engines/startrek/rooms/sins1.o
    C++      engines/startrek/rooms/sins2.o
    C++      engines/startrek/rooms/trial5.o
    C++      engines/startrek/rooms/sins4.o
    C++      engines/startrek/rooms/sins3.o
    C++      engines/startrek/rooms/sins5.o
    C++      engines/startrek/rooms/veng0.o
    C++      engines/startrek/rooms/veng1.o
    C++      engines/startrek/rooms/veng3.o
    C++      engines/startrek/rooms/veng4.o
    C++      engines/startrek/rooms/veng5.o
    C++      engines/supernova/console.o
    C++      engines/startrek/rooms/veng2.o
    C++      engines/startrek/rooms/veng7.o
    C++      engines/startrek/rooms/veng6.o
    C++      engines/startrek/rooms/veng8.o
    C++      engines/startrek/rooms/venga.o
    C++      engines/supernova/graphics.o
    C++      engines/supernova/room.o
    C++      engines/supernova/sound.o
    C++      engines/supernova/detection.o
    C++      engines/supernova/screen.o
    C++      engines/supernova/resman.o
    C++      engines/sword1/console.o
    C++      engines/supernova/game-manager.o
    C++      engines/sword1/debug.o
    C++      engines/sword1/animation.o
    C++      engines/sword1/eventman.o
    C++      engines/supernova/supernova.o
    C++      engines/supernova/supernova2/state.o
    C++      engines/sword1/memman.o
    C++      engines/supernova/supernova1/state.o
    C++      engines/sword1/menu.o
    C++      engines/sword1/mouse.o
    C++      engines/sword1/detection.o
    C++      engines/sword1/music.o
    C++      engines/sword1/objectman.o
    C++      engines/sword1/control.o
engines/sword1/control.cpp: In member function 'void Sword1::Control::saveGameToFile(uint8)':
engines/sword1/control.cpp:1167:39: warning: converting a packed 'Sword1::Object' pointer (alignment 1) to a 'uint32' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
 1167 |         uint32 *playerRaw = (uint32 *)cpt;
      |                                       ^~~
In file included from ./engines/sword1/objectman.h:30,
                 from ./engines/sword1/logic.h:28,
                 from engines/sword1/control.cpp:38:
./engines/sword1/object.h:63:8: note: defined here
   63 | struct Object {
      |        ^~~~~~
engines/sword1/control.cpp: In member function 'void Sword1::Control::doRestore()':
engines/sword1/control.cpp:1338:66: warning: converting a packed 'Sword1::Object' pointer (alignment 1) to a 'uint32' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
 1338 |         uint32 *playerRaw = (uint32 *)_objMan->fetchObject(PLAYER);
      |                                                                  ^
In file included from ./engines/sword1/objectman.h:30,
                 from ./engines/sword1/logic.h:28,
                 from engines/sword1/control.cpp:38:
./engines/sword1/object.h:63:8: note: defined here
   63 | struct Object {
      |        ^~~~~~
    C++      engines/sword1/logic.o
    C++      engines/sword1/resman.o
    C++      engines/sword1/staticres.o
    C++      engines/sword1/text.o
    C++      engines/sword1/router.o
    C++      engines/sword1/sound.o
    C++      engines/sword2/anims.o
    C++      engines/sword1/sword1.o
    C++      engines/sword2/animation.o
    C++      engines/sword1/screen.o
    C++      engines/sword2/events.o
    C++      engines/supernova/supernova1/rooms.o
    C++      engines/supernova/supernova2/rooms.o
    C++      engines/sword2/debug.o
    C++      engines/sword2/console.o
    C++      engines/sword2/icons.o
    C++      engines/sword2/layers.o
    C++      engines/sword2/logic.o
    C++      engines/sword2/memory.o
    C++      engines/sword2/header.o
    C++      engines/sword2/interpreter.o
    C++      engines/sword2/maketext.o
    C++      engines/sword2/menu.o
    C++      engines/sword2/function.o
In file included from ./common/stream.h:26,
                 from ./common/file.h:30,
                 from engines/sword2/function.cpp:27:
./common/endian.h: In member function 'int32 Sword2::Logic::fnRandomPause(int32*)':
./common/endian.h:380:51: warning: 'pars[1]' may be used uninitialized in this function [-Wmaybe-uninitialized]
  380 |         #define WRITE_LE_UINT32(a, v) WRITE_UINT32(a, v)
      |                                                   ^
engines/sword2/function.cpp:417:15: note: 'pars[1]' was declared here
  417 |         int32 pars[2];
      |               ^~~~
    C++      engines/sword2/controls.o
engines/sword2/controls.cpp: In member function 'void Sword2::SaveRestoreDialog::updateSlots()':
engines/sword2/controls.cpp:1099:54: warning: '%s' directive writing up to 63 bytes into a region of size between 50 and 60 [-Wformat-overflow=]
 1099 |                         sprintf((char *)_text, "%d.  %s", slot, text);
      |                                                      ^~
......
 1253 |                         slot->setText(fr, baseSlot + i, description);
      |                                                         ~~~~~~~~~~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./common/rect.h:26,
                 from engines/sword2/controls.cpp:26:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 5 and 78 bytes into a destination of size 64
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
    C++      engines/sword2/palette.o
    C++      engines/sword2/protocol.o
    C++      engines/sword2/scroll.o
    C++      engines/sword2/music.o
    C++      engines/sword2/render.o
    C++      engines/sword2/resman.o
    C++      engines/sword2/saveload.o
    C++      engines/sword2/mouse.o
engines/sword2/mouse.cpp: In constructor 'Sword2::Mouse::Mouse(Sword2::Sword2Engine*)':
engines/sword2/mouse.cpp:99:15: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct Sword2::MouseUnit'; use assignment or value-initialization instead [-Wclass-memaccess]
   99 |         memset(_mouseList, 0, sizeof(_mouseList));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from engines/sword2/mouse.cpp:40:
./engines/sword2/mouse.h:96:8: note: 'struct Sword2::MouseUnit' declared here
   96 | struct MouseUnit {
      |        ^~~~~~~~~
    C++      engines/sword2/speech.o
    C++      engines/sword2/startup.o
    C++      engines/sword2/sound.o
    C++      engines/sword2/sync.o
    C++      engines/sword2/router.o
    C++      engines/sword2/screen.o
    C++      engines/sword2/walker.o
    C++      engines/sword2/sprite.o
    C++      engines/teenagent/actor.o
    C++      engines/teenagent/animation.o
    C++      engines/teenagent/console.o
    C++      engines/teenagent/dialog.o
    C++      engines/teenagent/font.o
    C++      engines/teenagent/detection.o
    C++      engines/teenagent/music.o
    C++      engines/teenagent/objects.o
    C++      engines/teenagent/segment.o
    C++      engines/teenagent/pack.o
    C++      engines/teenagent/resources.o
    C++      engines/teenagent/inventory.o
    C++      engines/teenagent/surface.o
    C++      engines/teenagent/surface_list.o
    C++      engines/testbed/config-params.o
    C++      engines/sword2/sword2.o
    C++      engines/testbed/detection.o
    C++      engines/testbed/events.o
    C++      engines/testbed/fs.o
    C++      engines/testbed/misc.o
    C++      engines/testbed/config.o
    C++      engines/testbed/savegame.o
    C++      engines/testbed/midi.o
    C++      engines/teenagent/teenagent.o
    C++      engines/testbed/encoding.o
    C++      engines/testbed/graphics.o
    C++      engines/testbed/sound.o
    C++      engines/teenagent/scene.o
    C++      engines/testbed/testsuite.o
    C++      engines/testbed/video.o
    C++      engines/tinsel/adpcm.o
    C++      engines/testbed/testbed.o
    C++      engines/tinsel/anim.o
    C++      engines/tinsel/background.o
    C++      engines/testbed/cloud.o
    C++      engines/testbed/speech.o
    C++      engines/tinsel/bg.o
    C++      engines/teenagent/callbacks.o
    C++      engines/tinsel/cliprect.o
    C++      engines/tinsel/config.o
    C++      engines/tinsel/actors.o
    C++      engines/tinsel/bmv.o
    C++      engines/tinsel/debugger.o
    C++      engines/tinsel/cursor.o
    C++      engines/tinsel/effect.o
    C++      engines/tinsel/font.o
    C++      engines/tinsel/faders.o
engines/tinsel/faders.cpp: In function 'void Tinsel::FadeProcess(Common::CoroBaseContext*&, const void*)':
engines/tinsel/faders.cpp:119:68: warning: taking address of packed member of 'Tinsel::PALETTE' may result in an unaligned pointer value [-Waddress-of-packed-member]
  119 |                         FadePalette(_ctx->fadeRGB, _ctx->pPalette->palRGB,
      |                                                    ~~~~~~~~~~~~~~~~^~~~~~
    C++      engines/tinsel/drives.o
    C++      engines/tinsel/events.o
    C++      engines/tinsel/heapmem.o
    C++      engines/tinsel/mareels.o
    C++      engines/tinsel/handle.o
    C++      engines/tinsel/detection.o
    C++      engines/tinsel/multiobj.o
    C++      engines/tinsel/graphics.o
    C++      engines/tinsel/object.o
    C++      engines/tinsel/palette.o
engines/tinsel/palette.cpp: In function 'void Tinsel::PalettesToVideoDAC()':
engines/tinsel/palette.cpp:158:45: warning: taking address of packed member of 'Tinsel::PALETTE' may result in an unaligned pointer value [-Waddress-of-packed-member]
  158 |                         pColors = pPalette->palRGB;
      |                                   ~~~~~~~~~~^~~~~~
    C++      engines/tinsel/move.o
    C++      engines/tinsel/pdisplay.o
    C++      engines/tinsel/pcode.o
    C++      engines/tinsel/music.o
    C++      engines/tinsel/rince.o
    C++      engines/tinsel/savescn.o
    C++      engines/tinsel/play.o
    C++      engines/tinsel/scene.o
    C++      engines/tinsel/sched.o
    C++      engines/tinsel/scn.o
    C++      engines/tinsel/saveload.o
    C++      engines/tinsel/scroll.o
    C++      engines/tinsel/sysvar.o
    C++      engines/tinsel/strres.o
    C++      engines/tinsel/text.o
    C++      engines/tinsel/timers.o
    C++      engines/tinsel/sound.o
    C++      engines/tinsel/token.o
    C++      engines/tinsel/polygons.o
    C++      engines/tinsel/dialogs.o
    C++      engines/titanic/continue_save_dialog.o
    C++      engines/tinsel/tinsel.o
    C++      engines/titanic/game_location.o
    C++      engines/titanic/detection.o
    C++      engines/titanic/debugger.o
    C++      engines/titanic/events.o
    C++      engines/titanic/game_state.o
    C++      engines/titanic/game_view.o
    C++      engines/titanic/input_translator.o
    C++      engines/titanic/game_manager.o
    C++      engines/titanic/input_handler.o
    C++      engines/titanic/room_flags.o
    C++      engines/titanic/carry/auditory_centre.o
    C++      engines/titanic/carry/bowl_ear.o
    C++      engines/titanic/carry/brain.o
    C++      engines/titanic/carry/arm.o
    C++      engines/titanic/titanic.o
    C++      engines/titanic/carry/bridge_piece.o
    C++      engines/titanic/main_game_window.o
    C++      engines/titanic/carry/carry.o
    C++      engines/titanic/carry/central_core.o
    C++      engines/titanic/carry/crushed_tv.o
    C++      engines/titanic/carry/carry_parrot.o
    C++      engines/titanic/carry/ear.o
    C++      engines/tinsel/tinlib.o
    C++      engines/titanic/carry/chicken.o
    C++      engines/titanic/carry/eye.o
    C++      engines/titanic/carry/feathers.o
    C++      engines/titanic/carry/fruit.o
    C++      engines/titanic/carry/hammer.o
    C++      engines/titanic/carry/glass.o
    C++      engines/titanic/carry/head_piece.o
    C++      engines/titanic/carry/hose.o
    C++      engines/titanic/carry/hose_end.o
    C++      engines/titanic/carry/key.o
    C++      engines/titanic/carry/liftbot_head.o
    C++      engines/titanic/carry/long_stick.o
    C++      engines/titanic/carry/magazine.o
    C++      engines/titanic/carry/maitred_left_arm.o
    C++      engines/titanic/carry/maitred_right_arm.o
    C++      engines/titanic/carry/mouth.o
    C++      engines/titanic/carry/napkin.o
    C++      engines/titanic/carry/nose.o
    C++      engines/titanic/carry/note.o
    C++      engines/titanic/carry/parcel.o
    C++      engines/titanic/carry/perch.o
    C++      engines/titanic/carry/phonograph_ear.o
    C++      engines/titanic/carry/photograph.o
    C++      engines/titanic/carry/plug_in.o
    C++      engines/titanic/carry/phonograph_cylinder.o
    C++      engines/titanic/carry/speech_centre.o
    C++      engines/titanic/core/dont_save_file_item.o
    C++      engines/titanic/core/file_item.o
    C++      engines/titanic/carry/sweets.o
    C++      engines/titanic/carry/vision_centre.o
    C++      engines/titanic/core/background.o
    C++      engines/titanic/core/click_responder.o
    C++      engines/titanic/core/list.o
    C++      engines/titanic/core/drop_target.o
    C++      engines/titanic/core/message_target.o
    C++      engines/titanic/core/game_object_desc_item.o
    C++      engines/titanic/core/link_item.o
    C++      engines/titanic/core/mail_man.o
    C++      engines/titanic/core/node_item.o
    C++      engines/titanic/core/named_item.o
    C++      engines/titanic/core/multi_drop_target.o
    C++      engines/titanic/core/resource_key.o
    C++      engines/titanic/core/static_image.o
    C++      engines/titanic/core/room_item.o
    C++      engines/titanic/core/turn_on_object.o
    C++      engines/titanic/core/turn_on_play_sound.o
    C++      engines/titanic/core/turn_on_turn_off.o
    C++      engines/titanic/game/annoy_barbot.o
    C++      engines/titanic/game/announce.o
    C++      engines/titanic/game/arb_background.o
    C++      engines/titanic/core/project_item.o
    C++      engines/titanic/core/view_item.o
    C++      engines/titanic/core/tree_item.o
    C++      engines/titanic/game/auto_animate.o
    C++      engines/titanic/core/game_object.o
    C++      engines/titanic/game/arboretum_gate.o
    C++      engines/titanic/game/bar_menu.o
    C++      engines/titanic/game/bar_menu_button.o
    C++      engines/titanic/game/belbot_get_light.o
    C++      engines/titanic/game/bar_bell.o
    C++      engines/titanic/game/bottom_of_well_monitor.o
    C++      engines/titanic/game/bowl_unlocker.o
    C++      engines/titanic/game/brain_slot.o
    C++      engines/titanic/game/bridge_door.o
    C++      engines/titanic/game/bomb.o
    C++      engines/titanic/game/broken_pell_base.o
    C++      engines/titanic/game/bridge_view.o
    C++      engines/titanic/game/broken_pellerator.o
    C++      engines/titanic/game/broken_pellerator_froz.o
    C++      engines/titanic/game/cage.o
    C++      engines/titanic/game/cdrom.o
    C++      engines/titanic/game/cdrom_computer.o
    C++      engines/titanic/game/captains_wheel.o
    C++      engines/titanic/game/cdrom_tray.o
    C++      engines/titanic/game/cell_point_button.o
    C++      engines/titanic/game/chev_code.o
    C++      engines/titanic/game/chev_panel.o
    C++      engines/titanic/game/chicken_cooler.o
    C++      engines/titanic/game/close_broken_pel.o
    C++      engines/titanic/game/cookie.o
    C++      engines/titanic/game/code_wheel.o
    C++      engines/titanic/game/chicken_dispensor.o
    C++      engines/titanic/game/computer.o
    C++      engines/titanic/game/credits.o
    C++      engines/titanic/game/credits_button.o
    C++      engines/titanic/game/computer_screen.o
    C++      engines/titanic/game/dead_area.o
    C++      engines/titanic/game/desk_click_responder.o
    C++      engines/titanic/game/doorbot_elevator_handler.o
    C++      engines/titanic/game/doorbot_home_handler.o
    C++      engines/titanic/game/elevator_action_area.o
    C++      engines/titanic/game/eject_phonograph_button.o
    C++      engines/titanic/game/ear_sweet_bowl.o
    C++      engines/titanic/game/emma_control.o
    C++      engines/titanic/game/empty_nut_bowl.o
    C++      engines/titanic/game/end_credit_text.o
    C++      engines/titanic/game/end_credits.o
    C++      engines/titanic/game/end_explode_ship.o
    C++      engines/titanic/game/end_sequence_control.o
    C++      engines/titanic/game/end_game_credits.o
    C++      engines/titanic/game/hammer_dispensor.o
    C++      engines/titanic/game/fan.o
    C++      engines/titanic/game/hammer_dispensor_button.o
    C++      engines/titanic/game/fan_control.o
    C++      engines/titanic/game/fan_decrease.o
    C++      engines/titanic/game/fan_increase.o
    C++      engines/titanic/game/games_console.o
    C++      engines/titanic/game/fan_noises.o
    C++      engines/titanic/game/floor_indicator.o
    C++      engines/titanic/game/get_lift_eye2.o
    C++      engines/titanic/game/glass_smasher.o
    C++      engines/titanic/game/hammer_clip.o
    C++      engines/titanic/game/head_smash_event.o
    C++      engines/titanic/game/head_spinner.o
    C++      engines/titanic/game/head_slot.o
    C++      engines/titanic/game/head_smash_lever.o
    C++      engines/titanic/game/leave_sec_class_state.o
    C++      engines/titanic/game/idle_summoner.o
    C++      engines/titanic/game/lemon_dispensor.o
    C++      engines/titanic/game/little_lift_button.o
    C++      engines/titanic/game/long_stick_dispenser.o
    C++      engines/titanic/game/light.o
    C++      engines/titanic/game/light_switch.o
    C++      engines/titanic/game/missiveomat_button.o
    C++      engines/titanic/game/movie_tester.o
    C++      engines/titanic/game/missiveomat.o
    C++      engines/titanic/game/music_room_phonograph.o
    C++      engines/titanic/game/music_console_button.o
    C++      engines/titanic/game/music_room_stop_phonograph_button.o
    C++      engines/titanic/game/music_system_lock.o
    C++      engines/titanic/game/musical_instrument.o
    C++      engines/titanic/game/nav_helmet_off.o
    C++      engines/titanic/game/navigation_computer.o
    C++      engines/titanic/game/no_nut_bowl.o
    C++      engines/titanic/game/nav_helmet.o
    C++      engines/titanic/game/nav_helmet_on.o
    C++      engines/titanic/game/null_port_hole.o
    C++      engines/titanic/game/nose_holder.o
    C++      engines/titanic/game/nut_replacer.o
    C++      engines/titanic/game/pet_disabler.o
    C++      engines/titanic/game/phonograph_lid.o
    C++      engines/titanic/game/place_holder_item.o
    C++      engines/titanic/game/phonograph.o
    C++      engines/titanic/game/play_music_button.o
    C++      engines/titanic/game/play_on_act.o
    C++      engines/titanic/game/port_hole.o
    C++      engines/titanic/game/record_phonograph_button.o
    C++      engines/titanic/game/replacement_ear.o
    C++      engines/titanic/game/reserved_table.o
    C++      engines/titanic/game/restaurant_cylinder_holder.o
    C++      engines/titanic/game/restaurant_phonograph.o
    C++      engines/titanic/game/sauce_dispensor.o
    C++      engines/titanic/game/search_point.o
    C++      engines/titanic/game/season_background.o
    C++      engines/titanic/game/season_barrel.o
    C++      engines/titanic/game/seasonal_adjustment.o
    C++      engines/titanic/game/service_elevator_window.o
    C++      engines/titanic/game/ship_setting_button.o
    C++      engines/titanic/game/ship_setting.o
    C++      engines/titanic/game/splash_animation.o
    C++      engines/titanic/game/show_cell_points.o
    C++      engines/titanic/game/speech_dispensor.o
    C++      engines/titanic/game/starling_puret.o
    C++      engines/titanic/game/start_action.o
    C++      engines/titanic/game/stop_phonograph_button.o
    C++      engines/titanic/game/sub_glass.o
    C++      engines/titanic/game/sub_wrapper.o
    C++      engines/titanic/game/sweet_bowl.o
    C++      engines/titanic/game/third_class_canal.o
    C++      engines/titanic/game/tow_parrot_nav.o
    C++      engines/titanic/game/television.o
    C++      engines/titanic/game/throw_tv_down_well.o
    C++      engines/titanic/game/variable_list.o
    C++      engines/titanic/game/titania_still_control.o
    C++      engines/titanic/game/useless_lever.o
    C++      engines/titanic/game/up_lighter.o
    C++      engines/titanic/game/volume_control.o
    C++      engines/titanic/game/wheel_button.o
    C++      engines/titanic/game/wheel_spin.o
    C++      engines/titanic/game/wheel_hotspot.o
    C++      engines/titanic/game/wheel_spin_horn.o
    C++      engines/titanic/game/gondolier/gondolier_base.o
    C++      engines/titanic/game/gondolier/gondolier_chest.o
    C++      engines/titanic/game/gondolier/gondolier_face.o
    C++      engines/titanic/game/maitred/maitred_arm_holder.o
    C++      engines/titanic/game/gondolier/gondolier_mixer.o
    C++      engines/titanic/game/maitred/maitred_body.o
    C++      engines/titanic/game/maitred/maitred_legs.o
    C++      engines/titanic/game/gondolier/gondolier_slider.o
    C++      engines/titanic/game/maitred/maitred_prod_receptor.o
    C++      engines/titanic/game/parrot/parrot_lobby_controller.o
    C++      engines/titanic/game/parrot/parrot_lobby_object.o
    C++      engines/titanic/game/parrot/parrot_lobby_view_object.o
    C++      engines/titanic/game/parrot/parrot_loser.o
    C++      engines/titanic/game/parrot/parrot_lobby_link_updater.o
    C++      engines/titanic/game/parrot/parrot_nut_bowl_actor.o
    C++      engines/titanic/game/parrot/parrot_nut_eater.o
    C++      engines/titanic/game/parrot/parrot_perch_holder.o
    C++      engines/titanic/game/parrot/player_meets_parrot.o
    C++      engines/titanic/game/parrot/parrot_trigger.o
    C++      engines/titanic/game/pet/pet_class2.o
    C++      engines/titanic/game/pet/pet_class1.o
    C++      engines/titanic/game/pet/pet.o
    C++      engines/titanic/game/pet/pet_class3.o
    C++      engines/titanic/game/pet/pet_lift.o
    C++      engines/titanic/game/pet/pet_pellerator.o
    C++      engines/titanic/game/pet/pet_monitor.o
    C++      engines/titanic/game/pet/pet_sounds.o
    C++      engines/titanic/game/pet/pet_sentinal.o
    C++      engines/titanic/game/pet/pet_position.o
    C++      engines/titanic/game/pet/pet_transition.o
    C++      engines/titanic/game/pet/pet_transport.o
    C++      engines/titanic/game/pickup/pick_up.o
    C++      engines/titanic/game/pickup/pick_up_bar_glass.o
    C++      engines/titanic/game/pickup/pick_up_hose.o
    C++      engines/titanic/game/pickup/pick_up_lemon.o
    C++      engines/titanic/game/pickup/pick_up_speech_centre.o
    C++      engines/titanic/game/pickup/pick_up_vis_centre.o
    C++      engines/titanic/game/placeholder/bar_shelf_vis_centre.o
    C++      engines/titanic/game/placeholder/place_holder.o
    C++      engines/titanic/game/placeholder/lemon_on_bar.o
    C++      engines/titanic/game/placeholder/tv_on_bar.o
    C++      engines/titanic/game/transport/gondolier.o
    C++      engines/titanic/game/transport/transport.o
    C++      engines/titanic/game/transport/lift.o
    C++      engines/titanic/game/transport/pellerator.o
    C++      engines/titanic/game/transport/service_elevator.o
    C++      engines/titanic/game/transport/lift_indicator.o
    C++      engines/titanic/game/sgt/armchair.o
    C++      engines/titanic/game/sgt/basin.o
    C++      engines/titanic/game/sgt/bedfoot.o
    C++      engines/titanic/game/sgt/deskchair.o
    C++      engines/titanic/game/sgt/drawer.o
    C++      engines/titanic/game/sgt/chest_of_drawers.o
    C++      engines/titanic/game/sgt/desk.o
    C++      engines/titanic/game/sgt/bedhead.o
    C++      engines/titanic/game/sgt/sgt_doors.o
    C++      engines/titanic/game/sgt/sgt_restaurant_doors.o
    C++      engines/titanic/game/sgt/sgt_nav.o
    C++      engines/titanic/game/sgt/sgt_state_control.o
    C++      engines/titanic/game/sgt/sgt_tv.o
    C++      engines/titanic/game/sgt/sgt_navigation.o
    C++      engines/titanic/game/sgt/sgt_state_room.o
    C++      engines/titanic/game/sgt/sgt_upper_doors_sound.o
    C++      engines/titanic/game/sgt/toilet.o
    C++      engines/titanic/game/sgt/vase.o
    C++      engines/titanic/game/sgt/washstand.o
    C++      engines/titanic/gfx/act_button.o
    C++      engines/titanic/gfx/chev_left_off.o
    C++      engines/titanic/gfx/chev_left_on.o
    C++      engines/titanic/gfx/changes_season_button.o
    C++      engines/titanic/gfx/chev_right_off.o
    C++      engines/titanic/gfx/chev_right_on.o
    C++      engines/titanic/gfx/chev_send_rec_switch.o
    C++      engines/titanic/gfx/elevator_button.o
    C++      engines/titanic/gfx/get_from_succ.o
    C++      engines/titanic/gfx/edit_control.o
    C++      engines/titanic/gfx/text_control.o
    C++      engines/titanic/gfx/helmet_on_off.o
    C++      engines/titanic/gfx/icon_nav_action.o
    C++      engines/titanic/gfx/home_photo.o
    C++      engines/titanic/gfx/icon_nav_butt.o
    C++      engines/titanic/gfx/icon_nav_down.o
    C++      engines/titanic/gfx/icon_nav_image.o
    C++      engines/titanic/gfx/icon_nav_left.o
    C++      engines/titanic/gfx/icon_nav_receive.o
    C++      engines/titanic/gfx/icon_nav_send.o
    C++      engines/titanic/gfx/icon_nav_right.o
    C++      engines/titanic/gfx/icon_nav_up.o
    C++      engines/titanic/gfx/keybrd_butt.o
    C++      engines/titanic/gfx/move_object_button.o
    C++      engines/titanic/gfx/music_control.o
    C++      engines/titanic/gfx/music_slider.o
    C++      engines/titanic/gfx/music_switch.o
    C++      engines/titanic/gfx/music_slider_pitch.o
    C++      engines/titanic/gfx/music_switch_inversion.o
    C++      engines/titanic/gfx/music_slider_speed.o
    C++      engines/titanic/gfx/music_switch_reverse.o
    C++      engines/titanic/gfx/music_voice_mute.o
    C++      engines/titanic/gfx/send_to_succ.o
    C++      engines/titanic/gfx/small_chev_left_off.o
    C++      engines/titanic/gfx/small_chev_left_on.o
    C++      engines/titanic/gfx/sgt_selector.o
    C++      engines/titanic/gfx/slider_button.o
    C++      engines/titanic/gfx/small_chev_right_off.o
    C++      engines/titanic/gfx/small_chev_right_on.o
    C++      engines/titanic/gfx/status_change_button.o
    C++      engines/titanic/gfx/text_skrew.o
    C++      engines/titanic/gfx/text_down.o
    C++      engines/titanic/gfx/text_up.o
    C++      engines/titanic/gfx/st_button.o
    C++      engines/titanic/gfx/toggle_button.o
    C++      engines/titanic/gfx/toggle_switch.o
    C++      engines/titanic/messages/auto_sound_event.o
    C++      engines/titanic/messages/bilge_auto_sound_event.o
    C++      engines/titanic/messages/door_auto_sound_event.o
    C++      engines/titanic/messages/bilge_dispensor_event.o
    C++      engines/titanic/messages/mouse_messages.o
    C++      engines/titanic/messages/service_elevator_door.o
    C++      engines/titanic/messages/messages.o
    C++      engines/titanic/moves/enter_bomb_room.o
    C++      engines/titanic/moves/call_pellerator.o
    C++      engines/titanic/moves/enter_bridge.o
    C++      engines/titanic/moves/enter_exit_first_class_state.o
    C++      engines/titanic/moves/enter_exit_view.o
    C++      engines/titanic/moves/enter_exit_mini_lift.o
    C++      engines/titanic/moves/enter_exit_sec_class_mini_lift.o
    C++      engines/titanic/moves/exit_arboretum.o
    C++      engines/titanic/moves/exit_bridge.o
    C++      engines/titanic/moves/enter_sec_class_state.o
    C++      engines/titanic/moves/exit_lift.o
    C++      engines/titanic/moves/exit_state_room.o
    C++      engines/titanic/moves/exit_pellerator.o
    C++      engines/titanic/moves/exit_tiania.o
    C++      engines/titanic/moves/move_player_in_parrot_room.o
    C++      engines/titanic/moves/move_player_to_from.o
    C++      engines/titanic/moves/multi_move.o
    C++      engines/titanic/moves/move_player_to.o
    C++      engines/titanic/moves/pan_from_pel.o
    C++      engines/titanic/moves/restaurant_pan_handler.o
    C++      engines/titanic/moves/restricted_move.o
    C++      engines/titanic/moves/scraliontis_table.o
    C++      engines/titanic/moves/trip_down_canal.o
    C++      engines/titanic/npcs/character.o
    C++      engines/titanic/npcs/callbot.o
    C++      engines/titanic/npcs/bellbot.o
    C++      engines/titanic/npcs/bilge_succubus.o
    C++      engines/titanic/npcs/deskbot.o
    C++      engines/titanic/npcs/barbot.o
    C++      engines/titanic/npcs/doorbot.o
    C++      engines/titanic/npcs/maitre_d.o
    C++      engines/titanic/npcs/mobile.o
    C++      engines/titanic/npcs/liftbot.o
    C++      engines/titanic/npcs/robot_controller.o
    C++      engines/titanic/npcs/starlings.o
    C++      engines/titanic/npcs/parrot_succubus.o
    C++      engines/titanic/npcs/summon_bots.o
    C++      engines/titanic/npcs/parrot.o
    C++      engines/titanic/npcs/titania.o
    C++      engines/titanic/npcs/true_talk_npc.o
    C++      engines/titanic/npcs/succubus.o
    C++      engines/titanic/pet_control/pet_element.o
    C++      engines/titanic/pet_control/pet_gfx_element.o
    C++      engines/titanic/pet_control/pet_conversations.o
    C++      engines/titanic/pet_control/pet_frame.o
    C++      engines/titanic/pet_control/pet_control.o
    C++      engines/titanic/pet_control/pet_inventory_glyphs.o
    C++      engines/titanic/pet_control/pet_inventory.o
    C++      engines/titanic/pet_control/pet_starfield.o
    C++      engines/titanic/pet_control/pet_real_life.o
    C++      engines/titanic/pet_control/pet_section.o
    C++      engines/titanic/pet_control/pet_translation.o
    C++      engines/titanic/pet_control/pet_rooms_glyphs.o
    C++      engines/titanic/pet_control/pet_remote.o
    C++      engines/titanic/core/saveable_object.o
    C++      engines/titanic/pet_control/pet_graphic2.o
    C++      engines/titanic/pet_control/pet_rooms.o
    C++      engines/titanic/pet_control/pet_remote_glyphs.o
    C++      engines/titanic/pet_control/pet_graphic.o
    C++      engines/titanic/pet_control/pet_drag_chev.o
    C++      engines/titanic/pet_control/pet_leaf.o
    C++      engines/titanic/pet_control/pet_mode_off.o
    C++      engines/titanic/pet_control/pet_load.o
    C++      engines/titanic/pet_control/pet_mode_on.o
    C++      engines/titanic/pet_control/pet_mode_panel.o
    C++      engines/titanic/pet_control/pet_pannel1.o
    C++      engines/titanic/pet_control/pet_load_save.o
    C++      engines/titanic/pet_control/pet_pannel2.o
    C++      engines/titanic/pet_control/pet_pannel3.o
    C++      engines/titanic/pet_control/pet_glyphs.o
    C++      engines/titanic/sound/audio_buffer.o
    C++      engines/titanic/pet_control/pet_quit.o
    C++      engines/titanic/pet_control/pet_save.o
    C++      engines/titanic/pet_control/pet_show_translation.o
    C++      engines/titanic/pet_control/pet_slider.o
    C++      engines/titanic/sound/auto_music_player.o
    C++      engines/titanic/sound/auto_music_player_base.o
    C++      engines/titanic/sound/auto_sound_player.o
    C++      engines/titanic/pet_control/pet_sound.o
    C++      engines/titanic/sound/auto_sound_player_adsr.o
    C++      engines/titanic/sound/bird_song.o
    C++      engines/titanic/sound/background_sound_maker.o
    C++      engines/titanic/sound/dome_from_top_of_well.o
    C++      engines/titanic/sound/enter_view_toggles_other_music.o
    C++      engines/titanic/sound/gondolier_song.o
    C++      engines/titanic/sound/music_song.o
    C++      engines/titanic/sound/music_room_handler.o
    C++      engines/titanic/sound/music_room.o
    C++      engines/titanic/sound/music_player.o
    C++      engines/titanic/sound/music_room_instrument.o
    C++      engines/titanic/sound/node_auto_sound_player.o
    C++      engines/titanic/sound/proximity.o
    C++      engines/titanic/sound/qmixer.o
    C++      engines/titanic/sound/room_auto_sound_player.o
    C++      engines/titanic/sound/room_trigger_auto_music_player.o
    C++      engines/titanic/sound/restricted_auto_music_player.o
    C++      engines/titanic/sound/season_noises.o
    C++      engines/titanic/sound/seasonal_music_player.o
    C++      engines/titanic/sound/view_toggles_other_music.o
    C++      engines/titanic/sound/titania_speech.o
    C++      engines/titanic/sound/trigger_auto_music_player.o
    C++      engines/titanic/sound/sound_manager.o
    C++      engines/titanic/sound/view_auto_sound_player.o
    C++      engines/titanic/sound/wave_file.o
    C++      engines/titanic/sound/water_lapping_sounds.o
    C++      engines/titanic/sound/sound.o
    C++      engines/titanic/star_control/flight_manager_base.o
    C++      engines/titanic/star_control/flight_manager_marked.o
engines/titanic/star_control/flight_manager_marked.cpp: In member function 'virtual Titanic::MoverState Titanic::CMarkedAutoMover::move(Titanic::CErrorCode&, Titanic::FVector&, Titanic::FMatrix&)':
engines/titanic/star_control/flight_manager_marked.cpp:54:70: warning: implicitly-declared 'Titanic::FMatrix& Titanic::FMatrix::operator=(const Titanic::FMatrix&)' is deprecated [-Wdeprecated-copy]
   54 |         orientation = _orientationChanger.getOrientation(_currentSpin);
      |                                                                      ^
In file included from ./engines/titanic/star_control/orientation_changer.h:26,
                 from ./engines/titanic/star_control/flight_manager_base.h:27,
                 from ./engines/titanic/star_control/flight_manager_marked.h:26,
                 from engines/titanic/star_control/flight_manager_marked.cpp:23:
./engines/titanic/star_control/fmatrix.h:44:9: note: because 'Titanic::FMatrix' has user-provided 'Titanic::FMatrix::FMatrix(const Titanic::FMatrix&)'
   44 |         FMatrix(const FMatrix &src);
      |         ^~~~~~~
    C++      engines/titanic/star_control/flight_manager_unmarked.o
engines/titanic/star_control/flight_manager_unmarked.cpp: In member function 'virtual Titanic::MoverState Titanic::CFlightManagerUnmarked::move(Titanic::CErrorCode&, Titanic::FVector&, Titanic::FMatrix&)':
engines/titanic/star_control/flight_manager_unmarked.cpp:87:78: warning: implicitly-declared 'Titanic::FMatrix& Titanic::FMatrix::operator=(const Titanic::FMatrix&)' is deprecated [-Wdeprecated-copy]
   87 |                 orientation = _orientationChanger.getOrientation(_currentSpin);
      |                                                                              ^
In file included from ./engines/titanic/star_control/orientation_changer.h:26,
                 from ./engines/titanic/star_control/flight_manager_base.h:27,
                 from ./engines/titanic/star_control/flight_manager_unmarked.h:26,
                 from engines/titanic/star_control/flight_manager_unmarked.cpp:23:
./engines/titanic/star_control/fmatrix.h:44:9: note: because 'Titanic::FMatrix' has user-provided 'Titanic::FMatrix::FMatrix(const Titanic::FMatrix&)'
   44 |         FMatrix(const FMatrix &src);
      |         ^~~~~~~
    C++      engines/titanic/star_control/fpoint.o
    C++      engines/titanic/star_control/camera.o
engines/titanic/star_control/camera.cpp: In member function 'virtual void Titanic::CCamera::updatePosition(Titanic::CErrorCode*)':
engines/titanic/star_control/camera.cpp:148:55: warning: implicitly-declared 'Titanic::FMatrix& Titanic::FMatrix::operator=(const Titanic::FMatrix&)' is deprecated [-Wdeprecated-copy]
  148 |         *_priorOrientation = _viewport.getOrientation();
      |                                                       ^
In file included from ./engines/titanic/star_control/camera.h:26,
                 from engines/titanic/star_control/camera.cpp:23:
./engines/titanic/star_control/fmatrix.h:44:9: note: because 'Titanic::FMatrix' has user-provided 'Titanic::FMatrix::FMatrix(const Titanic::FMatrix&)'
   44 |         FMatrix(const FMatrix &src);
      |         ^~~~~~~
engines/titanic/star_control/camera.cpp:149:29: warning: implicitly-declared 'Titanic::FMatrix& Titanic::FMatrix::operator=(const Titanic::FMatrix&)' is deprecated [-Wdeprecated-copy]
  149 |         *_newOrientation = *_priorOrientation;
      |                             ^~~~~~~~~~~~~~~~~
In file included from ./engines/titanic/star_control/camera.h:26,
                 from engines/titanic/star_control/camera.cpp:23:
./engines/titanic/star_control/fmatrix.h:44:9: note: because 'Titanic::FMatrix' has user-provided 'Titanic::FMatrix::FMatrix(const Titanic::FMatrix&)'
   44 |         FMatrix(const FMatrix &src);
      |         ^~~~~~~
engines/titanic/star_control/camera.cpp: In member function 'virtual void Titanic::CCamera::setViewportAngle(const Titanic::FPoint&)':
engines/titanic/star_control/camera.cpp:323:38: warning: implicitly-declared 'Titanic::FPose& Titanic::FPose::operator=(const Titanic::FPose&)' is deprecated [-Wdeprecated-copy]
  323 |                 m1 = diffV.formRotXY();
      |                                      ^
In file included from ./engines/titanic/star_control/viewport.h:27,
                 from ./engines/titanic/star_control/camera.h:28,
                 from engines/titanic/star_control/camera.cpp:23:
./engines/titanic/star_control/fpose.h:41:9: note: because 'Titanic::FPose' has user-provided 'Titanic::FPose::FPose(const Titanic::FPose&)'
   41 |         FPose(const FPose &src);
      |         ^~~~~
engines/titanic/star_control/camera.cpp:327:45: warning: implicitly-declared 'Titanic::FPose& Titanic::FPose::operator=(const Titanic::FPose&)' is deprecated [-Wdeprecated-copy]
  327 |                 subX = m11.inverseTransform();
      |                                             ^
In file included from ./engines/titanic/star_control/viewport.h:27,
                 from ./engines/titanic/star_control/camera.h:28,
                 from engines/titanic/star_control/camera.cpp:23:
./engines/titanic/star_control/fpose.h:41:9: note: because 'Titanic::FPose' has user-provided 'Titanic::FPose::FPose(const Titanic::FPose&)'
   41 |         FPose(const FPose &src);
      |         ^~~~~
engines/titanic/star_control/camera.cpp: In member function 'bool Titanic::CCamera::lockMarker2(Titanic::CViewport*, const Titanic::FVector&)':
engines/titanic/star_control/camera.cpp:524:36: warning: implicitly-declared 'Titanic::FPose& Titanic::FPose::operator=(const Titanic::FPose&)' is deprecated [-Wdeprecated-copy]
  524 |         m10 = m11.inverseTransform();
      |                                    ^
In file included from ./engines/titanic/star_control/viewport.h:27,
                 from ./engines/titanic/star_control/camera.h:28,
                 from engines/titanic/star_control/camera.cpp:23:
./engines/titanic/star_control/fpose.h:41:9: note: because 'Titanic::FPose' has user-provided 'Titanic::FPose::FPose(const Titanic::FPose&)'
   41 |         FPose(const FPose &src);
      |         ^~~~~
engines/titanic/star_control/camera.cpp:563:29: warning: implicitly-declared 'Titanic::FPose& Titanic::FPose::operator=(const Titanic::FPose&)' is deprecated [-Wdeprecated-copy]
  563 |         m3 = m4.compose2(m10);
      |                             ^
In file included from ./engines/titanic/star_control/viewport.h:27,
                 from ./engines/titanic/star_control/camera.h:28,
                 from engines/titanic/star_control/camera.cpp:23:
./engines/titanic/star_control/fpose.h:41:9: note: because 'Titanic::FPose' has user-provided 'Titanic::FPose::FPose(const Titanic::FPose&)'
   41 |         FPose(const FPose &src);
      |         ^~~~~
engines/titanic/star_control/camera.cpp:573:30: warning: implicitly-declared 'Titanic::FPose& Titanic::FPose::operator=(const Titanic::FPose&)' is deprecated [-Wdeprecated-copy]
  573 |         m13 = m3.compose2(m11);
      |                              ^
In file included from ./engines/titanic/star_control/viewport.h:27,
                 from ./engines/titanic/star_control/camera.h:28,
                 from engines/titanic/star_control/camera.cpp:23:
./engines/titanic/star_control/fpose.h:41:9: note: because 'Titanic::FPose' has user-provided 'Titanic::FPose::FPose(const Titanic::FPose&)'
   41 |         FPose(const FPose &src);
      |         ^~~~~
    C++      engines/titanic/star_control/const_boundaries.o
    C++      engines/titanic/star_control/constellations.o
    C++      engines/titanic/star_control/base_stars.o
    C++      engines/titanic/star_control/frect.o
    C++      engines/titanic/star_control/fmatrix.o
    C++      engines/titanic/star_control/frange.o
    C++      engines/titanic/star_control/star_control.o
    C++      engines/titanic/star_control/matrix_transform.o
    C++      engines/titanic/star_control/orientation_changer.o
engines/titanic/star_control/orientation_changer.cpp: In member function 'void Titanic::COrientationChanger::load(const Titanic::FMatrix&, const Titanic::FMatrix&)':
engines/titanic/star_control/orientation_changer.cpp:30:22: warning: implicitly-declared 'Titanic::FMatrix& Titanic::FMatrix::operator=(const Titanic::FMatrix&)' is deprecated [-Wdeprecated-copy]
   30 |         _minOrient = minOrient;
      |                      ^~~~~~~~~
In file included from ./engines/titanic/star_control/orientation_changer.h:26,
                 from engines/titanic/star_control/orientation_changer.cpp:23:
./engines/titanic/star_control/fmatrix.h:44:9: note: because 'Titanic::FMatrix' has user-provided 'Titanic::FMatrix::FMatrix(const Titanic::FMatrix&)'
   44 |         FMatrix(const FMatrix &src);
      |         ^~~~~~~
engines/titanic/star_control/orientation_changer.cpp:31:22: warning: implicitly-declared 'Titanic::FMatrix& Titanic::FMatrix::operator=(const Titanic::FMatrix&)' is deprecated [-Wdeprecated-copy]
   31 |         _maxOrient = maxOrient;
      |                      ^~~~~~~~~
In file included from ./engines/titanic/star_control/orientation_changer.h:26,
                 from engines/titanic/star_control/orientation_changer.cpp:23:
./engines/titanic/star_control/fmatrix.h:44:9: note: because 'Titanic::FMatrix' has user-provided 'Titanic::FMatrix::FMatrix(const Titanic::FMatrix&)'
   44 |         FMatrix(const FMatrix &src);
      |         ^~~~~~~
    C++      engines/titanic/star_control/fpose.o
    C++      engines/titanic/star_control/motion_control_marked.o
    C++      engines/titanic/star_control/fvector.o
engines/titanic/star_control/fvector.cpp: In member function 'Titanic::FPose Titanic::FVector::getFrameTransform(const Titanic::FVector&)':
engines/titanic/star_control/fvector.cpp:115:44: warning: implicitly-declared 'Titanic::FPose& Titanic::FPose::operator=(const Titanic::FPose&)' is deprecated [-Wdeprecated-copy]
  115 |         matrix4 = matrix3.inverseTransform();
      |                                            ^
In file included from engines/titanic/star_control/fvector.cpp:24:
./engines/titanic/star_control/fpose.h:41:9: note: because 'Titanic::FPose' has user-provided 'Titanic::FPose::FPose(const Titanic::FPose&)'
   41 |         FPose(const FPose &src);
      |         ^~~~~
    C++      engines/titanic/star_control/motion_control.o
    C++      engines/titanic/star_control/motion_control_unmarked.o
    C++      engines/titanic/star_control/star_field_base.o
    C++      engines/titanic/star_control/star_ref.o
    C++      engines/titanic/star_control/star_crosshairs.o
    C++      engines/titanic/star_control/star_markers.o
    C++      engines/titanic/star_control/surface_area.o
    C++      engines/titanic/star_control/star_field.o
    C++      engines/titanic/star_control/surface_fader.o
    C++      engines/titanic/support/direct_draw_surface.o
    C++      engines/titanic/star_control/star_closeup.o
    C++      engines/titanic/star_control/viewport.o
engines/titanic/star_control/viewport.cpp: In member function 'void Titanic::CViewport::setOrientation(const Titanic::FMatrix&)':
engines/titanic/star_control/viewport.cpp:137:24: warning: implicitly-declared 'Titanic::FMatrix& Titanic::FMatrix::operator=(const Titanic::FMatrix&)' is deprecated [-Wdeprecated-copy]
  137 |         _orientation = m;
      |                        ^
In file included from ./engines/titanic/star_control/fpose.h:26,
                 from ./engines/titanic/star_control/viewport.h:27,
                 from engines/titanic/star_control/viewport.cpp:23:
./engines/titanic/star_control/fmatrix.h:44:9: note: because 'Titanic::FMatrix' has user-provided 'Titanic::FMatrix::FMatrix(const Titanic::FMatrix&)'
   44 |         FMatrix(const FMatrix &src);
      |         ^~~~~~~
engines/titanic/star_control/viewport.cpp: In member function 'void Titanic::CViewport::reset()':
engines/titanic/star_control/viewport.cpp:296:50: warning: implicitly-declared 'Titanic::FPose& Titanic::FPose::operator=(const Titanic::FPose&)' is deprecated [-Wdeprecated-copy]
  296 |         _currentPose = _rawPose.inverseTransform();
      |                                                  ^
In file included from ./engines/titanic/star_control/viewport.h:27,
                 from engines/titanic/star_control/viewport.cpp:23:
./engines/titanic/star_control/fpose.h:41:9: note: because 'Titanic::FPose' has user-provided 'Titanic::FPose::FPose(const Titanic::FPose&)'
   41 |         FPose(const FPose &src);
      |         ^~~~~
    C++      engines/titanic/support/exe_resources.o
    C++      engines/titanic/support/direct_draw.o
    C++      engines/titanic/star_control/star_view.o
    C++      engines/titanic/support/image.o
    C++      engines/titanic/support/image_decoders.o
    C++      engines/titanic/support/strings.o
    C++      engines/titanic/support/font.o
    C++      engines/titanic/support/avi_surface.o
    C++      engines/titanic/support/mouse_cursor.o
    C++      engines/titanic/support/movie_event.o
    C++      engines/titanic/support/movie_manager.o
    C++      engines/titanic/support/files_manager.o
    C++      engines/titanic/support/movie_clip.o
    C++      engines/titanic/support/transparency_surface.o
    C++      engines/titanic/support/rect.o
    C++      engines/titanic/support/string_parser.o
    C++      engines/titanic/support/string.o
    C++      engines/titanic/support/movie.o
    C++      engines/titanic/support/movie_range_info.o
    C++      engines/titanic/support/text_cursor.o
    C++      engines/titanic/support/screen_manager.o
    C++      engines/titanic/support/simple_file.o
    C++      engines/titanic/support/credit_text.o
    C++      engines/titanic/support/time_event_info.o
    C++      engines/titanic/true_talk/dialogue_file.o
    C++      engines/titanic/support/video_surface.o
    C++      engines/titanic/true_talk/parrot_script.o
    C++      engines/titanic/true_talk/liftbot_script.o
    C++      engines/titanic/true_talk/barbot_script.o
    C++      engines/titanic/true_talk/title_engine.o
    C++      engines/titanic/true_talk/deskbot_script.o
    C++      engines/titanic/true_talk/script_handler.o
    C++      engines/titanic/true_talk/succubus_script.o
    C++      engines/titanic/true_talk/doorbot_script.o
    C++      engines/titanic/true_talk/maitred_script.o
    C++      engines/titanic/true_talk/bellbot_script.o
    C++      engines/titanic/true_talk/tt_action.o
    C++      engines/titanic/true_talk/tt_adj.o
    C++      engines/titanic/true_talk/tt_hist.o
    C++      engines/titanic/true_talk/tt_major_word.o
    C++      engines/titanic/true_talk/tt_node.o
    C++      engines/titanic/true_talk/tt_concept_node.o
    C++      engines/titanic/true_talk/tt_concept.o
    C++      engines/titanic/true_talk/script_support.o
    C++      engines/titanic/true_talk/tt_picture.o
    C++      engines/titanic/true_talk/tt_pronoun.o
    C++      engines/titanic/true_talk/tt_response.o
    C++      engines/titanic/true_talk/tt_room_script.o
    C++      engines/titanic/true_talk/tt_quotes_tree.o
    C++      engines/titanic/true_talk/tt_quotes.o
    C++      engines/titanic/true_talk/tt_sentence_node.o
    C++      engines/titanic/true_talk/tt_script_base.o
    C++      engines/titanic/true_talk/tt_string_node.o
    C++      engines/titanic/true_talk/tt_string.o
    C++      engines/titanic/true_talk/tt_scripts.o
    C++      engines/titanic/true_talk/tt_synonym.o
    C++      engines/titanic/true_talk/tt_title_script.o
    C++      engines/titanic/true_talk/true_talk_manager.o
    C++      engines/titanic/true_talk/tt_sentence.o
    C++      engines/toltecs/console.o
    C++      engines/toltecs/animation.o
    C++      engines/titanic/true_talk/tt_word.o
    C++      engines/titanic/true_talk/tt_npc_script.o
    C++      engines/titanic/true_talk/tt_talker.o
    C++      engines/titanic/true_talk/tt_vocab.o
    C++      engines/toltecs/microtiles.o
    C++      engines/titanic/true_talk/tt_parser.o
    C++      engines/toltecs/movie.o
    C++      engines/toltecs/detection.o
    C++      engines/toltecs/music.o
    C++      engines/toltecs/palette.o
    C++      engines/toltecs/render.o
    C++      engines/toltecs/saveload.o
    C++      engines/toltecs/resource.o
    C++      engines/toltecs/toltecs.o
    C++      engines/toltecs/menu.o
    C++      engines/toltecs/sound.o
    C++      engines/toltecs/segmap.o
    C++      engines/toltecs/screen.o
    C++      engines/tony/debugger.o
    C++      engines/toltecs/sprite.o
    C++      engines/tony/globals.o
    C++      engines/tony/detection.o
    C++      engines/toltecs/script.o
    C++      engines/tony/input.o
    C++      engines/tony/gfxengine.o
    C++      engines/tony/inventory.o
    C++      engines/tony/sound.o
    C++      engines/tony/font.o
    C++      engines/tony/gfxcore.o
    C++      engines/tony/game.o
    C++      engines/tony/window.o
    C++      engines/tony/utils.o
    C++      engines/tony/tony.o
    C++      engines/tony/mpal/expr.o
    C++      engines/tony/mpal/memory.o
    C++      engines/tony/mpal/lzo.o
    C++      engines/tony/mpal/mpalutils.o
    C++      engines/tony/mpal/loadmpc.o
engines/tony/mpal/loadmpc.cpp: In function 'const byte* Tony::MPAL::parseItem(const byte*, Tony::MPAL::LpMpalItem)':
engines/tony/mpal/loadmpc.cpp:372:55: warning: taking address of packed member of 'Tony::MPAL::ItemAction' may result in an unaligned pointer value [-Waddress-of-packed-member]
  372 |                         lpBuf = parseExpression(lpBuf,&lpmiItem->_action[i]._when);
      |                                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~
    C++      engines/tony/loc.o
    C++      engines/tony/tonychar.o
    C++      engines/toon/console.o
    C++      engines/toon/conversation.o
    C++      engines/tony/custom.o
    C++      engines/toon/audio.o
    C++      engines/toon/drew.o
    C++      engines/toon/flux.o
    C++      engines/toon/character.o
    C++      engines/toon/anim.o
    C++      engines/toon/font.o
    C++      engines/toon/detection.o
    C++      engines/toon/hotspot.o
    C++      engines/tony/mpal/mpal.o
    C++      engines/toon/movie.o
    C++      engines/toon/picture.o
    C++      engines/toon/text.o
    C++      engines/toon/path.o
    C++      engines/toon/subtitles.o
    C++      engines/toon/resource.o
    C++      engines/toon/script.o
    C++      engines/toon/state.o
    C++      engines/touche/console.o
    C++      engines/touche/graphics.o
    C++      engines/touche/midi.o
    C++      engines/toon/tools.o
    C++      engines/touche/detection.o
    C++      engines/touche/menu.o
    C++      engines/touche/staticres.o
    C++      engines/touche/opcodes.o
    C++      engines/touche/saveload.o
    C++      engines/touche/resource.o
    C++      engines/tsage/blue_force/blueforce_dialogs.o
    C++      engines/toon/script_func.o
    C++      engines/tsage/blue_force/blueforce_scenes0.o
    C++      engines/touche/touche.o
engines/touche/touche.cpp: In member function 'void Touche::ToucheEngine::clearAnimationTable()':
engines/touche/touche.cpp:3323:15: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct Touche::AnimationEntry'; use assignment or value-initialization instead [-Wclass-memaccess]
 3323 |         memset(_animationTable, 0, sizeof(_animationTable));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from engines/touche/touche.cpp:44:
./engines/touche/touche.h:185:8: note: 'struct Touche::AnimationEntry' declared here
  185 | struct AnimationEntry {
      |        ^~~~~~~~~~~~~~
    C++      engines/tsage/blue_force/blueforce_scenes2.o
    C++      engines/tsage/blue_force/blueforce_scenes4.o
    C++      engines/tsage/blue_force/blueforce_logic.o
    C++      engines/tsage/blue_force/blueforce_scenes6.o
    C++      engines/tsage/blue_force/blueforce_scenes7.o
    C++      engines/toon/toon.o
    C++      engines/tsage/blue_force/blueforce_scenes1.o
    C++      engines/tsage/debugger.o
    C++      engines/tsage/blue_force/blueforce_scenes5.o
    C++      engines/tsage/blue_force/blueforce_speakers.o
    C++      engines/tsage/dialogs.o
    C++      engines/tsage/detection.o
    C++      engines/tsage/converse.o
    C++      engines/tsage/events.o
    C++      engines/tsage/ringworld/ringworld_demo.o
    C++      engines/tsage/resources.o
    C++      engines/tsage/blue_force/blueforce_scenes9.o
    C++      engines/tsage/ringworld/ringworld_dialogs.o
    C++      engines/tsage/graphics.o
    C++      engines/tsage/blue_force/blueforce_scenes8.o
    C++      engines/tsage/blue_force/blueforce_scenes3.o
    C++      engines/tsage/ringworld/ringworld_scenes2.o
    C++      engines/tsage/ringworld/ringworld_scenes4.o
    C++      engines/tsage/ringworld/ringworld_logic.o
    C++      engines/tsage/globals.o
    C++      engines/tsage/core.o
engines/tsage/core.cpp: In copy constructor 'TsAGE::SceneObject::SceneObject(const TsAGE::SceneObject&)':
engines/tsage/core.cpp:2136:17: warning: implicitly-declared 'TsAGE::SceneObject& TsAGE::SceneObject::operator=(const TsAGE::SceneObject&)' is deprecated [-Wdeprecated-copy]
 2136 |         *this = so;
      |                 ^~
engines/tsage/core.cpp:2135:1: note: because 'TsAGE::SceneObject' has user-provided 'TsAGE::SceneObject::SceneObject(const TsAGE::SceneObject&)'
 2135 | SceneObject::SceneObject(const SceneObject &so) : SceneHotspot() {
      | ^~~~~~~~~~~
engines/tsage/core.cpp: In member function 'virtual void TsAGE::SceneObject::copy(TsAGE::SceneObject*)':
engines/tsage/core.cpp:2452:18: warning: implicitly-declared 'TsAGE::SceneObject& TsAGE::SceneObject::operator=(const TsAGE::SceneObject&)' is deprecated [-Wdeprecated-copy]
 2452 |         *this = *src;
      |                  ^~~
engines/tsage/core.cpp:2135:1: note: because 'TsAGE::SceneObject' has user-provided 'TsAGE::SceneObject::SceneObject(const TsAGE::SceneObject&)'
 2135 | SceneObject::SceneObject(const SceneObject &so) : SceneHotspot() {
      | ^~~~~~~~~~~
    C++      engines/tsage/ringworld/ringworld_speakers.o
    C++      engines/tsage/ringworld2/ringworld2_airduct.o
    C++      engines/tsage/ringworld/ringworld_scenes1.o
    C++      engines/tsage/ringworld/ringworld_scenes6.o
    C++      engines/tsage/ringworld/ringworld_scenes8.o
    C++      engines/tsage/ringworld2/ringworld2_dialogs.o
    C++      engines/tsage/ringworld/ringworld_scenes10.o
    C++      engines/tsage/ringworld/ringworld_scenes5.o
    C++      engines/tsage/ringworld/ringworld_scenes3.o
    C++      engines/tsage/ringworld2/ringworld2_logic.o
    C++      engines/tsage/ringworld2/ringworld2_vampire.o
    C++      engines/tsage/ringworld2/ringworld2_outpost.o
    C++      engines/tsage/saveload.o
    C++      engines/tsage/sherlock/sherlock_logo.o
    C++      engines/tsage/screen.o
    C++      engines/tsage/staticres.o
    C++      engines/tsage/ringworld2/ringworld2_speakers.o
    C++      engines/tsage/scenes.o
    C++      engines/tsage/tsage.o
    C++      engines/tucker/console.o
    C++      engines/tucker/graphics.o
    C++      engines/tsage/ringworld2/ringworld2_scenes2.o
    C++      engines/tucker/detection.o
    C++      engines/tsage/user_interface.o
    C++      engines/tucker/saveload.o
    C++      engines/tucker/staticres.o
    C++      engines/tsage/ringworld2/ringworld2_scenes3.o
    C++      engines/tsage/sound.o
    C++      engines/tucker/sequences.o
    C++      engines/ultima/detection.o
    C++      engines/tucker/locations.o
    C++      engines/tsage/ringworld2/ringworld2_scenes1.o
    C++      engines/ultima/shared/actions/action.o
    C++      engines/ultima/shared/actions/huh.o
In file included from ./engines/ultima/shared/core/tree_item.h:26,
                 from ./engines/ultima/shared/actions/action.h:26,
                 from ./engines/ultima/shared/actions/huh.h:26,
                 from engines/ultima/shared/actions/huh.cpp:23:
engines/ultima/shared/actions/huh.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Shared::Actions::Huh::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Shared::Actions::Huh::*)(Ultima::Shared::CHuhMsg&)' to 'FNPTR' {aka 'bool (Ultima::Shared::Actions::Huh::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/shared/actions/huh.cpp:30:9: note: in expansion of macro 'ON_MESSAGE'
   30 |         ON_MESSAGE(HuhMsg)
      |         ^~~~~~~~~~
    C++      engines/ultima/shared/actions/pass.o
In file included from ./engines/ultima/shared/core/tree_item.h:26,
                 from ./engines/ultima/shared/actions/action.h:26,
                 from ./engines/ultima/shared/actions/pass.h:26,
                 from engines/ultima/shared/actions/pass.cpp:23:
engines/ultima/shared/actions/pass.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Shared::Actions::Pass::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Shared::Actions::Pass::*)(Ultima::Shared::CPassMsg&)' to 'FNPTR' {aka 'bool (Ultima::Shared::Actions::Pass::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/shared/actions/pass.cpp:30:9: note: in expansion of macro 'ON_MESSAGE'
   30 |         ON_MESSAGE(PassMsg)
      |         ^~~~~~~~~~
    C++      engines/ultima/shared/core/base_object.o
    C++      engines/tsage/ringworld2/ringworld2_scenes0.o
engines/tsage/ringworld2/ringworld2_scenes0.cpp: In member function 'void TsAGE::Ringworld2::Scene825::_ZN5TsAGE10Ringworld28Scene82513doButtonPressEi.part.0(int)':
engines/tsage/ringworld2/ringworld2_scenes0.cpp:7107:33: warning: array subscript -1 is below array bounds of 'const char* [11]' [-Warray-bounds]
 7107 |                 _sceneText.setup(scene->_autodocItems[textId - 1]);
      |                 ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from engines/tsage/ringworld2/ringworld2_scenes0.cpp:27:
./engines/tsage/ringworld2/ringworld2_scenes0.h:847:21: note: while referencing 'TsAGE::Ringworld2::Scene825::_autodocItems'
  847 |         const char *_autodocItems[11];
      |                     ^~~~~~~~~~~~~
engines/tsage/ringworld2/ringworld2_scenes0.cpp:7107:33: warning: array subscript -1 is below array bounds of 'const char* [11]' [-Warray-bounds]
 7107 |                 _sceneText.setup(scene->_autodocItems[textId - 1]);
      |                 ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from engines/tsage/ringworld2/ringworld2_scenes0.cpp:27:
./engines/tsage/ringworld2/ringworld2_scenes0.h:847:21: note: while referencing 'TsAGE::Ringworld2::Scene825::_autodocItems'
  847 |         const char *_autodocItems[11];
      |                     ^~~~~~~~~~~~~
engines/tsage/ringworld2/ringworld2_scenes0.cpp:7107:33: warning: array subscript -1 is below array bounds of 'const char* [11]' [-Warray-bounds]
 7107 |                 _sceneText.setup(scene->_autodocItems[textId - 1]);
      |                 ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from engines/tsage/ringworld2/ringworld2_scenes0.cpp:27:
./engines/tsage/ringworld2/ringworld2_scenes0.h:847:21: note: while referencing 'TsAGE::Ringworld2::Scene825::_autodocItems'
  847 |         const char *_autodocItems[11];
      |                     ^~~~~~~~~~~~~
engines/tsage/ringworld2/ringworld2_scenes0.cpp:7107:33: warning: array subscript -1 is below array bounds of 'const char* [11]' [-Warray-bounds]
 7107 |                 _sceneText.setup(scene->_autodocItems[textId - 1]);
      |                 ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from engines/tsage/ringworld2/ringworld2_scenes0.cpp:27:
./engines/tsage/ringworld2/ringworld2_scenes0.h:847:21: note: while referencing 'TsAGE::Ringworld2::Scene825::_autodocItems'
  847 |         const char *_autodocItems[11];
      |                     ^~~~~~~~~~~~~
engines/tsage/ringworld2/ringworld2_scenes0.cpp:7107:33: warning: array subscript -1 is below array bounds of 'const char* [11]' [-Warray-bounds]
 7107 |                 _sceneText.setup(scene->_autodocItems[textId - 1]);
      |                 ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from engines/tsage/ringworld2/ringworld2_scenes0.cpp:27:
./engines/tsage/ringworld2/ringworld2_scenes0.h:847:21: note: while referencing 'TsAGE::Ringworld2::Scene825::_autodocItems'
  847 |         const char *_autodocItems[11];
      |                     ^~~~~~~~~~~~~
engines/tsage/ringworld2/ringworld2_scenes0.cpp:7107:33: warning: array subscript -1 is below array bounds of 'const char* [11]' [-Warray-bounds]
 7107 |                 _sceneText.setup(scene->_autodocItems[textId - 1]);
      |                 ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from engines/tsage/ringworld2/ringworld2_scenes0.cpp:27:
./engines/tsage/ringworld2/ringworld2_scenes0.h:847:21: note: while referencing 'TsAGE::Ringworld2::Scene825::_autodocItems'
  847 |         const char *_autodocItems[11];
      |                     ^~~~~~~~~~~~~
    C++      engines/ultima/shared/conf/xml_tree.o
    C++      engines/ultima/shared/core/message_target.o
    C++      engines/ultima/shared/core/lzw.o
In file included from engines/ultima/shared/core/lzw.cpp:23:
In member function 'uint32 Common::ReadStream::readUint32LE()',
    inlined from 'void Ultima::Shared::LZW::decompress(Common::ReadStream*, Common::WriteStream*)' at engines/ultima/shared/core/lzw.cpp:31:39:
./common/endian.h:382:43: warning: 'val' may be used uninitialized [-Wmaybe-uninitialized]
  382 |         #define FROM_LE_32(a) ((uint32)(a))
      |                                           ^
./common/stream.h:359:24: note: in expansion of macro 'FROM_LE_32'
  359 |                 return FROM_LE_32(val);
      |                        ^~~~~~~~~~
In file included from ./engines/ultima/shared/core/lzw.h:26,
                 from engines/ultima/shared/core/lzw.cpp:25:
./common/stream.h: In member function 'void Ultima::Shared::LZW::decompress(Common::ReadStream*, Common::WriteStream*)':
./common/stream.h:357:24: note: 'val' declared here
  357 |                 uint32 val;
      |                        ^~~
    C++      engines/ultima/shared/core/character.o
    C++      engines/ultima/shared/core/file.o
    C++      engines/ultima/shared/core/named_item.o
    C++      engines/ultima/shared/core/str.o
engines/ultima/shared/core/str.cpp: In member function 'Ultima::Shared::StringArray Ultima::Shared::String::split(const Ultima::Shared::String&) const':
engines/ultima/shared/core/str.cpp:57:53: warning: implicitly-declared 'Ultima::Shared::String& Ultima::Shared::String::operator=(const Ultima::Shared::String&)' is deprecated [-Wdeprecated-copy]
   57 |                 temp = String(temp.c_str() + idx + 1);
      |                                                     ^
In file included from engines/ultima/shared/core/str.cpp:23:
./engines/ultima/shared/core/str.h:45:9: note: because 'Ultima::Shared::String' has user-provided 'Ultima::Shared::String::String(const Ultima::Shared::String&)'
   45 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./common/array.h:27,
                 from ./engines/ultima/shared/core/str.h:27,
                 from engines/ultima/shared/core/str.cpp:23:
./common/algorithm.h: In instantiation of 'Out Common::copy_backward(In, In, Out) [with In = Ultima::Shared::String*; Out = Ultima::Shared::String*]':
./common/array.h:366:18:   required from 'T* Common::Array<T>::insert_aux(Common::Array<T>::iterator, Common::Array<T>::const_iterator, Common::Array<T>::const_iterator) [with T = Ultima::Shared::String; Common::Array<T>::iterator = Ultima::Shared::String*; Common::Array<T>::const_iterator = const Ultima::Shared::String*]'
./common/array.h:108:4:   required from 'void Common::Array<T>::push_back(const T&) [with T = Ultima::Shared::String]'
engines/ultima/shared/core/str.cpp:56:20:   required from here
./common/algorithm.h:54:24: warning: implicitly-declared 'Ultima::Shared::String& Ultima::Shared::String::operator=(const Ultima::Shared::String&)' is deprecated [-Wdeprecated-copy]
   54 |                 *--dst = *--last;
      |                 ~~~~~~~^~~~~~~~~
In file included from engines/ultima/shared/core/str.cpp:23:
./engines/ultima/shared/core/str.h:45:9: note: because 'Ultima::Shared::String' has user-provided 'Ultima::Shared::String::String(const Ultima::Shared::String&)'
   45 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
In file included from ./common/array.h:27,
                 from ./engines/ultima/shared/core/str.h:27,
                 from engines/ultima/shared/core/str.cpp:23:
./common/algorithm.h: In instantiation of 'Out Common::copy(In, In, Out) [with In = const Ultima::Shared::String*; Out = Ultima::Shared::String*]':
./common/array.h:369:9:   required from 'T* Common::Array<T>::insert_aux(Common::Array<T>::iterator, Common::Array<T>::const_iterator, Common::Array<T>::const_iterator) [with T = Ultima::Shared::String; Common::Array<T>::iterator = Ultima::Shared::String*; Common::Array<T>::const_iterator = const Ultima::Shared::String*]'
./common/array.h:108:4:   required from 'void Common::Array<T>::push_back(const T&) [with T = Ultima::Shared::String]'
engines/ultima/shared/core/str.cpp:56:20:   required from here
./common/algorithm.h:40:24: warning: implicitly-declared 'Ultima::Shared::String& Ultima::Shared::String::operator=(const Ultima::Shared::String&)' is deprecated [-Wdeprecated-copy]
   40 |                 *dst++ = *first++;
      |                 ~~~~~~~^~~~~~~~~~
In file included from engines/ultima/shared/core/str.cpp:23:
./engines/ultima/shared/core/str.h:45:9: note: because 'Ultima::Shared::String' has user-provided 'Ultima::Shared::String::String(const Ultima::Shared::String&)'
   45 |         String(const String &str) : Common::String(str) {}
      |         ^~~~~~
    C++      engines/ultima/shared/core/party.o
    C++      engines/ultima/shared/conf/xml_node.o
    C++      engines/ultima/shared/core/mouse_cursor.o
    C++      engines/tucker/resource.o
    C++      engines/ultima/shared/core/utils.o
    C++      engines/ultima/shared/core/map.o
    C++      engines/ultima/shared/core/tree_item.o
    C++      engines/ultima/shared/early/font_resources.o
    C++      engines/ultima/shared/core/widgets.o
    C++      engines/ultima/shared/early/game.o
In file included from ./engines/ultima/shared/core/tree_item.h:26,
                 from ./engines/ultima/shared/engine/messages.h:30,
                 from ./engines/ultima/shared/engine/input_translator.h:27,
                 from ./engines/ultima/shared/engine/input_handler.h:26,
                 from ./engines/ultima/shared/early/game_base.h:30,
                 from ./engines/ultima/shared/early/game.h:26,
                 from engines/ultima/shared/early/game.cpp:23:
engines/ultima/shared/early/game.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Shared::Game::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Shared::Game::*)(Ultima::Shared::CEndOfTurnMsg&)' to 'FNPTR' {aka 'bool (Ultima::Shared::Game::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/shared/early/game.cpp:34:9: note: in expansion of macro 'ON_MESSAGE'
   34 |         ON_MESSAGE(EndOfTurnMsg)
      |         ^~~~~~~~~~
    C++      engines/ultima/shared/early/ultima_early.o
    C++      engines/tucker/tucker.o
engines/tucker/tucker.cpp: In member function 'void Tucker::TuckerEngine::drawStringInteger(int, int, int, int)':
engines/tucker/tucker.cpp:2987:26: warning: '%03d' directive writing between 3 and 11 bytes into a region of size 4 [-Wformat-overflow=]
 2987 |         sprintf(numStr, "%03d", num);
      |                          ^~~~
engines/tucker/tucker.cpp:2987:25: note: directive argument in the range [-2147483648, 999]
 2987 |         sprintf(numStr, "%03d", num);
      |                         ^~~~~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./common/array.h:26,
                 from ./common/config-manager.h:26,
                 from engines/tucker/tucker.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 4 and 12 bytes into a destination of size 4
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
    C++      engines/ultima/shared/engine/ultima.o
    C++      engines/ultima/shared/early/game_base.o
    C++      engines/ultima/shared/engine/data_archive.o
    C++      engines/ultima/shared/engine/events.o
    C++      engines/ultima/shared/engine/debugger.o
    C++      engines/ultima/shared/engine/input_handler.o
    C++      engines/ultima/shared/gfx/bitmap.o
    C++      engines/ultima/shared/gfx/character_input.o
In file included from ./engines/ultima/shared/core/tree_item.h:26,
                 from ./engines/ultima/shared/core/named_item.h:26,
                 from ./engines/ultima/shared/gfx/visual_item.h:27,
                 from ./engines/ultima/shared/gfx/popup.h:26,
                 from ./engines/ultima/shared/gfx/character_input.h:26,
                 from engines/ultima/shared/gfx/character_input.cpp:23:
engines/ultima/shared/gfx/character_input.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Shared::Gfx::CharacterInput::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Shared::Gfx::CharacterInput::*)(Ultima::Shared::CKeypressMsg&)' to 'FNPTR' {aka 'bool (Ultima::Shared::Gfx::CharacterInput::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/shared/gfx/character_input.cpp:33:9: note: in expansion of macro 'ON_MESSAGE'
   33 |         ON_MESSAGE(KeypressMsg)
      |         ^~~~~~~~~~
    C++      engines/ultima/shared/engine/messages.o
    C++      engines/ultima/shared/engine/input_translator.o
    C++      engines/ultima/shared/gfx/font.o
    C++      engines/ultima/shared/gfx/screen.o
    C++      engines/ultima/shared/gfx/popup.o
In file included from ./engines/ultima/shared/core/tree_item.h:26,
                 from ./engines/ultima/shared/core/named_item.h:26,
                 from ./engines/ultima/shared/gfx/visual_item.h:27,
                 from ./engines/ultima/shared/gfx/popup.h:26,
                 from engines/ultima/shared/gfx/popup.cpp:23:
engines/ultima/shared/gfx/popup.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Shared::Gfx::Popup::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Shared::Gfx::Popup::*)(Ultima::Shared::CShowMsg&)' to 'FNPTR' {aka 'bool (Ultima::Shared::Gfx::Popup::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/shared/gfx/popup.cpp:31:9: note: in expansion of macro 'ON_MESSAGE'
   31 |         ON_MESSAGE(ShowMsg)
      |         ^~~~~~~~~~
    C++      engines/ultima/shared/gfx/sprites.o
engines/ultima/shared/gfx/sprites.cpp: In member function 'void Ultima::Shared::Gfx::Sprites::load(const Common::String&, uint, uint16, uint16)':
engines/ultima/shared/gfx/sprites.cpp:93:54: warning: implicitly-declared 'Ultima::Shared::Gfx::Sprite& Ultima::Shared::Gfx::Sprite::operator=(const Ultima::Shared::Gfx::Sprite&)' is deprecated [-Wdeprecated-copy]
   93 |                 _data[idx] = Sprite(buffer, bpp, w, h);
      |                                                      ^
engines/ultima/shared/gfx/sprites.cpp:33:1: note: because 'Ultima::Shared::Gfx::Sprite' has user-provided 'Ultima::Shared::Gfx::Sprite::Sprite(const Ultima::Shared::Gfx::Sprite&)'
   33 | Sprite::Sprite(const Sprite &src) {
      | ^~~~~~
    C++      engines/ultima/shared/engine/resources.o
    C++      engines/ultima/shared/gfx/dungeon_surface.o
    C++      engines/ultima/shared/gfx/text_cursor.o
    C++      engines/ultima/shared/gfx/text_input.o
In file included from ./engines/ultima/shared/core/tree_item.h:26,
                 from ./engines/ultima/shared/core/named_item.h:26,
                 from ./engines/ultima/shared/gfx/visual_item.h:27,
                 from ./engines/ultima/shared/gfx/popup.h:26,
                 from ./engines/ultima/shared/gfx/text_input.h:26,
                 from engines/ultima/shared/gfx/text_input.cpp:23:
engines/ultima/shared/gfx/text_input.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Shared::Gfx::TextInput::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Shared::Gfx::TextInput::*)(Ultima::Shared::CKeypressMsg&)' to 'FNPTR' {aka 'bool (Ultima::Shared::Gfx::TextInput::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/shared/gfx/text_input.cpp:33:9: note: in expansion of macro 'ON_MESSAGE'
   33 |         ON_MESSAGE(KeypressMsg)
      |         ^~~~~~~~~~
    C++      engines/ultima/shared/gfx/info.o
In file included from ./engines/ultima/shared/core/tree_item.h:26,
                 from ./engines/ultima/shared/core/named_item.h:26,
                 from ./engines/ultima/shared/gfx/visual_item.h:27,
                 from ./engines/ultima/shared/gfx/info.h:26,
                 from engines/ultima/shared/gfx/info.cpp:23:
engines/ultima/shared/gfx/info.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Shared::Info::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Shared::Info::*)(Ultima::Shared::CInfoMsg&)' to 'FNPTR' {aka 'bool (Ultima::Shared::Info::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/shared/gfx/info.cpp:35:9: note: in expansion of macro 'ON_MESSAGE'
   35 |         ON_MESSAGE(InfoMsg)
      |         ^~~~~~~~~~
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Shared::Info::*)(Ultima::Shared::CInfoGetCommandKeypress&)' to 'FNPTR' {aka 'bool (Ultima::Shared::Info::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/shared/gfx/info.cpp:36:9: note: in expansion of macro 'ON_MESSAGE'
   36 |         ON_MESSAGE(InfoGetCommandKeypress)
      |         ^~~~~~~~~~
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Shared::Info::*)(Ultima::Shared::CInfoGetKeypress&)' to 'FNPTR' {aka 'bool (Ultima::Shared::Info::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/shared/gfx/info.cpp:37:9: note: in expansion of macro 'ON_MESSAGE'
   37 |         ON_MESSAGE(InfoGetKeypress)
      |         ^~~~~~~~~~
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Shared::Info::*)(Ultima::Shared::CInfoGetInput&)' to 'FNPTR' {aka 'bool (Ultima::Shared::Info::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/shared/gfx/info.cpp:38:9: note: in expansion of macro 'ON_MESSAGE'
   38 |         ON_MESSAGE(InfoGetInput)
      |         ^~~~~~~~~~
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Shared::Info::*)(Ultima::Shared::CKeypressMsg&)' to 'FNPTR' {aka 'bool (Ultima::Shared::Info::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/shared/gfx/info.cpp:39:9: note: in expansion of macro 'ON_MESSAGE'
   39 |         ON_MESSAGE(KeypressMsg)
      |         ^~~~~~~~~~
    C++      engines/ultima/shared/gfx/visual_container.o
    C++      engines/ultima/shared/gfx/viewport_map.o
    C++      engines/ultima/shared/gfx/visual_item.o
In file included from ./engines/ultima/shared/core/tree_item.h:26,
                 from ./engines/ultima/shared/core/named_item.h:26,
                 from ./engines/ultima/shared/gfx/visual_item.h:27,
                 from engines/ultima/shared/gfx/visual_item.cpp:23:
engines/ultima/shared/gfx/visual_item.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Shared::Gfx::VisualItem::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Shared::Gfx::VisualItem::*)(Ultima::Shared::CShowMsg&)' to 'FNPTR' {aka 'bool (Ultima::Shared::Gfx::VisualItem::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/shared/gfx/visual_item.cpp:32:9: note: in expansion of macro 'ON_MESSAGE'
   32 |         ON_MESSAGE(ShowMsg)
      |         ^~~~~~~~~~
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Shared::Gfx::VisualItem::*)(Ultima::Shared::CHideMsg&)' to 'FNPTR' {aka 'bool (Ultima::Shared::Gfx::VisualItem::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/shared/gfx/visual_item.cpp:33:9: note: in expansion of macro 'ON_MESSAGE'
   33 |         ON_MESSAGE(HideMsg)
      |         ^~~~~~~~~~
    C++      engines/ultima/shared/maps/map_tile.o
    C++      engines/ultima/shared/maps/map.o
    C++      engines/ultima/shared/gfx/visual_surface.o
    C++      engines/ultima/shared/gfx/viewport_dungeon.o
    C++      engines/ultima/shared/std/misc.o
    C++      engines/ultima/shared/std/string.o
    C++      engines/ultima/ultima0/core/resources.o
    C++      engines/ultima/shared/maps/creature.o
    C++      engines/ultima/ultima0/resources.o
    C++      engines/ultima/shared/maps/map_widget.o
    C++      engines/ultima/ultima0/game.o
    C++      engines/ultima/shared/maps/map_base.o
    C++      engines/ultima/ultima1/actions/action.o
    C++      engines/ultima/ultima1/actions/ready.o
In file included from ./engines/ultima/shared/core/tree_item.h:26,
                 from ./engines/ultima/shared/actions/action.h:26,
                 from ./engines/ultima/ultima1/actions/action.h:26,
                 from ./engines/ultima/ultima1/actions/ready.h:26,
                 from engines/ultima/ultima1/actions/ready.cpp:23:
engines/ultima/ultima1/actions/ready.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::Actions::Ready::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::Actions::Ready::*)(Ultima::Shared::CReadyMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::Actions::Ready::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/actions/ready.cpp:33:9: note: in expansion of macro 'ON_MESSAGE'
   33 |         ON_MESSAGE(ReadyMsg)
      |         ^~~~~~~~~~
    C++      engines/ultima/ultima1/actions/quit.o
In file included from ./engines/ultima/shared/core/tree_item.h:26,
                 from ./engines/ultima/shared/actions/action.h:26,
                 from ./engines/ultima/ultima1/actions/action.h:26,
                 from ./engines/ultima/ultima1/actions/quit.h:26,
                 from engines/ultima/ultima1/actions/quit.cpp:23:
engines/ultima/ultima1/actions/quit.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::Actions::Quit::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::Actions::Quit::*)(Ultima::Shared::CQuitMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::Actions::Quit::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/actions/quit.cpp:34:9: note: in expansion of macro 'ON_MESSAGE'
   34 |         ON_MESSAGE(QuitMsg)
      |         ^~~~~~~~~~
    C++      engines/ultima/ultima1/actions/stats.o
In file included from ./engines/ultima/shared/core/tree_item.h:26,
                 from ./engines/ultima/shared/actions/action.h:26,
                 from ./engines/ultima/ultima1/actions/action.h:26,
                 from ./engines/ultima/ultima1/actions/stats.h:26,
                 from engines/ultima/ultima1/actions/stats.cpp:23:
engines/ultima/ultima1/actions/stats.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::Actions::Stats::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::Actions::Stats::*)(Ultima::Shared::CStatsMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::Actions::Stats::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/actions/stats.cpp:33:9: note: in expansion of macro 'ON_MESSAGE'
   33 |         ON_MESSAGE(StatsMsg)
      |         ^~~~~~~~~~
    C++      engines/ultima/ultima1/actions/move.o
In file included from ./engines/ultima/shared/core/tree_item.h:26,
                 from ./engines/ultima/shared/actions/action.h:26,
                 from ./engines/ultima/ultima1/actions/action.h:26,
                 from ./engines/ultima/ultima1/actions/move.h:26,
                 from engines/ultima/ultima1/actions/move.cpp:23:
engines/ultima/ultima1/actions/move.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::Actions::Move::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::Actions::Move::*)(Ultima::Shared::CMoveMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::Actions::Move::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/actions/move.cpp:34:9: note: in expansion of macro 'ON_MESSAGE'
   34 |         ON_MESSAGE(MoveMsg)
      |         ^~~~~~~~~~
    C++      engines/ultima/ultima1/actions/attack.o
In file included from ./engines/ultima/shared/core/tree_item.h:26,
                 from ./engines/ultima/shared/actions/action.h:26,
                 from ./engines/ultima/ultima1/actions/action.h:26,
                 from ./engines/ultima/ultima1/actions/attack.h:26,
                 from engines/ultima/ultima1/actions/attack.cpp:23:
engines/ultima/ultima1/actions/attack.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::Actions::AttackFire::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::Actions::AttackFire::*)(Ultima::Shared::CCharacterInputMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::Actions::AttackFire::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/actions/attack.cpp:34:9: note: in expansion of macro 'ON_MESSAGE'
   34 |         ON_MESSAGE(CharacterInputMsg)
      |         ^~~~~~~~~~
engines/ultima/ultima1/actions/attack.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::Actions::Attack::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::Actions::Attack::*)(Ultima::Shared::CAttackMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::Actions::Attack::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/actions/attack.cpp:56:9: note: in expansion of macro 'ON_MESSAGE'
   56 |         ON_MESSAGE(AttackMsg)
      |         ^~~~~~~~~~
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::Actions::AttackFire::*)(Ultima::Shared::CCharacterInputMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::Actions::Attack::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/actions/attack.cpp:57:9: note: in expansion of macro 'ON_MESSAGE'
   57 |         ON_MESSAGE(CharacterInputMsg)
      |         ^~~~~~~~~~
engines/ultima/ultima1/actions/attack.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::Actions::Fire::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::Actions::Fire::*)(Ultima::Shared::CFireMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::Actions::Fire::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/actions/attack.cpp:98:9: note: in expansion of macro 'ON_MESSAGE'
   98 |         ON_MESSAGE(FireMsg)
      |         ^~~~~~~~~~
    C++      engines/ultima/ultima1/core/debugger.o
    C++      engines/ultima/ultima1/core/quests.o
    C++      engines/ultima/ultima1/core/resources.o
    C++      engines/ultima/ultima1/maps/map_tile.o
    C++      engines/ultima/ultima1/maps/map.o
    C++      engines/ultima/ultima1/maps/map_base.o
    C++      engines/ultima/ultima1/maps/map_overworld.o
    C++      engines/ultima/ultima1/core/party.o
    C++      engines/ultima/ultima1/maps/map_city_castle.o
    C++      engines/ultima/ultima1/spells/create.o
    C++      engines/ultima/ultima1/maps/map_dungeon.o
    C++      engines/ultima/ultima1/spells/blink.o
    C++      engines/ultima/ultima1/spells/destroy.o
    C++      engines/ultima/ultima1/spells/ladder_down.o
    C++      engines/ultima/ultima1/spells/kill_magic_missile.o
In file included from ./engines/ultima/shared/core/tree_item.h:26,
                 from ./engines/ultima/shared/core/named_item.h:26,
                 from ./engines/ultima/shared/core/character.h:29,
                 from ./engines/ultima/shared/core/party.h:29,
                 from ./engines/ultima/ultima1/spells/spell.h:26,
                 from ./engines/ultima/ultima1/spells/kill_magic_missile.h:26,
                 from engines/ultima/ultima1/spells/kill_magic_missile.cpp:23:
engines/ultima/ultima1/spells/kill_magic_missile.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::Spells::KillMagicMIssile::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::Spells::KillMagicMIssile::*)(Ultima::Shared::CCharacterInputMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::Spells::KillMagicMIssile::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/spells/kill_magic_missile.cpp:36:9: note: in expansion of macro 'ON_MESSAGE'
   36 |         ON_MESSAGE(CharacterInputMsg)
      |         ^~~~~~~~~~
./engines/ultima/shared/core/message_target.h:68:72: warning: left shift of negative value [-Wshift-negative-value]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
      |                                                                        ^
engines/ultima/ultima1/spells/kill_magic_missile.cpp:36:9: note: in expansion of macro 'ON_MESSAGE'
   36 |         ON_MESSAGE(CharacterInputMsg)
      |         ^~~~~~~~~~
    C++      engines/ultima/ultima1/spells/ladder_up.o
    C++      engines/ultima/ultima1/spells/steal.o
    C++      engines/ultima/ultima1/spells/open_unlock.o
    C++      engines/ultima/ultima1/spells/spell.o
    C++      engines/ultima/ultima1/spells/prayer.o
    C++      engines/ultima/ultima1/u1dialogs/buy_sell_dialog.o
In file included from ./engines/ultima/shared/core/tree_item.h:26,
                 from ./engines/ultima/shared/core/named_item.h:26,
                 from ./engines/ultima/shared/gfx/visual_item.h:27,
                 from ./engines/ultima/shared/gfx/popup.h:26,
                 from ./engines/ultima/ultima1/u1dialogs/dialog.h:26,
                 from ./engines/ultima/ultima1/u1dialogs/buy_sell_dialog.h:26,
                 from engines/ultima/ultima1/u1dialogs/buy_sell_dialog.cpp:23:
engines/ultima/ultima1/u1dialogs/buy_sell_dialog.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::U1Dialogs::BuySellDialog::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::U1Dialogs::BuySellDialog::*)(Ultima::Shared::CShowMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::U1Dialogs::BuySellDialog::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/u1dialogs/buy_sell_dialog.cpp:35:9: note: in expansion of macro 'ON_MESSAGE'
   35 |         ON_MESSAGE(ShowMsg)
      |         ^~~~~~~~~~
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::U1Dialogs::BuySellDialog::*)(Ultima::Shared::CFrameMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::U1Dialogs::BuySellDialog::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/u1dialogs/buy_sell_dialog.cpp:36:9: note: in expansion of macro 'ON_MESSAGE'
   36 |         ON_MESSAGE(FrameMsg)
      |         ^~~~~~~~~~
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::U1Dialogs::BuySellDialog::*)(Ultima::Shared::CCharacterInputMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::U1Dialogs::BuySellDialog::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/u1dialogs/buy_sell_dialog.cpp:37:9: note: in expansion of macro 'ON_MESSAGE'
   37 |         ON_MESSAGE(CharacterInputMsg)
      |         ^~~~~~~~~~
    C++      engines/ultima/ultima1/u1dialogs/combat.o
In file included from ./engines/ultima/shared/core/tree_item.h:26,
                 from ./engines/ultima/shared/core/named_item.h:26,
                 from ./engines/ultima/shared/gfx/visual_item.h:27,
                 from ./engines/ultima/shared/gfx/popup.h:26,
                 from ./engines/ultima/ultima1/u1dialogs/dialog.h:26,
                 from ./engines/ultima/ultima1/u1dialogs/full_screen_dialog.h:26,
                 from ./engines/ultima/ultima1/u1dialogs/combat.h:26,
                 from engines/ultima/ultima1/u1dialogs/combat.cpp:23:
engines/ultima/ultima1/u1dialogs/combat.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::U1Dialogs::Combat::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::U1Dialogs::Combat::*)(Ultima::Shared::CKeypressMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::U1Dialogs::Combat::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/u1dialogs/combat.cpp:35:9: note: in expansion of macro 'ON_MESSAGE'
   35 |         ON_MESSAGE(KeypressMsg)
      |         ^~~~~~~~~~
    C++      engines/ultima/ultima1/u1dialogs/armoury.o
    C++      engines/ultima/ultima1/u1dialogs/dialog.o
    C++      engines/ultima/ultima1/u1dialogs/full_screen_dialog.o
    C++      engines/ultima/ultima1/u1dialogs/grocery.o
In file included from ./engines/ultima/shared/core/tree_item.h:26,
                 from ./engines/ultima/shared/core/named_item.h:26,
                 from ./engines/ultima/shared/gfx/visual_item.h:27,
                 from ./engines/ultima/shared/gfx/popup.h:26,
                 from ./engines/ultima/ultima1/u1dialogs/dialog.h:26,
                 from ./engines/ultima/ultima1/u1dialogs/buy_sell_dialog.h:26,
                 from ./engines/ultima/ultima1/u1dialogs/grocery.h:26,
                 from engines/ultima/ultima1/u1dialogs/grocery.cpp:23:
engines/ultima/ultima1/u1dialogs/grocery.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::U1Dialogs::Grocery::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::U1Dialogs::Grocery::*)(Ultima::Shared::CTextInputMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::U1Dialogs::Grocery::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/u1dialogs/grocery.cpp:34:9: note: in expansion of macro 'ON_MESSAGE'
   34 |         ON_MESSAGE(TextInputMsg)
      |         ^~~~~~~~~~
    C++      engines/ultima/ultima1/u1dialogs/drop.o
In file included from ./engines/ultima/shared/core/tree_item.h:26,
                 from ./engines/ultima/shared/core/named_item.h:26,
                 from ./engines/ultima/shared/gfx/visual_item.h:27,
                 from ./engines/ultima/shared/gfx/popup.h:26,
                 from ./engines/ultima/ultima1/u1dialogs/dialog.h:26,
                 from ./engines/ultima/ultima1/u1dialogs/full_screen_dialog.h:26,
                 from ./engines/ultima/ultima1/u1dialogs/drop.h:26,
                 from engines/ultima/ultima1/u1dialogs/drop.cpp:23:
engines/ultima/ultima1/u1dialogs/drop.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::U1Dialogs::Drop::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::U1Dialogs::Drop::*)(Ultima::Shared::CShowMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::U1Dialogs::Drop::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/u1dialogs/drop.cpp:34:9: note: in expansion of macro 'ON_MESSAGE'
   34 |         ON_MESSAGE(ShowMsg)
      |         ^~~~~~~~~~
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::U1Dialogs::Drop::*)(Ultima::Shared::CCharacterInputMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::U1Dialogs::Drop::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/u1dialogs/drop.cpp:35:9: note: in expansion of macro 'ON_MESSAGE'
   35 |         ON_MESSAGE(CharacterInputMsg)
      |         ^~~~~~~~~~
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::U1Dialogs::Drop::*)(Ultima::Shared::CTextInputMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::U1Dialogs::Drop::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/u1dialogs/drop.cpp:36:9: note: in expansion of macro 'ON_MESSAGE'
   36 |         ON_MESSAGE(TextInputMsg)
      |         ^~~~~~~~~~
    C++      engines/ultima/ultima1/u1dialogs/king.o
In file included from ./engines/ultima/shared/core/tree_item.h:26,
                 from ./engines/ultima/shared/core/named_item.h:26,
                 from ./engines/ultima/shared/gfx/visual_item.h:27,
                 from ./engines/ultima/shared/gfx/popup.h:26,
                 from ./engines/ultima/ultima1/u1dialogs/dialog.h:26,
                 from ./engines/ultima/ultima1/u1dialogs/king.h:26,
                 from engines/ultima/ultima1/u1dialogs/king.cpp:23:
engines/ultima/ultima1/u1dialogs/king.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::U1Dialogs::King::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::U1Dialogs::King::*)(Ultima::Shared::CShowMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::U1Dialogs::King::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/u1dialogs/king.cpp:34:9: note: in expansion of macro 'ON_MESSAGE'
   34 |         ON_MESSAGE(ShowMsg)
      |         ^~~~~~~~~~
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::U1Dialogs::King::*)(Ultima::Shared::CCharacterInputMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::U1Dialogs::King::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/u1dialogs/king.cpp:35:9: note: in expansion of macro 'ON_MESSAGE'
   35 |         ON_MESSAGE(CharacterInputMsg)
      |         ^~~~~~~~~~
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::U1Dialogs::King::*)(Ultima::Shared::CTextInputMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::U1Dialogs::King::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/u1dialogs/king.cpp:36:9: note: in expansion of macro 'ON_MESSAGE'
   36 |         ON_MESSAGE(TextInputMsg)
      |         ^~~~~~~~~~
    C++      engines/ultima/ultima1/u1dialogs/magic.o
    C++      engines/ultima/ultima1/u1dialogs/ready.o
In file included from ./engines/ultima/shared/core/tree_item.h:26,
                 from ./engines/ultima/shared/core/named_item.h:26,
                 from ./engines/ultima/shared/gfx/visual_item.h:27,
                 from ./engines/ultima/shared/gfx/popup.h:26,
                 from ./engines/ultima/ultima1/u1dialogs/dialog.h:26,
                 from ./engines/ultima/ultima1/u1dialogs/full_screen_dialog.h:26,
                 from ./engines/ultima/ultima1/u1dialogs/ready.h:26,
                 from engines/ultima/ultima1/u1dialogs/ready.cpp:23:
engines/ultima/ultima1/u1dialogs/ready.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::U1Dialogs::Ready::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::U1Dialogs::Ready::*)(Ultima::Shared::CShowMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::U1Dialogs::Ready::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/u1dialogs/ready.cpp:35:9: note: in expansion of macro 'ON_MESSAGE'
   35 |         ON_MESSAGE(ShowMsg)
      |         ^~~~~~~~~~
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::U1Dialogs::Ready::*)(Ultima::Shared::CCharacterInputMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::U1Dialogs::Ready::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/u1dialogs/ready.cpp:36:9: note: in expansion of macro 'ON_MESSAGE'
   36 |         ON_MESSAGE(CharacterInputMsg)
      |         ^~~~~~~~~~
    C++      engines/ultima/ultima1/u1dialogs/tavern.o
In file included from ./engines/ultima/shared/core/tree_item.h:26,
                 from ./engines/ultima/shared/core/named_item.h:26,
                 from ./engines/ultima/shared/gfx/visual_item.h:27,
                 from ./engines/ultima/shared/gfx/popup.h:26,
                 from ./engines/ultima/ultima1/u1dialogs/dialog.h:26,
                 from ./engines/ultima/ultima1/u1dialogs/buy_sell_dialog.h:26,
                 from ./engines/ultima/ultima1/u1dialogs/tavern.h:26,
                 from engines/ultima/ultima1/u1dialogs/tavern.cpp:23:
engines/ultima/ultima1/u1dialogs/tavern.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::U1Dialogs::Tavern::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::U1Dialogs::Tavern::*)(Ultima::Shared::CFrameMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::U1Dialogs::Tavern::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/u1dialogs/tavern.cpp:37:9: note: in expansion of macro 'ON_MESSAGE'
   37 |         ON_MESSAGE(FrameMsg)
      |         ^~~~~~~~~~
    C++      engines/ultima/ultima1/u1dialogs/transports.o
    C++      engines/ultima/ultima1/u1gfx/info.o
    C++      engines/ultima/ultima1/u1dialogs/weaponry.o
    C++      engines/ultima/ultima1/u1gfx/drawing_support.o
    C++      engines/ultima/ultima1/u1dialogs/stats.o
In file included from ./engines/ultima/shared/core/tree_item.h:26,
                 from ./engines/ultima/shared/core/named_item.h:26,
                 from ./engines/ultima/shared/gfx/visual_item.h:27,
                 from ./engines/ultima/shared/gfx/popup.h:26,
                 from ./engines/ultima/ultima1/u1dialogs/dialog.h:26,
                 from ./engines/ultima/ultima1/u1dialogs/full_screen_dialog.h:26,
                 from ./engines/ultima/ultima1/u1dialogs/stats.h:26,
                 from engines/ultima/ultima1/u1dialogs/stats.cpp:23:
engines/ultima/ultima1/u1dialogs/stats.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::U1Dialogs::Stats::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::U1Dialogs::Stats::*)(Ultima::Shared::CShowMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::U1Dialogs::Stats::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/u1dialogs/stats.cpp:37:9: note: in expansion of macro 'ON_MESSAGE'
   37 |         ON_MESSAGE(ShowMsg)
      |         ^~~~~~~~~~
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::U1Dialogs::Stats::*)(Ultima::Shared::CCharacterInputMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::U1Dialogs::Stats::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/u1dialogs/stats.cpp:38:9: note: in expansion of macro 'ON_MESSAGE'
   38 |         ON_MESSAGE(CharacterInputMsg)
      |         ^~~~~~~~~~
    C++      engines/ultima/ultima1/u1gfx/status.o
In file included from ./engines/ultima/shared/core/tree_item.h:26,
                 from ./engines/ultima/shared/core/named_item.h:26,
                 from ./engines/ultima/shared/gfx/visual_item.h:27,
                 from ./engines/ultima/ultima1/u1gfx/status.h:26,
                 from engines/ultima/ultima1/u1gfx/status.cpp:23:
engines/ultima/ultima1/u1gfx/status.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::U1Gfx::Status::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::U1Gfx::Status::*)(Ultima::Shared::CFrameMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::U1Gfx::Status::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/u1gfx/status.cpp:32:9: note: in expansion of macro 'ON_MESSAGE'
   32 |         ON_MESSAGE(FrameMsg)
      |         ^~~~~~~~~~
    C++      engines/ultima/ultima1/u1gfx/sprites.o
In file included from ./engines/ultima/shared/core/tree_item.h:26,
                 from ./engines/ultima/ultima1/u1gfx/sprites.h:27,
                 from engines/ultima/ultima1/u1gfx/sprites.cpp:23:
engines/ultima/ultima1/u1gfx/sprites.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::U1Gfx::Sprites::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::U1Gfx::Sprites::*)(Ultima::Shared::CFrameMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::U1Gfx::Sprites::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/u1gfx/sprites.cpp:32:9: note: in expansion of macro 'ON_MESSAGE'
   32 |         ON_MESSAGE(FrameMsg)
      |         ^~~~~~~~~~
./engines/ultima/shared/core/message_target.h:68:72: warning: left shift of negative value [-Wshift-negative-value]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
      |                                                                        ^
engines/ultima/ultima1/u1gfx/sprites.cpp:32:9: note: in expansion of macro 'ON_MESSAGE'
   32 |         ON_MESSAGE(FrameMsg)
      |         ^~~~~~~~~~
    C++      engines/ultima/ultima1/u1gfx/text_cursor.o
    C++      engines/ultima/ultima1/u1gfx/viewport_dungeon.o
    C++      engines/ultima/ultima1/widgets/attack_effect.o
    C++      engines/ultima/ultima1/u1gfx/viewport_map.o
In file included from ./engines/ultima/shared/core/tree_item.h:26,
                 from ./engines/ultima/shared/core/named_item.h:26,
                 from ./engines/ultima/shared/gfx/visual_item.h:27,
                 from ./engines/ultima/shared/gfx/viewport_map.h:26,
                 from ./engines/ultima/ultima1/u1gfx/viewport_map.h:26,
                 from engines/ultima/ultima1/u1gfx/viewport_map.cpp:23:
engines/ultima/ultima1/u1gfx/viewport_map.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::U1Gfx::ViewportMap::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::U1Gfx::ViewportMap::*)(Ultima::Shared::CFrameMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::U1Gfx::ViewportMap::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/u1gfx/viewport_map.cpp:32:9: note: in expansion of macro 'ON_MESSAGE'
   32 |         ON_MESSAGE(FrameMsg)
      |         ^~~~~~~~~~
    C++      engines/ultima/ultima1/u1gfx/view_char_gen.o
In file included from ./engines/ultima/shared/core/tree_item.h:26,
                 from ./engines/ultima/shared/core/named_item.h:26,
                 from ./engines/ultima/shared/gfx/visual_item.h:27,
                 from ./engines/ultima/shared/gfx/visual_container.h:26,
                 from ./engines/ultima/ultima1/u1gfx/view_char_gen.h:26,
                 from engines/ultima/ultima1/u1gfx/view_char_gen.cpp:23:
engines/ultima/ultima1/u1gfx/view_char_gen.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::U1Gfx::ViewCharacterGeneration::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::U1Gfx::ViewCharacterGeneration::*)(Ultima::Shared::CKeypressMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::U1Gfx::ViewCharacterGeneration::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/u1gfx/view_char_gen.cpp:38:9: note: in expansion of macro 'ON_MESSAGE'
   38 |         ON_MESSAGE(KeypressMsg)
      |         ^~~~~~~~~~
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::U1Gfx::ViewCharacterGeneration::*)(Ultima::Shared::CShowMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::U1Gfx::ViewCharacterGeneration::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/u1gfx/view_char_gen.cpp:39:9: note: in expansion of macro 'ON_MESSAGE'
   39 |         ON_MESSAGE(ShowMsg)
      |         ^~~~~~~~~~
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::U1Gfx::ViewCharacterGeneration::*)(Ultima::Shared::CTextInputMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::U1Gfx::ViewCharacterGeneration::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/u1gfx/view_char_gen.cpp:40:9: note: in expansion of macro 'ON_MESSAGE'
   40 |         ON_MESSAGE(TextInputMsg)
      |         ^~~~~~~~~~
    C++      engines/ultima/ultima1/u1gfx/view_title.o
In file included from ./engines/ultima/shared/core/tree_item.h:26,
                 from ./engines/ultima/shared/core/named_item.h:26,
                 from ./engines/ultima/shared/gfx/visual_item.h:27,
                 from ./engines/ultima/shared/gfx/visual_container.h:26,
                 from ./engines/ultima/ultima1/u1gfx/view_title.h:26,
                 from engines/ultima/ultima1/u1gfx/view_title.cpp:23:
engines/ultima/ultima1/u1gfx/view_title.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::U1Gfx::ViewTitle::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::U1Gfx::ViewTitle::*)(Ultima::Shared::CShowMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::U1Gfx::ViewTitle::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/u1gfx/view_title.cpp:38:9: note: in expansion of macro 'ON_MESSAGE'
   38 |         ON_MESSAGE(ShowMsg)
      |         ^~~~~~~~~~
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::U1Gfx::ViewTitle::*)(Ultima::Shared::CKeypressMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::U1Gfx::ViewTitle::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/u1gfx/view_title.cpp:39:9: note: in expansion of macro 'ON_MESSAGE'
   39 |         ON_MESSAGE(KeypressMsg)
      |         ^~~~~~~~~~
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::U1Gfx::ViewTitle::*)(Ultima::Shared::CFrameMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::U1Gfx::ViewTitle::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/u1gfx/view_title.cpp:40:9: note: in expansion of macro 'ON_MESSAGE'
   40 |         ON_MESSAGE(FrameMsg)
      |         ^~~~~~~~~~
    C++      engines/ultima/ultima1/u6gfx/game_view.o
In file included from ./engines/ultima/shared/core/tree_item.h:26,
                 from ./engines/ultima/shared/core/named_item.h:26,
                 from ./engines/ultima/shared/gfx/visual_item.h:27,
                 from ./engines/ultima/shared/gfx/visual_container.h:26,
                 from ./engines/ultima/ultima1/u6gfx/game_view.h:26,
                 from engines/ultima/ultima1/u6gfx/game_view.cpp:23:
engines/ultima/ultima1/u6gfx/game_view.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::U6Gfx::GameView::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::U6Gfx::GameView::*)(Ultima::Shared::CKeypressMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::U6Gfx::GameView::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/u6gfx/game_view.cpp:42:9: note: in expansion of macro 'ON_MESSAGE'
   42 |         ON_MESSAGE(KeypressMsg)
      |         ^~~~~~~~~~
    C++      engines/ultima/ultima1/widgets/bard.o
    C++      engines/ultima/ultima1/widgets/dungeon_chest.o
    C++      engines/ultima/ultima1/widgets/dungeon_coffin.o
    C++      engines/ultima/ultima1/widgets/dungeon_item.o
    C++      engines/ultima/ultima1/widgets/dungeon_player.o
    C++      engines/ultima/ultima1/widgets/guard.o
    C++      engines/ultima/ultima1/widgets/dungeon_widget.o
    C++      engines/ultima/ultima1/u1gfx/view_game.o
In file included from ./engines/ultima/shared/core/tree_item.h:26,
                 from ./engines/ultima/shared/core/named_item.h:26,
                 from ./engines/ultima/shared/gfx/visual_item.h:27,
                 from ./engines/ultima/shared/gfx/visual_container.h:26,
                 from ./engines/ultima/ultima1/u1gfx/view_game.h:26,
                 from engines/ultima/ultima1/u1gfx/view_game.cpp:23:
engines/ultima/ultima1/u1gfx/view_game.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::Actions::Board::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::Actions::Board::*)(Ultima::Shared::CBoardMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::Actions::Board::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
./engines/ultima/ultima1/actions/map_action.h:40:41: note: in expansion of macro 'ON_MESSAGE'
   40 |         BEGIN_MESSAGE_MAP(NAME, Action) ON_MESSAGE(NAME##Msg) END_MESSAGE_MAP()
      |                                         ^~~~~~~~~~
engines/ultima/ultima1/u1gfx/view_game.cpp:46:1: note: in expansion of macro 'MAP_ACTION'
   46 | MAP_ACTION(Board, 1, board)
      | ^~~~~~~~~~
engines/ultima/ultima1/u1gfx/view_game.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::Actions::Cast::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::Actions::Cast::*)(Ultima::Shared::CCastMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::Actions::Cast::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
./engines/ultima/ultima1/actions/map_action.h:40:41: note: in expansion of macro 'ON_MESSAGE'
   40 |         BEGIN_MESSAGE_MAP(NAME, Action) ON_MESSAGE(NAME##Msg) END_MESSAGE_MAP()
      |                                         ^~~~~~~~~~
engines/ultima/ultima1/u1gfx/view_game.cpp:47:1: note: in expansion of macro 'MAP_ACTION'
   47 | MAP_ACTION(Cast, 2, cast)
      | ^~~~~~~~~~
engines/ultima/ultima1/u1gfx/view_game.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::Actions::Drop::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::Actions::Drop::*)(Ultima::Shared::CDropMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::Actions::Drop::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
./engines/ultima/ultima1/actions/map_action.h:40:41: note: in expansion of macro 'ON_MESSAGE'
   40 |         BEGIN_MESSAGE_MAP(NAME, Action) ON_MESSAGE(NAME##Msg) END_MESSAGE_MAP()
      |                                         ^~~~~~~~~~
engines/ultima/ultima1/u1gfx/view_game.cpp:48:1: note: in expansion of macro 'MAP_ACTION'
   48 | MAP_ACTION(Drop, 3, drop)
      | ^~~~~~~~~~
engines/ultima/ultima1/u1gfx/view_game.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::Actions::Enter::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::Actions::Enter::*)(Ultima::Shared::CEnterMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::Actions::Enter::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
./engines/ultima/ultima1/actions/map_action.h:53:41: note: in expansion of macro 'ON_MESSAGE'
   53 |         BEGIN_MESSAGE_MAP(NAME, Action) ON_MESSAGE(NAME##Msg) END_MESSAGE_MAP()
      |                                         ^~~~~~~~~~
engines/ultima/ultima1/u1gfx/view_game.cpp:49:1: note: in expansion of macro 'MAP_ACTION_END_TURN'
   49 | MAP_ACTION_END_TURN(Enter, 4, enter)
      | ^~~~~~~~~~~~~~~~~~~
engines/ultima/ultima1/u1gfx/view_game.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::Actions::Get::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::Actions::Get::*)(Ultima::Shared::CGetMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::Actions::Get::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
./engines/ultima/ultima1/actions/map_action.h:53:41: note: in expansion of macro 'ON_MESSAGE'
   53 |         BEGIN_MESSAGE_MAP(NAME, Action) ON_MESSAGE(NAME##Msg) END_MESSAGE_MAP()
      |                                         ^~~~~~~~~~
engines/ultima/ultima1/u1gfx/view_game.cpp:50:1: note: in expansion of macro 'MAP_ACTION_END_TURN'
   50 | MAP_ACTION_END_TURN(Get, 6, get)
      | ^~~~~~~~~~~~~~~~~~~
engines/ultima/ultima1/u1gfx/view_game.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::Actions::HyperJump::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::Actions::HyperJump::*)(Ultima::Shared::CHyperJumpMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::Actions::HyperJump::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
./engines/ultima/ultima1/actions/map_action.h:53:41: note: in expansion of macro 'ON_MESSAGE'
   53 |         BEGIN_MESSAGE_MAP(NAME, Action) ON_MESSAGE(NAME##Msg) END_MESSAGE_MAP()
      |                                         ^~~~~~~~~~
engines/ultima/ultima1/u1gfx/view_game.cpp:51:1: note: in expansion of macro 'MAP_ACTION_END_TURN'
   51 | MAP_ACTION_END_TURN(HyperJump, 7, hyperjump)
      | ^~~~~~~~~~~~~~~~~~~
engines/ultima/ultima1/u1gfx/view_game.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::Actions::Inform::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::Actions::Inform::*)(Ultima::Shared::CInformMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::Actions::Inform::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
./engines/ultima/ultima1/actions/map_action.h:53:41: note: in expansion of macro 'ON_MESSAGE'
   53 |         BEGIN_MESSAGE_MAP(NAME, Action) ON_MESSAGE(NAME##Msg) END_MESSAGE_MAP()
      |                                         ^~~~~~~~~~
engines/ultima/ultima1/u1gfx/view_game.cpp:52:1: note: in expansion of macro 'MAP_ACTION_END_TURN'
   52 | MAP_ACTION_END_TURN(Inform, 8, inform)
      | ^~~~~~~~~~~~~~~~~~~
engines/ultima/ultima1/u1gfx/view_game.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::Actions::Climb::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::Actions::Climb::*)(Ultima::Shared::CClimbMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::Actions::Climb::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
./engines/ultima/ultima1/actions/map_action.h:53:41: note: in expansion of macro 'ON_MESSAGE'
   53 |         BEGIN_MESSAGE_MAP(NAME, Action) ON_MESSAGE(NAME##Msg) END_MESSAGE_MAP()
      |                                         ^~~~~~~~~~
engines/ultima/ultima1/u1gfx/view_game.cpp:53:1: note: in expansion of macro 'MAP_ACTION_END_TURN'
   53 | MAP_ACTION_END_TURN(Climb, 10, climb)
      | ^~~~~~~~~~~~~~~~~~~
engines/ultima/ultima1/u1gfx/view_game.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::Actions::Open::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::Actions::Open::*)(Ultima::Shared::COpenMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::Actions::Open::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
./engines/ultima/ultima1/actions/map_action.h:53:41: note: in expansion of macro 'ON_MESSAGE'
   53 |         BEGIN_MESSAGE_MAP(NAME, Action) ON_MESSAGE(NAME##Msg) END_MESSAGE_MAP()
      |                                         ^~~~~~~~~~
engines/ultima/ultima1/u1gfx/view_game.cpp:54:1: note: in expansion of macro 'MAP_ACTION_END_TURN'
   54 | MAP_ACTION_END_TURN(Open, 14, open)
      | ^~~~~~~~~~~~~~~~~~~
engines/ultima/ultima1/u1gfx/view_game.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::Actions::Steal::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::Actions::Steal::*)(Ultima::Shared::CStealMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::Actions::Steal::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
./engines/ultima/ultima1/actions/map_action.h:53:41: note: in expansion of macro 'ON_MESSAGE'
   53 |         BEGIN_MESSAGE_MAP(NAME, Action) ON_MESSAGE(NAME##Msg) END_MESSAGE_MAP()
      |                                         ^~~~~~~~~~
engines/ultima/ultima1/u1gfx/view_game.cpp:55:1: note: in expansion of macro 'MAP_ACTION_END_TURN'
   55 | MAP_ACTION_END_TURN(Steal, 18, steal)
      | ^~~~~~~~~~~~~~~~~~~
engines/ultima/ultima1/u1gfx/view_game.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::Actions::Transact::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::Actions::Transact::*)(Ultima::Shared::CTransactMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::Actions::Transact::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
./engines/ultima/ultima1/actions/map_action.h:40:41: note: in expansion of macro 'ON_MESSAGE'
   40 |         BEGIN_MESSAGE_MAP(NAME, Action) ON_MESSAGE(NAME##Msg) END_MESSAGE_MAP()
      |                                         ^~~~~~~~~~
engines/ultima/ultima1/u1gfx/view_game.cpp:56:1: note: in expansion of macro 'MAP_ACTION'
   56 | MAP_ACTION(Transact, 19, talk)
      | ^~~~~~~~~~
engines/ultima/ultima1/u1gfx/view_game.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::Actions::Unlock::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::Actions::Unlock::*)(Ultima::Shared::CUnlockMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::Actions::Unlock::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
./engines/ultima/ultima1/actions/map_action.h:53:41: note: in expansion of macro 'ON_MESSAGE'
   53 |         BEGIN_MESSAGE_MAP(NAME, Action) ON_MESSAGE(NAME##Msg) END_MESSAGE_MAP()
      |                                         ^~~~~~~~~~
engines/ultima/ultima1/u1gfx/view_game.cpp:57:1: note: in expansion of macro 'MAP_ACTION_END_TURN'
   57 | MAP_ACTION_END_TURN(Unlock, 20, unlock)
      | ^~~~~~~~~~~~~~~~~~~
engines/ultima/ultima1/u1gfx/view_game.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::Actions::ViewChange::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::Actions::ViewChange::*)(Ultima::Shared::CViewChangeMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::Actions::ViewChange::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
./engines/ultima/ultima1/actions/map_action.h:53:41: note: in expansion of macro 'ON_MESSAGE'
   53 |         BEGIN_MESSAGE_MAP(NAME, Action) ON_MESSAGE(NAME##Msg) END_MESSAGE_MAP()
      |                                         ^~~~~~~~~~
engines/ultima/ultima1/u1gfx/view_game.cpp:58:1: note: in expansion of macro 'MAP_ACTION_END_TURN'
   58 | MAP_ACTION_END_TURN(ViewChange, 21, view)
      | ^~~~~~~~~~~~~~~~~~~
engines/ultima/ultima1/u1gfx/view_game.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::Actions::ExitTransport::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::Actions::ExitTransport::*)(Ultima::Shared::CExitTransportMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::Actions::ExitTransport::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
./engines/ultima/ultima1/actions/map_action.h:53:41: note: in expansion of macro 'ON_MESSAGE'
   53 |         BEGIN_MESSAGE_MAP(NAME, Action) ON_MESSAGE(NAME##Msg) END_MESSAGE_MAP()
      |                                         ^~~~~~~~~~
engines/ultima/ultima1/u1gfx/view_game.cpp:59:1: note: in expansion of macro 'MAP_ACTION_END_TURN'
   59 | MAP_ACTION_END_TURN(ExitTransport, 23, disembark)
      | ^~~~~~~~~~~~~~~~~~~
engines/ultima/ultima1/u1gfx/view_game.cpp: In static member function 'static const Ultima::Shared::MSGMAP* Ultima::Ultima1::U1Gfx::ViewGame::getThisMessageMap()':
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::U1Gfx::ViewGame::*)(Ultima::Shared::CShowMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::U1Gfx::ViewGame::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/u1gfx/view_game.cpp:65:9: note: in expansion of macro 'ON_MESSAGE'
   65 |         ON_MESSAGE(ShowMsg)
      |         ^~~~~~~~~~
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::U1Gfx::ViewGame::*)(Ultima::Shared::CEndOfTurnMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::U1Gfx::ViewGame::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/u1gfx/view_game.cpp:66:9: note: in expansion of macro 'ON_MESSAGE'
   66 |         ON_MESSAGE(EndOfTurnMsg)
      |         ^~~~~~~~~~
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::U1Gfx::ViewGame::*)(Ultima::Shared::CFrameMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::U1Gfx::ViewGame::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/u1gfx/view_game.cpp:67:9: note: in expansion of macro 'ON_MESSAGE'
   67 |         ON_MESSAGE(FrameMsg)
      |         ^~~~~~~~~~
./engines/ultima/shared/core/message_target.h:68:45: warning: cast between incompatible pointer to member types from 'bool (Ultima::Ultima1::U1Gfx::ViewGame::*)(Ultima::Shared::CCharacterInputMsg&)' to 'FNPTR' {aka 'bool (Ultima::Ultima1::U1Gfx::ViewGame::*)(Ultima::Shared::CMessage*)'} [-Wcast-function-type]
   68 |         { static_cast<Ultima::Shared::PMSG>((FNPTR)&ThisClass::msgClass), &C##msgClass::type },
engines/ultima/ultima1/u1gfx/view_game.cpp:68:9: note: in expansion of macro 'ON_MESSAGE'
   68 |         ON_MESSAGE(CharacterInputMsg)
      |         ^~~~~~~~~~
    C++      engines/ultima/ultima1/widgets/king.o
    C++      engines/ultima/ultima1/widgets/merchant.o
    C++      engines/ultima/ultima1/widgets/merchant_armour.o
    C++      engines/ultima/ultima1/widgets/dungeon_monster.o
    C++      engines/ultima/ultima1/widgets/merchant_grocer.o
    C++      engines/ultima/ultima1/widgets/merchant_magic.o
    C++      engines/ultima/ultima1/widgets/merchant_tavern.o
    C++      engines/ultima/ultima1/widgets/merchant_transport.o
    C++      engines/ultima/ultima1/widgets/merchant_weapons.o
    C++      engines/ultima/ultima1/widgets/person.o
    C++      engines/ultima/ultima1/widgets/princess.o
    C++      engines/ultima/ultima1/widgets/overworld_monster.o
    C++      engines/ultima/ultima1/widgets/overworld_widget.o
    C++      engines/ultima/ultima1/widgets/urban_widget.o
    C++      engines/ultima/ultima1/widgets/urban_player.o
    C++      engines/ultima/ultima1/widgets/wench.o
    C++      engines/ultima/ultima4/controllers/alpha_action_controller.o
    C++      engines/ultima/ultima1/widgets/transport.o
    C++      engines/ultima/ultima4/controllers/controller.o
    C++      engines/ultima/ultima1/game.o
    C++      engines/ultima/ultima4/controllers/camp_controller.o
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/controllers/combat_controller.h:27,
                 from ./engines/ultima/ultima4/controllers/camp_controller.h:26,
                 from engines/ultima/ultima4/controllers/camp_controller.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/controllers/combat_controller.h:27,
                 from ./engines/ultima/ultima4/controllers/camp_controller.h:26,
                 from engines/ultima/ultima4/controllers/camp_controller.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/controllers/combat_controller.h:27,
                 from ./engines/ultima/ultima4/controllers/camp_controller.h:26,
                 from engines/ultima/ultima4/controllers/camp_controller.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/controllers/combat_controller.h:27,
                 from ./engines/ultima/ultima4/controllers/camp_controller.h:26,
                 from engines/ultima/ultima4/controllers/camp_controller.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/controllers/combat_controller.h:27,
                 from ./engines/ultima/ultima4/controllers/camp_controller.h:26,
                 from engines/ultima/ultima4/controllers/camp_controller.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/controllers/combat_controller.h:27,
                 from ./engines/ultima/ultima4/controllers/camp_controller.h:26,
                 from engines/ultima/ultima4/controllers/camp_controller.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/controllers/menu_controller.o
    C++      engines/ultima/ultima4/controllers/read_dir_controller.o
    C++      engines/ultima/ultima4/controllers/key_handler_controller.o
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/controllers/key_handler_controller.cpp:26:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from engines/ultima/ultima4/controllers/key_handler_controller.cpp:25:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/controllers/key_handler_controller.cpp:26:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from engines/ultima/ultima4/controllers/key_handler_controller.cpp:25:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/controllers/key_handler_controller.cpp:26:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from engines/ultima/ultima4/controllers/key_handler_controller.cpp:25:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/controllers/inn_controller.o
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/controllers/combat_controller.h:27,
                 from ./engines/ultima/ultima4/controllers/inn_controller.h:26,
                 from engines/ultima/ultima4/controllers/inn_controller.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/controllers/combat_controller.h:27,
                 from ./engines/ultima/ultima4/controllers/inn_controller.h:26,
                 from engines/ultima/ultima4/controllers/inn_controller.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/controllers/combat_controller.h:27,
                 from ./engines/ultima/ultima4/controllers/inn_controller.h:26,
                 from engines/ultima/ultima4/controllers/inn_controller.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/controllers/combat_controller.h:27,
                 from ./engines/ultima/ultima4/controllers/inn_controller.h:26,
                 from engines/ultima/ultima4/controllers/inn_controller.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/controllers/combat_controller.h:27,
                 from ./engines/ultima/ultima4/controllers/inn_controller.h:26,
                 from engines/ultima/ultima4/controllers/inn_controller.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/controllers/combat_controller.h:27,
                 from ./engines/ultima/ultima4/controllers/inn_controller.h:26,
                 from engines/ultima/ultima4/controllers/inn_controller.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/controllers/read_choice_controller.o
    C++      engines/ultima/ultima4/controllers/read_int_controller.o
    C++      engines/ultima/ultima4/controllers/wait_controller.o
    C++      engines/ultima/ultima4/controllers/game_controller.o
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/portal.h:26,
                 from ./engines/ultima/ultima4/controllers/game_controller.h:29,
                 from engines/ultima/ultima4/controllers/game_controller.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/portal.h:26,
                 from ./engines/ultima/ultima4/controllers/game_controller.h:29,
                 from engines/ultima/ultima4/controllers/game_controller.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/portal.h:26,
                 from ./engines/ultima/ultima4/controllers/game_controller.h:29,
                 from engines/ultima/ultima4/controllers/game_controller.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/portal.h:26,
                 from ./engines/ultima/ultima4/controllers/game_controller.h:29,
                 from engines/ultima/ultima4/controllers/game_controller.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/portal.h:26,
                 from ./engines/ultima/ultima4/controllers/game_controller.h:29,
                 from engines/ultima/ultima4/controllers/game_controller.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/portal.h:26,
                 from ./engines/ultima/ultima4/controllers/game_controller.h:29,
                 from engines/ultima/ultima4/controllers/game_controller.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from engines/ultima/ultima4/controllers/game_controller.cpp:35:
./engines/ultima/ultima4/map/annotation.h: In member function 'void Ultima::Ultima4::Annotation::setTile(const Ultima::Ultima4::MapTile&)':
./engines/ultima/ultima4/map/annotation.h:96:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/portal.h:26,
                 from ./engines/ultima/ultima4/controllers/game_controller.h:29,
                 from engines/ultima/ultima4/controllers/game_controller.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/controllers/read_player_controller.o
    C++      engines/ultima/ultima4/controllers/reagents_menu_controller.o
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/spell.h:26,
                 from engines/ultima/ultima4/controllers/reagents_menu_controller.cpp:25:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from ./engines/ultima/ultima4/views/menu.h:26,
                 from engines/ultima/ultima4/controllers/reagents_menu_controller.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/spell.h:26,
                 from engines/ultima/ultima4/controllers/reagents_menu_controller.cpp:25:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from ./engines/ultima/ultima4/views/menu.h:26,
                 from engines/ultima/ultima4/controllers/reagents_menu_controller.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/spell.h:26,
                 from engines/ultima/ultima4/controllers/reagents_menu_controller.cpp:25:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from ./engines/ultima/ultima4/views/menu.h:26,
                 from engines/ultima/ultima4/controllers/reagents_menu_controller.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/controllers/read_string_controller.o
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/controllers/read_string_controller.cpp:24:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from ./engines/ultima/ultima4/controllers/read_string_controller.h:27,
                 from engines/ultima/ultima4/controllers/read_string_controller.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/controllers/read_string_controller.cpp:24:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from ./engines/ultima/ultima4/controllers/read_string_controller.h:27,
                 from engines/ultima/ultima4/controllers/read_string_controller.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/controllers/read_string_controller.cpp:24:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from ./engines/ultima/ultima4/controllers/read_string_controller.h:27,
                 from engines/ultima/ultima4/controllers/read_string_controller.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/controllers/ztats_controller.o
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/controllers/ztats_controller.cpp:25:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from engines/ultima/ultima4/controllers/ztats_controller.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/controllers/ztats_controller.cpp:25:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from engines/ultima/ultima4/controllers/ztats_controller.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/controllers/ztats_controller.cpp:25:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from engines/ultima/ultima4/controllers/ztats_controller.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/controllers/combat_controller.o
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/controllers/combat_controller.h:27,
                 from engines/ultima/ultima4/controllers/combat_controller.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/controllers/combat_controller.h:27,
                 from engines/ultima/ultima4/controllers/combat_controller.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/controllers/combat_controller.h:27,
                 from engines/ultima/ultima4/controllers/combat_controller.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/controllers/combat_controller.h:27,
                 from engines/ultima/ultima4/controllers/combat_controller.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/controllers/combat_controller.h:27,
                 from engines/ultima/ultima4/controllers/combat_controller.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/controllers/combat_controller.h:27,
                 from engines/ultima/ultima4/controllers/combat_controller.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from engines/ultima/ultima4/controllers/combat_controller.cpp:27:
./engines/ultima/ultima4/map/annotation.h: In member function 'void Ultima::Ultima4::Annotation::setTile(const Ultima::Ultima4::MapTile&)':
./engines/ultima/ultima4/map/annotation.h:96:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/controllers/combat_controller.h:27,
                 from engines/ultima/ultima4/controllers/combat_controller.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/conversation/dialogueloader.o
    C++      engines/ultima/ultima4/core/lzw/hash.o
    C++      engines/ultima/ultima4/core/lzw/u4decode.o
    C++      engines/ultima/ultima4/conversation/dialogueloader_lb.o
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/conversation/dialogueloader_lb.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/conversation/dialogueloader_lb.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/conversation/dialogueloader_lb.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/conversation/dialogueloader_lb.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/conversation/dialogueloader_lb.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/conversation/dialogueloader_lb.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/conversation/dialogueloader_tlk.o
    C++      engines/ultima/ultima4/conversation/dialogueloader_hw.o
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/conversation/dialogueloader_hw.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/conversation/dialogueloader_hw.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/conversation/dialogueloader_hw.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/conversation/dialogueloader_hw.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/conversation/dialogueloader_hw.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/conversation/dialogueloader_hw.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/core/lzw/lzw.o
    C++      engines/ultima/ultima4/conversation/conversation.o
In file included from ./engines/ultima/ultima4/game/creature.h:26,
                 from ./engines/ultima/ultima4/game/person.h:26,
                 from engines/ultima/ultima4/conversation/conversation.cpp:24:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/game/creature.h:26,
                 from ./engines/ultima/ultima4/game/person.h:26,
                 from engines/ultima/ultima4/conversation/conversation.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/game/creature.h:26,
                 from ./engines/ultima/ultima4/game/person.h:26,
                 from engines/ultima/ultima4/conversation/conversation.cpp:24:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/game/creature.h:26,
                 from ./engines/ultima/ultima4/game/person.h:26,
                 from engines/ultima/ultima4/conversation/conversation.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/game/creature.h:26,
                 from ./engines/ultima/ultima4/game/person.h:26,
                 from engines/ultima/ultima4/conversation/conversation.cpp:24:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/game/creature.h:26,
                 from ./engines/ultima/ultima4/game/person.h:26,
                 from engines/ultima/ultima4/conversation/conversation.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/core/config.o
    C++      engines/ultima/ultima4/core/utils.o
    C++      engines/ultima/ultima4/filesys/rle.o
    C++      engines/ultima/ultima4/filesys/filesystem.o
    C++      engines/ultima/ultima4/events/timed_event_mgr.o
    C++      engines/ultima/ultima4/events/event_handler.o
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/events/event_handler.cpp:28:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from engines/ultima/ultima4/events/event_handler.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/events/event_handler.cpp:28:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from engines/ultima/ultima4/events/event_handler.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/events/event_handler.cpp:28:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from engines/ultima/ultima4/events/event_handler.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/core/debugger_actions.o
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/spell.h:26,
                 from ./engines/ultima/ultima4/core/debugger_actions.h:27,
                 from engines/ultima/ultima4/core/debugger_actions.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/spell.h:26,
                 from ./engines/ultima/ultima4/core/debugger_actions.h:27,
                 from engines/ultima/ultima4/core/debugger_actions.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/spell.h:26,
                 from ./engines/ultima/ultima4/core/debugger_actions.h:27,
                 from engines/ultima/ultima4/core/debugger_actions.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/spell.h:26,
                 from ./engines/ultima/ultima4/core/debugger_actions.h:27,
                 from engines/ultima/ultima4/core/debugger_actions.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/spell.h:26,
                 from ./engines/ultima/ultima4/core/debugger_actions.h:27,
                 from engines/ultima/ultima4/core/debugger_actions.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/spell.h:26,
                 from ./engines/ultima/ultima4/core/debugger_actions.h:27,
                 from engines/ultima/ultima4/core/debugger_actions.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from engines/ultima/ultima4/core/debugger_actions.cpp:36:
./engines/ultima/ultima4/map/annotation.h: In member function 'void Ultima::Ultima4::Annotation::setTile(const Ultima::Ultima4::MapTile&)':
./engines/ultima/ultima4/map/annotation.h:96:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/spell.h:26,
                 from ./engines/ultima/ultima4/core/debugger_actions.h:27,
                 from engines/ultima/ultima4/core/debugger_actions.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/controllers/intro_controller.o
In file included from ./engines/ultima/ultima4/game/creature.h:26,
                 from ./engines/ultima/ultima4/game/player.h:26,
                 from engines/ultima/ultima4/controllers/intro_controller.cpp:27:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from ./engines/ultima/ultima4/views/menu.h:26,
                 from ./engines/ultima/ultima4/controllers/intro_controller.h:29,
                 from engines/ultima/ultima4/controllers/intro_controller.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/game/creature.h:26,
                 from ./engines/ultima/ultima4/game/player.h:26,
                 from engines/ultima/ultima4/controllers/intro_controller.cpp:27:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from ./engines/ultima/ultima4/views/menu.h:26,
                 from ./engines/ultima/ultima4/controllers/intro_controller.h:29,
                 from engines/ultima/ultima4/controllers/intro_controller.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/game/creature.h:26,
                 from ./engines/ultima/ultima4/game/player.h:26,
                 from engines/ultima/ultima4/controllers/intro_controller.cpp:27:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from ./engines/ultima/ultima4/views/menu.h:26,
                 from ./engines/ultima/ultima4/controllers/intro_controller.h:29,
                 from engines/ultima/ultima4/controllers/intro_controller.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
engines/ultima/ultima4/controllers/intro_controller.cpp: In member function 'bool Ultima::Ultima4::IntroBinData::load()':
engines/ultima/ultima4/controllers/intro_controller.cpp:139:79: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
  139 |                 _introMap[i] = g_tileMaps->get("base")->translate(f.readByte());
      |                                                                               ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from ./engines/ultima/ultima4/views/menu.h:26,
                 from ./engines/ultima/ultima4/controllers/intro_controller.h:29,
                 from engines/ultima/ultima4/controllers/intro_controller.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
engines/ultima/ultima4/controllers/intro_controller.cpp: In member function 'void Ultima::Ultima4::IntroController::drawMap()':
engines/ultima/ultima4/controllers/intro_controller.cpp:495:135: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
  495 |                                         _objectStateTable[dataNibble].tile = MapTile(_binData->_baseTileTable[dataNibble]->getId() + 1);
      |                                                                                                                                       ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from ./engines/ultima/ultima4/views/menu.h:26,
                 from ./engines/ultima/ultima4/controllers/intro_controller.h:29,
                 from engines/ultima/ultima4/controllers/intro_controller.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
engines/ultima/ultima4/controllers/intro_controller.cpp:498:131: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
  498 |                                         _objectStateTable[dataNibble].tile = MapTile(_binData->_baseTileTable[dataNibble]->getId());
      |                                                                                                                                   ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from ./engines/ultima/ultima4/views/menu.h:26,
                 from ./engines/ultima/ultima4/controllers/intro_controller.h:29,
                 from engines/ultima/ultima4/controllers/intro_controller.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
engines/ultima/ultima4/controllers/intro_controller.cpp:511:70: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
  511 |                                 _objectStateTable[dataNibble].tile = 0;
      |                                                                      ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from ./engines/ultima/ultima4/views/menu.h:26,
                 from ./engines/ultima/ultima4/controllers/intro_controller.h:29,
                 from engines/ultima/ultima4/controllers/intro_controller.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/game/creature.h:26,
                 from ./engines/ultima/ultima4/game/player.h:26,
                 from engines/ultima/ultima4/controllers/intro_controller.cpp:27:
./engines/ultima/ultima4/game/object.h: In member function 'Ultima::Ultima4::Object& Ultima::Ultima4::Object::operator=(const Ultima::Ultima4::Object&)':
./engines/ultima/ultima4/game/object.h:43:7: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   43 | class Object {
      |       ^~~~~~
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from ./engines/ultima/ultima4/views/menu.h:26,
                 from ./engines/ultima/ultima4/controllers/intro_controller.h:29,
                 from engines/ultima/ultima4/controllers/intro_controller.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/game/creature.h:26,
                 from ./engines/ultima/ultima4/game/player.h:26,
                 from engines/ultima/ultima4/controllers/intro_controller.cpp:27:
./engines/ultima/ultima4/game/object.h:43:7: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   43 | class Object {
      |       ^~~~~~
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from ./engines/ultima/ultima4/views/menu.h:26,
                 from ./engines/ultima/ultima4/controllers/intro_controller.h:29,
                 from engines/ultima/ultima4/controllers/intro_controller.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/game/player.h:26,
                 from engines/ultima/ultima4/controllers/intro_controller.cpp:27:
./engines/ultima/ultima4/game/creature.h: In member function 'Ultima::Ultima4::Creature& Ultima::Ultima4::Creature::operator=(const Ultima::Ultima4::Creature&)':
./engines/ultima/ultima4/game/creature.h:160:7: note: synthesized method 'Ultima::Ultima4::Object& Ultima::Ultima4::Object::operator=(const Ultima::Ultima4::Object&)' first required here
  160 | class Creature : public Object {
      |       ^~~~~~~~
In file included from engines/ultima/ultima4/controllers/intro_controller.cpp:27:
./engines/ultima/ultima4/game/player.h: In member function 'Ultima::Ultima4::PartyMember& Ultima::Ultima4::PartyMember::operator=(const Ultima::Ultima4::PartyMember&)':
./engines/ultima/ultima4/game/player.h:104:7: note: synthesized method 'Ultima::Ultima4::Creature& Ultima::Ultima4::Creature::operator=(const Ultima::Ultima4::Creature&)' first required here
  104 | class PartyMember : public Creature, public Script::Provider {
      |       ^~~~~~~~~~~
engines/ultima/ultima4/controllers/intro_controller.cpp: In member function 'void Ultima::Ultima4::IntroController::initPlayers(Ultima::Ultima4::SaveGame*)':
engines/ultima/ultima4/controllers/intro_controller.cpp:1384:69: note: synthesized method 'Ultima::Ultima4::PartyMember& Ultima::Ultima4::PartyMember::operator=(const Ultima::Ultima4::PartyMember&)' first required here
 1384 |                 player = PartyMember(nullptr, &saveGame->_players[i]);
      |                                                                     ^
In file included from ./common/array.h:27,
                 from ./backends/keymapper/hardware-input.h:28,
                 from ./backends/keymapper/keymap.h:28,
                 from ./backends/keymapper/keymapper.h:28,
                 from ./engines/ultima/ultima4/meta_engine.h:26,
                 from ./engines/ultima/ultima4/controllers/controller.h:26,
                 from ./engines/ultima/ultima4/controllers/intro_controller.h:26,
                 from engines/ultima/ultima4/controllers/intro_controller.cpp:23:
./common/algorithm.h: In instantiation of 'Out Common::copy_backward(In, In, Out) [with In = Ultima::Ultima4::MapTile*; Out = Ultima::Ultima4::MapTile*]':
./common/array.h:366:18:   required from 'T* Common::Array<T>::insert_aux(Common::Array<T>::iterator, Common::Array<T>::const_iterator, Common::Array<T>::const_iterator) [with T = Ultima::Ultima4::MapTile; Common::Array<T>::iterator = Ultima::Ultima4::MapTile*; Common::Array<T>::const_iterator = const Ultima::Ultima4::MapTile*]'
./common/array.h:108:4:   required from 'void Common::Array<T>::push_back(const T&) [with T = Ultima::Ultima4::MapTile]'
engines/ultima/ultima4/controllers/intro_controller.cpp:569:19:   required from here
./common/algorithm.h:54:24: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   54 |                 *--dst = *--last;
      |                 ~~~~~~~^~~~~~~~~
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from ./engines/ultima/ultima4/views/menu.h:26,
                 from ./engines/ultima/ultima4/controllers/intro_controller.h:29,
                 from engines/ultima/ultima4/controllers/intro_controller.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./common/array.h:27,
                 from ./backends/keymapper/hardware-input.h:28,
                 from ./backends/keymapper/keymap.h:28,
                 from ./backends/keymapper/keymapper.h:28,
                 from ./engines/ultima/ultima4/meta_engine.h:26,
                 from ./engines/ultima/ultima4/controllers/controller.h:26,
                 from ./engines/ultima/ultima4/controllers/intro_controller.h:26,
                 from engines/ultima/ultima4/controllers/intro_controller.cpp:23:
./common/algorithm.h: In instantiation of 'Out Common::copy(In, In, Out) [with In = const Ultima::Ultima4::MapTile*; Out = Ultima::Ultima4::MapTile*]':
./common/array.h:369:9:   required from 'T* Common::Array<T>::insert_aux(Common::Array<T>::iterator, Common::Array<T>::const_iterator, Common::Array<T>::const_iterator) [with T = Ultima::Ultima4::MapTile; Common::Array<T>::iterator = Ultima::Ultima4::MapTile*; Common::Array<T>::const_iterator = const Ultima::Ultima4::MapTile*]'
./common/array.h:108:4:   required from 'void Common::Array<T>::push_back(const T&) [with T = Ultima::Ultima4::MapTile]'
engines/ultima/ultima4/controllers/intro_controller.cpp:569:19:   required from here
./common/algorithm.h:40:24: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   40 |                 *dst++ = *first++;
      |                 ~~~~~~~^~~~~~~~~~
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from ./engines/ultima/ultima4/views/menu.h:26,
                 from ./engines/ultima/ultima4/controllers/intro_controller.h:29,
                 from engines/ultima/ultima4/controllers/intro_controller.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/game/aura.o
    C++      engines/ultima/ultima4/game/armor.o
    C++      engines/ultima/ultima4/filesys/u4file.o
    C++      engines/ultima/ultima4/core/settings.o
    C++      engines/ultima/ultima4/game/context.o
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/game/context.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/game/context.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/game/context.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/game/context.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/game/context.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/game/context.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/game/moongate.o
    C++      engines/ultima/ultima4/game/death.o
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/game/death.cpp:24:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/game/death.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/game/death.cpp:24:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/game/death.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/game/death.cpp:24:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/game/death.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from engines/ultima/ultima4/game/death.cpp:34:
./engines/ultima/ultima4/map/annotation.h: In member function 'void Ultima::Ultima4::Annotation::setTile(const Ultima::Ultima4::MapTile&)':
./engines/ultima/ultima4/map/annotation.h:96:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/game/death.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/game/codex.o
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/game/codex.cpp:24:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/game/codex.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/game/codex.cpp:24:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/game/codex.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/game/codex.cpp:24:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/game/codex.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/filesys/savegame.o
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/filesys/savegame.cpp:25:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/filesys/savegame.cpp:25:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/filesys/savegame.cpp:25:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/filesys/savegame.cpp:25:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/filesys/savegame.cpp:25:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/filesys/savegame.cpp:25:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/game/names.o
    C++      engines/ultima/ultima4/game/item.o
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/portal.h:26,
                 from ./engines/ultima/ultima4/controllers/game_controller.h:29,
                 from ./engines/ultima/ultima4/game/game.h:27,
                 from engines/ultima/ultima4/game/item.cpp:25:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from ./engines/ultima/ultima4/game/game.h:26,
                 from engines/ultima/ultima4/game/item.cpp:25:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/portal.h:26,
                 from ./engines/ultima/ultima4/controllers/game_controller.h:29,
                 from ./engines/ultima/ultima4/game/game.h:27,
                 from engines/ultima/ultima4/game/item.cpp:25:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from ./engines/ultima/ultima4/game/game.h:26,
                 from engines/ultima/ultima4/game/item.cpp:25:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/portal.h:26,
                 from ./engines/ultima/ultima4/controllers/game_controller.h:29,
                 from ./engines/ultima/ultima4/game/game.h:27,
                 from engines/ultima/ultima4/game/item.cpp:25:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from ./engines/ultima/ultima4/game/game.h:26,
                 from engines/ultima/ultima4/game/item.cpp:25:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from engines/ultima/ultima4/game/item.cpp:36:
./engines/ultima/ultima4/map/annotation.h: In member function 'void Ultima::Ultima4::Annotation::setTile(const Ultima::Ultima4::MapTile&)':
./engines/ultima/ultima4/map/annotation.h:96:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from ./engines/ultima/ultima4/game/game.h:26,
                 from engines/ultima/ultima4/game/item.cpp:25:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/core/debugger.o
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/spell.h:26,
                 from ./engines/ultima/ultima4/core/debugger_actions.h:27,
                 from ./engines/ultima/ultima4/core/debugger.h:28,
                 from engines/ultima/ultima4/core/debugger.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/spell.h:26,
                 from ./engines/ultima/ultima4/core/debugger_actions.h:27,
                 from ./engines/ultima/ultima4/core/debugger.h:28,
                 from engines/ultima/ultima4/core/debugger.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/spell.h:26,
                 from ./engines/ultima/ultima4/core/debugger_actions.h:27,
                 from ./engines/ultima/ultima4/core/debugger.h:28,
                 from engines/ultima/ultima4/core/debugger.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/spell.h:26,
                 from ./engines/ultima/ultima4/core/debugger_actions.h:27,
                 from ./engines/ultima/ultima4/core/debugger.h:28,
                 from engines/ultima/ultima4/core/debugger.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/spell.h:26,
                 from ./engines/ultima/ultima4/core/debugger_actions.h:27,
                 from ./engines/ultima/ultima4/core/debugger.h:28,
                 from engines/ultima/ultima4/core/debugger.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/spell.h:26,
                 from ./engines/ultima/ultima4/core/debugger_actions.h:27,
                 from ./engines/ultima/ultima4/core/debugger.h:28,
                 from engines/ultima/ultima4/core/debugger.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from engines/ultima/ultima4/core/debugger.cpp:39:
./engines/ultima/ultima4/map/annotation.h: In member function 'void Ultima::Ultima4::Annotation::setTile(const Ultima::Ultima4::MapTile&)':
./engines/ultima/ultima4/map/annotation.h:96:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/spell.h:26,
                 from ./engines/ultima/ultima4/core/debugger_actions.h:27,
                 from ./engines/ultima/ultima4/core/debugger.h:28,
                 from engines/ultima/ultima4/core/debugger.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
engines/ultima/ultima4/core/debugger.cpp: In member function 'bool Ultima::Ultima4::Debugger::cmdTransport(int, const char**)':
engines/ultima/ultima4/core/debugger.cpp:1669:82: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
 1669 |         _horse = g_context->_location->_map->_tileSet->getByName("horse")->getId();
      |                                                                                  ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/spell.h:26,
                 from ./engines/ultima/ultima4/core/debugger_actions.h:27,
                 from ./engines/ultima/ultima4/core/debugger.h:28,
                 from engines/ultima/ultima4/core/debugger.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
engines/ultima/ultima4/core/debugger.cpp:1670:80: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
 1670 |         _ship = g_context->_location->_map->_tileSet->getByName("ship")->getId();
      |                                                                                ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/spell.h:26,
                 from ./engines/ultima/ultima4/core/debugger_actions.h:27,
                 from ./engines/ultima/ultima4/core/debugger.h:28,
                 from engines/ultima/ultima4/core/debugger.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
engines/ultima/ultima4/core/debugger.cpp:1671:86: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
 1671 |         _balloon = g_context->_location->_map->_tileSet->getByName("balloon")->getId();
      |                                                                                      ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/spell.h:26,
                 from ./engines/ultima/ultima4/core/debugger_actions.h:27,
                 from ./engines/ultima/ultima4/core/debugger.h:28,
                 from engines/ultima/ultima4/core/debugger.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/game/object.o
In file included from engines/ultima/ultima4/game/object.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from engines/ultima/ultima4/game/object.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from engines/ultima/ultima4/game/object.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from engines/ultima/ultima4/game/object.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from engines/ultima/ultima4/game/object.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from engines/ultima/ultima4/game/object.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/tile.h:29,
                 from ./engines/ultima/ultima4/map/map_tile.h:27,
                 from ./engines/ultima/ultima4/game/object.h:26,
                 from engines/ultima/ultima4/game/object.cpp:23:
./engines/ultima/shared/std/containers.h: In instantiation of 'VAL Ultima::Std::deque<VAL>::operator[](uint) [with VAL = Ultima::Ultima4::Map*; uint = unsigned int]':
engines/ultima/ultima4/game/object.cpp:51:11:   required from here
./engines/ultima/shared/std/containers.h:266:60: warning: comparison of unsigned expression in '>= 0' is always true [-Wtype-limits]
  266 |                                 it != this->end() && index >= 0; ++it, --index) {
      |                                                      ~~~~~~^~~~
    C++      engines/ultima/ultima4/game/game.o
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/controllers/combat_controller.h:27,
                 from ./engines/ultima/ultima4/controllers/camp_controller.h:26,
                 from engines/ultima/ultima4/game/game.cpp:24:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/controllers/combat_controller.h:27,
                 from ./engines/ultima/ultima4/controllers/camp_controller.h:26,
                 from engines/ultima/ultima4/game/game.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/controllers/combat_controller.h:27,
                 from ./engines/ultima/ultima4/controllers/camp_controller.h:26,
                 from engines/ultima/ultima4/game/game.cpp:24:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/controllers/combat_controller.h:27,
                 from ./engines/ultima/ultima4/controllers/camp_controller.h:26,
                 from engines/ultima/ultima4/game/game.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/controllers/combat_controller.h:27,
                 from ./engines/ultima/ultima4/controllers/camp_controller.h:26,
                 from engines/ultima/ultima4/game/game.cpp:24:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/controllers/combat_controller.h:27,
                 from ./engines/ultima/ultima4/controllers/camp_controller.h:26,
                 from engines/ultima/ultima4/game/game.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from engines/ultima/ultima4/game/game.cpp:58:
./engines/ultima/ultima4/map/annotation.h: In member function 'void Ultima::Ultima4::Annotation::setTile(const Ultima::Ultima4::MapTile&)':
./engines/ultima/ultima4/map/annotation.h:96:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/controllers/combat_controller.h:27,
                 from ./engines/ultima/ultima4/controllers/camp_controller.h:26,
                 from engines/ultima/ultima4/game/game.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
engines/ultima/ultima4/game/game.cpp: In function 'void Ultima::Ultima4::showMixturesSuper(int)':
engines/ultima/ultima4/game/game.cpp:722:35: warning: '%3d' directive output may be truncated writing between 3 and 6 bytes into a region of size 4 [-Wformat-truncation=]
  722 |                 snprintf(buf, 4, "%3d", g_ultima->_saveGame->_mixtures[i + 13 * page]);
      |                                   ^~~
engines/ultima/ultima4/game/game.cpp:722:34: note: directive argument in the range [-32768, 32767]
  722 |                 snprintf(buf, 4, "%3d", g_ultima->_saveGame->_mixtures[i + 13 * page]);
      |                                  ^~~~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./common/array.h:26,
                 from ./common/achievements.h:26,
                 from ./engines/metaengine.h:26,
                 from ./engines/advancedDetector.h:26,
                 from ./engines/ultima/detection.h:26,
                 from ./engines/ultima/shared/engine/ultima.h:26,
                 from ./engines/ultima/ultima4/ultima4.h:26,
                 from engines/ultima/ultima4/game/game.cpp:23:
/usr/include/bits/stdio2.h:71:35: note: '__builtin___snprintf_chk' output between 4 and 7 bytes into a destination of size 4
   71 |   return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   72 |                                    __glibc_objsize (__s), __fmt,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   73 |                                    __va_arg_pack ());
      |                                    ~~~~~~~~~~~~~~~~~
    C++      engines/ultima/ultima4/game/creature.o
In file included from ./engines/ultima/ultima4/game/creature.h:26,
                 from engines/ultima/ultima4/game/creature.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/game/creature.h:26,
                 from engines/ultima/ultima4/game/creature.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/game/creature.h:26,
                 from engines/ultima/ultima4/game/creature.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/game/creature.h:26,
                 from engines/ultima/ultima4/game/creature.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/game/creature.h:26,
                 from engines/ultima/ultima4/game/creature.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/game/creature.h:26,
                 from engines/ultima/ultima4/game/creature.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/game/creature.h:26,
                 from engines/ultima/ultima4/game/creature.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'Ultima::Ultima4::Object& Ultima::Ultima4::Object::operator=(const Ultima::Ultima4::Object&)':
./engines/ultima/ultima4/game/object.h:43:7: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   43 | class Object {
      |       ^~~~~~
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/game/creature.h:26,
                 from engines/ultima/ultima4/game/creature.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/game/creature.h:26,
                 from engines/ultima/ultima4/game/creature.cpp:23:
./engines/ultima/ultima4/game/object.h:43:7: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   43 | class Object {
      |       ^~~~~~
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/game/creature.h:26,
                 from engines/ultima/ultima4/game/creature.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from engines/ultima/ultima4/game/creature.cpp:23:
./engines/ultima/ultima4/game/creature.h: In member function 'Ultima::Ultima4::Creature& Ultima::Ultima4::Creature::operator=(const Ultima::Ultima4::Creature&)':
./engines/ultima/ultima4/game/creature.h:160:7: note: synthesized method 'Ultima::Ultima4::Object& Ultima::Ultima4::Object::operator=(const Ultima::Ultima4::Object&)' first required here
  160 | class Creature : public Object {
      |       ^~~~~~~~
engines/ultima/ultima4/game/creature.cpp: In constructor 'Ultima::Ultima4::Creature::Creature(Ultima::Ultima4::MapTile)':
engines/ultima/ultima4/game/creature.cpp:58:26: note: synthesized method 'Ultima::Ultima4::Creature& Ultima::Ultima4::Creature::operator=(const Ultima::Ultima4::Creature&)' first required here
   58 |                 *this = *m;
      |                          ^
    C++      engines/ultima/ultima4/game/portal.o
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/portal.h:26,
                 from engines/ultima/ultima4/game/portal.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/portal.h:26,
                 from engines/ultima/ultima4/game/portal.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/portal.h:26,
                 from engines/ultima/ultima4/game/portal.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/portal.h:26,
                 from engines/ultima/ultima4/game/portal.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/portal.h:26,
                 from engines/ultima/ultima4/game/portal.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/portal.h:26,
                 from engines/ultima/ultima4/game/portal.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from engines/ultima/ultima4/game/portal.cpp:24:
./engines/ultima/ultima4/map/annotation.h: In member function 'void Ultima::Ultima4::Annotation::setTile(const Ultima::Ultima4::MapTile&)':
./engines/ultima/ultima4/map/annotation.h:96:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/portal.h:26,
                 from engines/ultima/ultima4/game/portal.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
engines/ultima/ultima4/game/portal.cpp: In function 'int Ultima::Ultima4::usePortalAt(Ultima::Ultima4::Location*, Ultima::Ultima4::MapCoords, Ultima::Ultima4::PortalTriggerAction)':
engines/ultima/ultima4/game/portal.cpp:99:61: warning: '%d' directive writing between 1 and 11 bytes into a region of size 10 [-Wformat-overflow=]
   99 |                         sprintf(msg, "Descend down to level %d\n", portal->_start.z + 1);
      |                                                             ^~
engines/ultima/ultima4/game/portal.cpp:99:38: note: directive argument in the range [-2147483647, 2147483647]
   99 |                         sprintf(msg, "Descend down to level %d\n", portal->_start.z + 1);
      |                                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./common/algorithm.h:26,
                 from ./engines/ultima/shared/std/containers.h:26,
                 from ./engines/ultima/ultima4/sound/music.h:26,
                 from ./engines/ultima/ultima4/map/map.h:28,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/portal.h:26,
                 from engines/ultima/ultima4/game/portal.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 25 and 35 bytes into a destination of size 32
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
    C++      engines/ultima/ultima4/game/weapon.o
    C++      engines/ultima/ultima4/game/person.o
In file included from ./engines/ultima/ultima4/game/creature.h:26,
                 from ./engines/ultima/ultima4/game/person.h:26,
                 from engines/ultima/ultima4/game/person.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/game/creature.h:26,
                 from ./engines/ultima/ultima4/game/person.h:26,
                 from engines/ultima/ultima4/game/person.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/game/creature.h:26,
                 from ./engines/ultima/ultima4/game/person.h:26,
                 from engines/ultima/ultima4/game/person.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/game/creature.h:26,
                 from ./engines/ultima/ultima4/game/person.h:26,
                 from engines/ultima/ultima4/game/person.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/game/creature.h:26,
                 from ./engines/ultima/ultima4/game/person.h:26,
                 from engines/ultima/ultima4/game/person.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/game/creature.h:26,
                 from ./engines/ultima/ultima4/game/person.h:26,
                 from engines/ultima/ultima4/game/person.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/game/creature.h:26,
                 from ./engines/ultima/ultima4/game/person.h:26,
                 from engines/ultima/ultima4/game/person.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'Ultima::Ultima4::Object& Ultima::Ultima4::Object::operator=(const Ultima::Ultima4::Object&)':
./engines/ultima/ultima4/game/object.h:43:7: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   43 | class Object {
      |       ^~~~~~
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/game/creature.h:26,
                 from ./engines/ultima/ultima4/game/person.h:26,
                 from engines/ultima/ultima4/game/person.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/game/creature.h:26,
                 from ./engines/ultima/ultima4/game/person.h:26,
                 from engines/ultima/ultima4/game/person.cpp:23:
./engines/ultima/ultima4/game/object.h:43:7: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   43 | class Object {
      |       ^~~~~~
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/game/creature.h:26,
                 from ./engines/ultima/ultima4/game/person.h:26,
                 from engines/ultima/ultima4/game/person.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/game/person.h:26,
                 from engines/ultima/ultima4/game/person.cpp:23:
./engines/ultima/ultima4/game/creature.h: In member function 'Ultima::Ultima4::Creature& Ultima::Ultima4::Creature::operator=(const Ultima::Ultima4::Creature&)':
./engines/ultima/ultima4/game/creature.h:160:7: note: synthesized method 'Ultima::Ultima4::Object& Ultima::Ultima4::Object::operator=(const Ultima::Ultima4::Object&)' first required here
  160 | class Creature : public Object {
      |       ^~~~~~~~
In file included from engines/ultima/ultima4/game/person.cpp:23:
./engines/ultima/ultima4/game/person.h: In member function 'Ultima::Ultima4::Person& Ultima::Ultima4::Person::operator=(const Ultima::Ultima4::Person&)':
./engines/ultima/ultima4/game/person.h:57:7: note: synthesized method 'Ultima::Ultima4::Creature& Ultima::Ultima4::Creature::operator=(const Ultima::Ultima4::Creature&)' first required here
   57 | class Person : public Creature {
      |       ^~~~~~
engines/ultima/ultima4/game/person.cpp: In constructor 'Ultima::Ultima4::Person::Person(const Ultima::Ultima4::Person*)':
engines/ultima/ultima4/game/person.cpp:114:18: note: synthesized method 'Ultima::Ultima4::Person& Ultima::Ultima4::Person::operator=(const Ultima::Ultima4::Person&)' first required here
  114 |         *this = *p;
      |                  ^
    C++      engines/ultima/ultima4/gfx/imageloader_fmtowns.o
    C++      engines/ultima/ultima4/gfx/imageloader_png.o
    C++      engines/ultima/ultima4/gfx/imageloader.o
    C++      engines/ultima/ultima4/game/spell.o
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/portal.h:26,
                 from ./engines/ultima/ultima4/controllers/game_controller.h:29,
                 from ./engines/ultima/ultima4/game/game.h:27,
                 from engines/ultima/ultima4/game/spell.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from ./engines/ultima/ultima4/game/game.h:26,
                 from engines/ultima/ultima4/game/spell.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/portal.h:26,
                 from ./engines/ultima/ultima4/controllers/game_controller.h:29,
                 from ./engines/ultima/ultima4/game/game.h:27,
                 from engines/ultima/ultima4/game/spell.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from ./engines/ultima/ultima4/game/game.h:26,
                 from engines/ultima/ultima4/game/spell.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/portal.h:26,
                 from ./engines/ultima/ultima4/controllers/game_controller.h:29,
                 from ./engines/ultima/ultima4/game/game.h:27,
                 from engines/ultima/ultima4/game/spell.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from ./engines/ultima/ultima4/game/game.h:26,
                 from engines/ultima/ultima4/game/spell.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from engines/ultima/ultima4/game/spell.cpp:35:
./engines/ultima/ultima4/map/annotation.h: In member function 'void Ultima::Ultima4::Annotation::setTile(const Ultima::Ultima4::MapTile&)':
./engines/ultima/ultima4/map/annotation.h:96:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from ./engines/ultima/ultima4/game/game.h:26,
                 from engines/ultima/ultima4/game/spell.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
engines/ultima/ultima4/game/spell.cpp: In member function 'int Ultima::Ultima4::Spells::spellEField(int)':
engines/ultima/ultima4/game/spell.cpp:531:98: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
  531 |                 fieldTile = g_context->_location->_map->_tileSet->getByName("fire_field")->getId();
      |                                                                                                  ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from ./engines/ultima/ultima4/game/game.h:26,
                 from engines/ultima/ultima4/game/spell.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
engines/ultima/ultima4/game/spell.cpp:534:100: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
  534 |                 fieldTile = g_context->_location->_map->_tileSet->getByName("energy_field")->getId();
      |                                                                                                    ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from ./engines/ultima/ultima4/game/game.h:26,
                 from engines/ultima/ultima4/game/spell.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
engines/ultima/ultima4/game/spell.cpp:537:100: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
  537 |                 fieldTile = g_context->_location->_map->_tileSet->getByName("poison_field")->getId();
      |                                                                                                    ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from ./engines/ultima/ultima4/game/game.h:26,
                 from engines/ultima/ultima4/game/spell.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
engines/ultima/ultima4/game/spell.cpp:540:99: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
  540 |                 fieldTile = g_context->_location->_map->_tileSet->getByName("sleep_field")->getId();
      |                                                                                                   ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from ./engines/ultima/ultima4/game/game.h:26,
                 from engines/ultima/ultima4/game/spell.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/gfx/image.o
    C++      engines/ultima/ultima4/gfx/imageloader_u4.o
    C++      engines/ultima/ultima4/map/annotation.o
In file included from engines/ultima/ultima4/map/annotation.cpp:23:
./engines/ultima/ultima4/map/annotation.h: In member function 'void Ultima::Ultima4::Annotation::setTile(const Ultima::Ultima4::MapTile&)':
./engines/ultima/ultima4/map/annotation.h:96:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/map/annotation.h:28,
                 from engines/ultima/ultima4/map/annotation.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/map/annotation.cpp:24:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/map/annotation.h:28,
                 from engines/ultima/ultima4/map/annotation.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/map/annotation.cpp:24:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/map/annotation.h:28,
                 from engines/ultima/ultima4/map/annotation.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/map/annotation.cpp:24:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/map/annotation.h:28,
                 from engines/ultima/ultima4/map/annotation.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/map/city.o
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/city.h:26,
                 from engines/ultima/ultima4/map/city.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/city.h:26,
                 from engines/ultima/ultima4/map/city.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/city.h:26,
                 from engines/ultima/ultima4/map/city.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/city.h:26,
                 from engines/ultima/ultima4/map/city.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/city.h:26,
                 from engines/ultima/ultima4/map/city.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/city.h:26,
                 from engines/ultima/ultima4/map/city.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/map/direction.o
    C++      engines/ultima/ultima4/gfx/scale.o
    C++      engines/ultima/ultima4/game/player.o
In file included from ./engines/ultima/ultima4/game/creature.h:26,
                 from ./engines/ultima/ultima4/game/player.h:26,
                 from engines/ultima/ultima4/game/player.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/game/creature.h:26,
                 from ./engines/ultima/ultima4/game/player.h:26,
                 from engines/ultima/ultima4/game/player.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/game/creature.h:26,
                 from ./engines/ultima/ultima4/game/player.h:26,
                 from engines/ultima/ultima4/game/player.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/game/creature.h:26,
                 from ./engines/ultima/ultima4/game/player.h:26,
                 from engines/ultima/ultima4/game/player.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/game/creature.h:26,
                 from ./engines/ultima/ultima4/game/player.h:26,
                 from engines/ultima/ultima4/game/player.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/game/creature.h:26,
                 from ./engines/ultima/ultima4/game/player.h:26,
                 from engines/ultima/ultima4/game/player.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from engines/ultima/ultima4/game/player.cpp:32:
./engines/ultima/ultima4/map/annotation.h: In member function 'void Ultima::Ultima4::Annotation::setTile(const Ultima::Ultima4::MapTile&)':
./engines/ultima/ultima4/map/annotation.h:96:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/game/creature.h:26,
                 from ./engines/ultima/ultima4/game/player.h:26,
                 from engines/ultima/ultima4/game/player.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
engines/ultima/ultima4/game/player.cpp: In member function 'void Ultima::Ultima4::Party::setTransport(Ultima::Ultima4::MapTile)':
engines/ultima/ultima4/game/player.cpp:1074:22: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
 1074 |         _transport = tile;
      |                      ^~~~
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/game/creature.h:26,
                 from ./engines/ultima/ultima4/game/player.h:26,
                 from engines/ultima/ultima4/game/player.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/map/map_tile.o
    C++      engines/ultima/ultima4/gfx/imagemgr.o
    C++      engines/ultima/ultima4/map/movement.o
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/movement.h:27,
                 from engines/ultima/ultima4/map/movement.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/movement.h:27,
                 from engines/ultima/ultima4/map/movement.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/movement.h:27,
                 from engines/ultima/ultima4/map/movement.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/movement.h:27,
                 from engines/ultima/ultima4/map/movement.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/movement.h:27,
                 from engines/ultima/ultima4/map/movement.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/movement.h:27,
                 from engines/ultima/ultima4/map/movement.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from engines/ultima/ultima4/map/movement.cpp:24:
./engines/ultima/ultima4/map/annotation.h: In member function 'void Ultima::Ultima4::Annotation::setTile(const Ultima::Ultima4::MapTile&)':
./engines/ultima/ultima4/map/annotation.h:96:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/movement.h:27,
                 from engines/ultima/ultima4/map/movement.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/map/shrine.o
In file included from engines/ultima/ultima4/map/shrine.cpp:23:
./engines/ultima/ultima4/map/annotation.h: In member function 'void Ultima::Ultima4::Annotation::setTile(const Ultima::Ultima4::MapTile&)':
./engines/ultima/ultima4/map/annotation.h:96:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/map/annotation.h:28,
                 from engines/ultima/ultima4/map/shrine.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from engines/ultima/ultima4/map/shrine.cpp:24:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/map/annotation.h:28,
                 from engines/ultima/ultima4/map/shrine.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from engines/ultima/ultima4/map/shrine.cpp:24:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/map/annotation.h:28,
                 from engines/ultima/ultima4/map/shrine.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from engines/ultima/ultima4/map/shrine.cpp:24:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/map/annotation.h:28,
                 from engines/ultima/ultima4/map/shrine.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/map/dungeon.o
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/controllers/combat_controller.h:27,
                 from ./engines/ultima/ultima4/map/dungeon.h:26,
                 from engines/ultima/ultima4/map/dungeon.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/controllers/combat_controller.h:27,
                 from ./engines/ultima/ultima4/map/dungeon.h:26,
                 from engines/ultima/ultima4/map/dungeon.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/controllers/combat_controller.h:27,
                 from ./engines/ultima/ultima4/map/dungeon.h:26,
                 from engines/ultima/ultima4/map/dungeon.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/controllers/combat_controller.h:27,
                 from ./engines/ultima/ultima4/map/dungeon.h:26,
                 from engines/ultima/ultima4/map/dungeon.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/controllers/combat_controller.h:27,
                 from ./engines/ultima/ultima4/map/dungeon.h:26,
                 from engines/ultima/ultima4/map/dungeon.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/controllers/combat_controller.h:27,
                 from ./engines/ultima/ultima4/map/dungeon.h:26,
                 from engines/ultima/ultima4/map/dungeon.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from engines/ultima/ultima4/map/dungeon.cpp:24:
./engines/ultima/ultima4/map/annotation.h: In member function 'void Ultima::Ultima4::Annotation::setTile(const Ultima::Ultima4::MapTile&)':
./engines/ultima/ultima4/map/annotation.h:96:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/controllers/combat_controller.h:27,
                 from ./engines/ultima/ultima4/map/dungeon.h:26,
                 from engines/ultima/ultima4/map/dungeon.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
engines/ultima/ultima4/map/dungeon.cpp: In member function 'void Ultima::Ultima4::DngRoom::hythlothFix9()':
engines/ultima/ultima4/map/dungeon.cpp:132:79: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
  132 |                 _mapData[index] = g_tileMaps->get("base")->translate(tile[i].z);
      |                                                                               ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/controllers/combat_controller.h:27,
                 from ./engines/ultima/ultima4/map/dungeon.h:26,
                 from engines/ultima/ultima4/map/dungeon.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/game/script.o
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/game/script.cpp:25:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/game/script.cpp:25:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/game/script.cpp:25:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/game/script.cpp:25:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/game/script.cpp:25:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/game/script.cpp:25:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/map/location.o
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from engines/ultima/ultima4/map/location.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from engines/ultima/ultima4/map/location.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from engines/ultima/ultima4/map/location.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from engines/ultima/ultima4/map/location.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from engines/ultima/ultima4/map/location.cpp:23:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from engines/ultima/ultima4/map/location.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from engines/ultima/ultima4/map/location.cpp:24:
./engines/ultima/ultima4/map/annotation.h: In member function 'void Ultima::Ultima4::Annotation::setTile(const Ultima::Ultima4::MapTile&)':
./engines/ultima/ultima4/map/annotation.h:96:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from engines/ultima/ultima4/map/location.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/shared/std/containers.h:26,
                 from ./engines/ultima/ultima4/sound/music.h:26,
                 from ./engines/ultima/ultima4/map/map.h:28,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from engines/ultima/ultima4/map/location.cpp:23:
./common/algorithm.h: In instantiation of 'Out Common::copy_backward(In, In, Out) [with In = Ultima::Ultima4::MapTile*; Out = Ultima::Ultima4::MapTile*]':
./common/array.h:366:18:   required from 'T* Common::Array<T>::insert_aux(Common::Array<T>::iterator, Common::Array<T>::const_iterator, Common::Array<T>::const_iterator) [with T = Ultima::Ultima4::MapTile; Common::Array<T>::iterator = Ultima::Ultima4::MapTile*; Common::Array<T>::const_iterator = const Ultima::Ultima4::MapTile*]'
./common/array.h:108:4:   required from 'void Common::Array<T>::push_back(const T&) [with T = Ultima::Ultima4::MapTile]'
engines/ultima/ultima4/map/location.cpp:86:19:   required from here
./common/algorithm.h:54:24: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   54 |                 *--dst = *--last;
      |                 ~~~~~~~^~~~~~~~~
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from engines/ultima/ultima4/map/location.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/shared/std/containers.h:26,
                 from ./engines/ultima/ultima4/sound/music.h:26,
                 from ./engines/ultima/ultima4/map/map.h:28,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from engines/ultima/ultima4/map/location.cpp:23:
./common/algorithm.h: In instantiation of 'Out Common::copy(In, In, Out) [with In = const Ultima::Ultima4::MapTile*; Out = Ultima::Ultima4::MapTile*]':
./common/array.h:369:9:   required from 'T* Common::Array<T>::insert_aux(Common::Array<T>::iterator, Common::Array<T>::const_iterator, Common::Array<T>::const_iterator) [with T = Ultima::Ultima4::MapTile; Common::Array<T>::iterator = Ultima::Ultima4::MapTile*; Common::Array<T>::const_iterator = const Ultima::Ultima4::MapTile*]'
./common/array.h:108:4:   required from 'void Common::Array<T>::push_back(const T&) [with T = Ultima::Ultima4::MapTile]'
engines/ultima/ultima4/map/location.cpp:86:19:   required from here
./common/algorithm.h:40:24: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   40 |                 *dst++ = *first++;
      |                 ~~~~~~~^~~~~~~~~~
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from engines/ultima/ultima4/map/location.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/gfx/screen.o
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/gfx/screen.cpp:33:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from engines/ultima/ultima4/gfx/screen.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/gfx/screen.cpp:33:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from engines/ultima/ultima4/gfx/screen.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/gfx/screen.cpp:33:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from engines/ultima/ultima4/gfx/screen.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from engines/ultima/ultima4/gfx/screen.cpp:39:
./engines/ultima/ultima4/map/annotation.h: In member function 'void Ultima::Ultima4::Annotation::setTile(const Ultima::Ultima4::MapTile&)':
./engines/ultima/ultima4/map/annotation.h:96:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from engines/ultima/ultima4/gfx/screen.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
engines/ultima/ultima4/gfx/screen.cpp: In member function 'void Ultima::Ultima4::Screen::screenShowGemTile(Ultima::Ultima4::Layout*, Ultima::Ultima4::Map*, Ultima::Ultima4::MapTile&, bool, int, int)':
engines/ultima/ultima4/gfx/screen.cpp:1157:65: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
 1157 |                 t = map->_tileSet->getByName(looks_like)->getId();
      |                                                                 ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from engines/ultima/ultima4/gfx/screen.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
engines/ultima/ultima4/gfx/screen.cpp: In member function 'void Ultima::Ultima4::Screen::screenGemUpdate()':
engines/ultima/ultima4/gfx/screen.cpp:1262:44: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
 1262 |                         tile = tiles.front();
      |                                            ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from engines/ultima/ultima4/gfx/screen.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
engines/ultima/ultima4/gfx/screen.cpp:1269:130: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
 1269 |                                         tile = g_context->_location->_map->getTileFromData(g_context->_location->_coords)->getId();
      |                                                                                                                                  ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from engines/ultima/ultima4/gfx/screen.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
engines/ultima/ultima4/gfx/screen.cpp:1302:51: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
 1302 |                                            .front();
      |                                                   ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from engines/ultima/ultima4/gfx/screen.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/shared/std/containers.h:26,
                 from ./engines/ultima/shared/conf/xml_tree.h:28,
                 from ./engines/ultima/ultima4/core/config.h:26,
                 from ./engines/ultima/ultima4/gfx/screen.h:27,
                 from engines/ultima/ultima4/gfx/screen.cpp:23:
./common/algorithm.h: In instantiation of 'Out Common::copy_backward(In, In, Out) [with In = Ultima::Ultima4::MapTile*; Out = Ultima::Ultima4::MapTile*]':
./common/array.h:366:18:   required from 'T* Common::Array<T>::insert_aux(Common::Array<T>::iterator, Common::Array<T>::const_iterator, Common::Array<T>::const_iterator) [with T = Ultima::Ultima4::MapTile; Common::Array<T>::iterator = Ultima::Ultima4::MapTile*; Common::Array<T>::const_iterator = const Ultima::Ultima4::MapTile*]'
./common/array.h:108:4:   required from 'void Common::Array<T>::push_back(const T&) [with T = Ultima::Ultima4::MapTile]'
engines/ultima/ultima4/gfx/screen.cpp:431:19:   required from here
./common/algorithm.h:54:24: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   54 |                 *--dst = *--last;
      |                 ~~~~~~~^~~~~~~~~
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from engines/ultima/ultima4/gfx/screen.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/shared/std/containers.h:26,
                 from ./engines/ultima/shared/conf/xml_tree.h:28,
                 from ./engines/ultima/ultima4/core/config.h:26,
                 from ./engines/ultima/ultima4/gfx/screen.h:27,
                 from engines/ultima/ultima4/gfx/screen.cpp:23:
./common/algorithm.h: In instantiation of 'Out Common::copy(In, In, Out) [with In = const Ultima::Ultima4::MapTile*; Out = Ultima::Ultima4::MapTile*]':
./common/array.h:369:9:   required from 'T* Common::Array<T>::insert_aux(Common::Array<T>::iterator, Common::Array<T>::const_iterator, Common::Array<T>::const_iterator) [with T = Ultima::Ultima4::MapTile; Common::Array<T>::iterator = Ultima::Ultima4::MapTile*; Common::Array<T>::const_iterator = const Ultima::Ultima4::MapTile*]'
./common/array.h:108:4:   required from 'void Common::Array<T>::push_back(const T&) [with T = Ultima::Ultima4::MapTile]'
engines/ultima/ultima4/gfx/screen.cpp:431:19:   required from here
./common/algorithm.h:40:24: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   40 |                 *dst++ = *first++;
      |                 ~~~~~~~^~~~~~~~~~
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from engines/ultima/ultima4/gfx/screen.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/map/tile.o
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/map/tile.cpp:25:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/map/tile.cpp:25:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/map/tile.cpp:25:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/map/tile.cpp:25:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/map/tile.cpp:25:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/map/tile.cpp:25:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/map/tilemap.o
engines/ultima/ultima4/map/tilemap.cpp: In member function 'void Ultima::Ultima4::TileMaps::load(const Ultima::Ultima4::ConfigElement&)':
engines/ultima/ultima4/map/tilemap.cpp:103:84: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
  103 |                                 tm->_tileMap[index + idx] = MapTile(t->getId(), idx);
      |                                                                                    ^
In file included from ./engines/ultima/ultima4/map/tilemap.h:27,
                 from engines/ultima/ultima4/map/tilemap.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
engines/ultima/ultima4/map/tilemap.cpp:106:82: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
  106 |                                 tm->_tileMap[index + idx] = MapTile(t->getId(), 0);
      |                                                                                  ^
In file included from ./engines/ultima/ultima4/map/tilemap.h:27,
                 from engines/ultima/ultima4/map/tilemap.cpp:23:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/map/map.o
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from engines/ultima/ultima4/map/map.cpp:24:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from engines/ultima/ultima4/map/map.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from engines/ultima/ultima4/map/map.cpp:24:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from engines/ultima/ultima4/map/map.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from engines/ultima/ultima4/map/map.cpp:24:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from engines/ultima/ultima4/map/map.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from engines/ultima/ultima4/map/map.cpp:25:
./engines/ultima/ultima4/map/annotation.h: In member function 'void Ultima::Ultima4::Annotation::setTile(const Ultima::Ultima4::MapTile&)':
./engines/ultima/ultima4/map/annotation.h:96:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from engines/ultima/ultima4/map/map.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from engines/ultima/ultima4/map/map.cpp:24:
./engines/ultima/ultima4/game/object.h: In member function 'Ultima::Ultima4::Object& Ultima::Ultima4::Object::operator=(const Ultima::Ultima4::Object&)':
./engines/ultima/ultima4/game/object.h:43:7: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   43 | class Object {
      |       ^~~~~~
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from engines/ultima/ultima4/map/map.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from engines/ultima/ultima4/map/map.cpp:24:
./engines/ultima/ultima4/game/object.h:43:7: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   43 | class Object {
      |       ^~~~~~
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from engines/ultima/ultima4/map/map.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/game/person.h:26,
                 from ./engines/ultima/ultima4/game/context.h:29,
                 from engines/ultima/ultima4/map/map.cpp:26:
./engines/ultima/ultima4/game/creature.h: In member function 'Ultima::Ultima4::Creature& Ultima::Ultima4::Creature::operator=(const Ultima::Ultima4::Creature&)':
./engines/ultima/ultima4/game/creature.h:160:7: note: synthesized method 'Ultima::Ultima4::Object& Ultima::Ultima4::Object::operator=(const Ultima::Ultima4::Object&)' first required here
  160 | class Creature : public Object {
      |       ^~~~~~~~
engines/ultima/ultima4/map/map.cpp: In member function 'Ultima::Ultima4::Creature* Ultima::Ultima4::Map::addCreature(const Ultima::Ultima4::Creature*, Ultima::Ultima4::Coords)':
engines/ultima/ultima4/map/map.cpp:381:15: note: synthesized method 'Ultima::Ultima4::Creature& Ultima::Ultima4::Creature::operator=(const Ultima::Ultima4::Creature&)' first required here
  381 |         *m = *creature;
      |               ^~~~~~~~
engines/ultima/ultima4/map/map.cpp: In member function 'int Ultima::Ultima4::Map::getValidMoves(Ultima::Ultima4::MapCoords, Ultima::Ultima4::MapTile)':
engines/ultima/ultima4/map/map.cpp:556:64: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
  556 |                         tile = g_context->_party->getTransport();
      |                                                                ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from engines/ultima/ultima4/map/map.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
engines/ultima/ultima4/map/map.cpp:558:45: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
  558 |                         tile = obj->getTile();
      |                                             ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from engines/ultima/ultima4/map/map.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
engines/ultima/ultima4/map/map.cpp:560:60: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
  560 |                         tile = *tileAt(coords, WITH_OBJECTS);
      |                                                            ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from engines/ultima/ultima4/map/map.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
engines/ultima/ultima4/map/map.cpp:575:71: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
  575 |                                 tile = *tileAt(coords, WITHOUT_OBJECTS); //Ignore all objects, and just consider terrain
      |                                                                       ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from engines/ultima/ultima4/map/map.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/ultima4.h:27,
                 from engines/ultima/ultima4/map/map.cpp:23:
./engines/ultima/shared/std/containers.h: In instantiation of 'VAL Ultima::Std::deque<VAL>::operator[](uint) [with VAL = Ultima::Ultima4::Object*; uint = unsigned int]':
engines/ultima/ultima4/map/map.cpp:447:52:   required from here
./engines/ultima/shared/std/containers.h:266:60: warning: comparison of unsigned expression in '>= 0' is always true [-Wtype-limits]
  266 |                                 it != this->end() && index >= 0; ++it, --index) {
      |                                                      ~~~~~~^~~~
    C++      engines/ultima/ultima4/map/mapmgr.o
In file included from engines/ultima/ultima4/map/mapmgr.cpp:24:
./engines/ultima/ultima4/map/annotation.h: In member function 'void Ultima::Ultima4::Annotation::setTile(const Ultima::Ultima4::MapTile&)':
./engines/ultima/ultima4/map/annotation.h:96:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/map/annotation.h:28,
                 from engines/ultima/ultima4/map/mapmgr.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/city.h:26,
                 from engines/ultima/ultima4/map/mapmgr.cpp:25:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/map/annotation.h:28,
                 from engines/ultima/ultima4/map/mapmgr.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/city.h:26,
                 from engines/ultima/ultima4/map/mapmgr.cpp:25:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/map/annotation.h:28,
                 from engines/ultima/ultima4/map/mapmgr.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/city.h:26,
                 from engines/ultima/ultima4/map/mapmgr.cpp:25:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/map/annotation.h:28,
                 from engines/ultima/ultima4/map/mapmgr.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/map/tileanim.o
    C++      engines/ultima/ultima4/map/maploader.o
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/maploader.h:26,
                 from engines/ultima/ultima4/map/maploader.cpp:25:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/maploader.h:26,
                 from engines/ultima/ultima4/map/maploader.cpp:25:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/maploader.h:26,
                 from engines/ultima/ultima4/map/maploader.cpp:25:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/maploader.h:26,
                 from engines/ultima/ultima4/map/maploader.cpp:25:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/maploader.h:26,
                 from engines/ultima/ultima4/map/maploader.cpp:25:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/maploader.h:26,
                 from engines/ultima/ultima4/map/maploader.cpp:25:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
engines/ultima/ultima4/map/maploader.cpp: In static member function 'static bool Ultima::Ultima4::MapLoader::loadData(Ultima::Ultima4::Map*, Common::File*)':
engines/ultima/ultima4/map/maploader.cpp:101:154: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
  101 |                                                 map->_data[x + (y * map->_width) + (xch * map->_chunkWidth) + (ych * map->_chunkHeight * map->_width)] = water;
      |                                                                                                                                                          ^~~~~
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/maploader.h:26,
                 from engines/ultima/ultima4/map/maploader.cpp:25:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
engines/ultima/ultima4/map/maploader.cpp:115:154: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
  115 |                                                 map->_data[x + (y * map->_width) + (xch * map->_chunkWidth) + (ych * map->_chunkHeight * map->_width)] = mt;
      |                                                                                                                                                          ^~
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/maploader.h:26,
                 from engines/ultima/ultima4/map/maploader.cpp:25:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
engines/ultima/ultima4/map/maploader.cpp: In member function 'virtual bool Ultima::Ultima4::WorldMapLoader::load(Ultima::Ultima4::Map*)':
engines/ultima/ultima4/map/maploader.cpp:415:81: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
  415 |                         map->_data[p->_coords.x + p->_coords.y * map->_width] = mt;
      |                                                                                 ^~
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/maploader.h:26,
                 from engines/ultima/ultima4/map/maploader.cpp:25:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
engines/ultima/ultima4/map/maploader.cpp: In member function 'virtual bool Ultima::Ultima4::XMLMapLoader::load(Ultima::Ultima4::Map*)':
engines/ultima/ultima4/map/maploader.cpp:449:59: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
  449 |                         map->_data[x + y * map->_width] = mt;
      |                                                           ^~
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/maploader.h:26,
                 from engines/ultima/ultima4/map/maploader.cpp:25:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./common/array.h:27,
                 from ./common/achievements.h:26,
                 from ./engines/metaengine.h:26,
                 from ./engines/advancedDetector.h:26,
                 from ./engines/ultima/detection.h:26,
                 from ./engines/ultima/shared/engine/ultima.h:26,
                 from ./engines/ultima/ultima4/ultima4.h:26,
                 from engines/ultima/ultima4/map/maploader.cpp:23:
./common/algorithm.h: In instantiation of 'Out Common::copy_backward(In, In, Out) [with In = Ultima::Ultima4::MapTile*; Out = Ultima::Ultima4::MapTile*]':
./common/array.h:366:18:   required from 'T* Common::Array<T>::insert_aux(Common::Array<T>::iterator, Common::Array<T>::const_iterator, Common::Array<T>::const_iterator) [with T = Ultima::Ultima4::MapTile; Common::Array<T>::iterator = Ultima::Ultima4::MapTile*; Common::Array<T>::const_iterator = const Ultima::Ultima4::MapTile*]'
./common/array.h:108:4:   required from 'void Common::Array<T>::push_back(const T&) [with T = Ultima::Ultima4::MapTile]'
engines/ultima/ultima4/map/maploader.cpp:316:27:   required from here
./common/algorithm.h:54:24: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   54 |                 *--dst = *--last;
      |                 ~~~~~~~^~~~~~~~~
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/maploader.h:26,
                 from engines/ultima/ultima4/map/maploader.cpp:25:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./common/array.h:27,
                 from ./common/achievements.h:26,
                 from ./engines/metaengine.h:26,
                 from ./engines/advancedDetector.h:26,
                 from ./engines/ultima/detection.h:26,
                 from ./engines/ultima/shared/engine/ultima.h:26,
                 from ./engines/ultima/ultima4/ultima4.h:26,
                 from engines/ultima/ultima4/map/maploader.cpp:23:
./common/algorithm.h: In instantiation of 'Out Common::copy(In, In, Out) [with In = const Ultima::Ultima4::MapTile*; Out = Ultima::Ultima4::MapTile*]':
./common/array.h:369:9:   required from 'T* Common::Array<T>::insert_aux(Common::Array<T>::iterator, Common::Array<T>::const_iterator, Common::Array<T>::const_iterator) [with T = Ultima::Ultima4::MapTile; Common::Array<T>::iterator = Ultima::Ultima4::MapTile*; Common::Array<T>::const_iterator = const Ultima::Ultima4::MapTile*]'
./common/array.h:108:4:   required from 'void Common::Array<T>::push_back(const T&) [with T = Ultima::Ultima4::MapTile]'
engines/ultima/ultima4/map/maploader.cpp:316:27:   required from here
./common/algorithm.h:40:24: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   40 |                 *dst++ = *first++;
      |                 ~~~~~~~^~~~~~~~~~
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/maploader.h:26,
                 from engines/ultima/ultima4/map/maploader.cpp:25:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/views/imageview.o
    C++      engines/ultima/ultima4/sound/sound.o
    C++      engines/ultima/ultima4/map/tileset.o
    C++      engines/ultima/ultima4/sound/music.o
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/sound/music.cpp:30:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from engines/ultima/ultima4/sound/music.cpp:28:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/sound/music.cpp:30:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from engines/ultima/ultima4/sound/music.cpp:28:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/sound/music.cpp:30:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from engines/ultima/ultima4/sound/music.cpp:28:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/views/dungeonview.o
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/views/dungeonview.h:26,
                 from engines/ultima/ultima4/views/dungeonview.cpp:30:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from engines/ultima/ultima4/views/dungeonview.cpp:27:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/views/dungeonview.h:26,
                 from engines/ultima/ultima4/views/dungeonview.cpp:30:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from engines/ultima/ultima4/views/dungeonview.cpp:27:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/views/dungeonview.h:26,
                 from engines/ultima/ultima4/views/dungeonview.cpp:30:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from engines/ultima/ultima4/views/dungeonview.cpp:27:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
engines/ultima/ultima4/views/dungeonview.cpp: In member function 'Ultima::Ultima4::DungeonGraphicType Ultima::Ultima4::DungeonView::tilesToGraphic(const Ultima::Std::vector<Ultima::Ultima4::MapTile>&)':
engines/ultima/ultima4/views/dungeonview.cpp:274:106: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
  274 |                 _tiles._corridor = g_context->_location->_map->_tileSet->getByName("brick_floor")->getId();
      |                                                                                                          ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from engines/ultima/ultima4/views/dungeonview.cpp:27:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
engines/ultima/ultima4/views/dungeonview.cpp:275:104: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
  275 |                 _tiles._upLadder = g_context->_location->_map->_tileSet->getByName("up_ladder")->getId();
      |                                                                                                        ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from engines/ultima/ultima4/views/dungeonview.cpp:27:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
engines/ultima/ultima4/views/dungeonview.cpp:276:108: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
  276 |                 _tiles._downLadder = g_context->_location->_map->_tileSet->getByName("down_ladder")->getId();
      |                                                                                                            ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from engines/ultima/ultima4/views/dungeonview.cpp:27:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
engines/ultima/ultima4/views/dungeonview.cpp:277:113: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
  277 |                 _tiles._upDownLadder = g_context->_location->_map->_tileSet->getByName("up_down_ladder")->getId();
      |                                                                                                                 ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from engines/ultima/ultima4/views/dungeonview.cpp:27:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/views/menu.o
    C++      engines/ultima/ultima4/views/view.o
    C++      engines/ultima/ultima4/views/menuitem.o
engines/ultima/ultima4/views/menuitem.cpp: In member function 'virtual Common::String Ultima::Ultima4::IntMenuItem::getText() const':
engines/ultima/ultima4/views/menuitem.cpp:216:63: warning: '%3g' directive output may be truncated writing between 3 and 13 bytes into a region of size 10 [-Wformat-truncation=]
  216 |                 snprintf(outputBuffer, sizeof(outputBuffer), "%3g sec", static_cast<double>(*_val) / 5);
      |                                                               ^~~
engines/ultima/ultima4/views/menuitem.cpp:216:62: note: assuming directive output of 12 bytes
  216 |                 snprintf(outputBuffer, sizeof(outputBuffer), "%3g sec", static_cast<double>(*_val) / 5);
      |                                                              ^~~~~~~~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./common/list_intern.h:26,
                 from ./common/list.h:26,
                 from ./engines/ultima/ultima4/events/timed_event_mgr.h:26,
                 from ./engines/ultima/ultima4/events/event_handler.h:26,
                 from ./engines/ultima/ultima4/views/menu.h:26,
                 from engines/ultima/ultima4/views/menuitem.cpp:23:
/usr/include/bits/stdio2.h:71:35: note: '__builtin___snprintf_chk' output between 8 and 18 bytes into a destination of size 10
   71 |   return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   72 |                                    __glibc_objsize (__s), __fmt,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   73 |                                    __va_arg_pack ());
      |                                    ~~~~~~~~~~~~~~~~~
    C++      engines/ultima/ultima4/views/tileview.o
    C++      engines/ultima/ultima4/views/textview.o
    C++      engines/ultima/ultima4/meta_engine.o
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/spell.h:26,
                 from ./engines/ultima/ultima4/core/debugger_actions.h:27,
                 from ./engines/ultima/ultima4/core/debugger.h:28,
                 from engines/ultima/ultima4/meta_engine.cpp:24:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/spell.h:26,
                 from ./engines/ultima/ultima4/core/debugger_actions.h:27,
                 from ./engines/ultima/ultima4/core/debugger.h:28,
                 from engines/ultima/ultima4/meta_engine.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/spell.h:26,
                 from ./engines/ultima/ultima4/core/debugger_actions.h:27,
                 from ./engines/ultima/ultima4/core/debugger.h:28,
                 from engines/ultima/ultima4/meta_engine.cpp:24:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/spell.h:26,
                 from ./engines/ultima/ultima4/core/debugger_actions.h:27,
                 from ./engines/ultima/ultima4/core/debugger.h:28,
                 from engines/ultima/ultima4/meta_engine.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/spell.h:26,
                 from ./engines/ultima/ultima4/core/debugger_actions.h:27,
                 from ./engines/ultima/ultima4/core/debugger.h:28,
                 from engines/ultima/ultima4/meta_engine.cpp:24:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/game/object.h:26,
                 from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/spell.h:26,
                 from ./engines/ultima/ultima4/core/debugger_actions.h:27,
                 from ./engines/ultima/ultima4/core/debugger.h:28,
                 from engines/ultima/ultima4/meta_engine.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/ultima4/views/stats.o
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/views/stats.cpp:28:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from ./engines/ultima/ultima4/views/menu.h:26,
                 from ./engines/ultima/ultima4/views/stats.h:28,
                 from engines/ultima/ultima4/views/stats.cpp:26:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/views/stats.cpp:28:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from ./engines/ultima/ultima4/views/menu.h:26,
                 from ./engines/ultima/ultima4/views/stats.h:28,
                 from engines/ultima/ultima4/views/stats.cpp:26:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from engines/ultima/ultima4/views/stats.cpp:28:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from ./engines/ultima/ultima4/views/menu.h:26,
                 from ./engines/ultima/ultima4/views/stats.h:28,
                 from engines/ultima/ultima4/views/stats.cpp:26:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/nuvie/meta_engine.o
    C++      engines/ultima/nuvie/actors/se_actor.o
    C++      engines/ultima/nuvie/actors/md_actor.o
    C++      engines/ultima/ultima4/ultima4.o
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/spell.h:26,
                 from ./engines/ultima/ultima4/core/debugger_actions.h:27,
                 from ./engines/ultima/ultima4/core/debugger.h:28,
                 from engines/ultima/ultima4/ultima4.cpp:28:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:93:25: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   93 |                 _tile = t;
      |                         ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from ./engines/ultima/ultima4/views/menu.h:26,
                 from ./engines/ultima/ultima4/controllers/intro_controller.h:29,
                 from engines/ultima/ultima4/ultima4.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/spell.h:26,
                 from ./engines/ultima/ultima4/core/debugger_actions.h:27,
                 from ./engines/ultima/ultima4/core/debugger.h:28,
                 from engines/ultima/ultima4/ultima4.cpp:28:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setTile(Ultima::Ultima4::Tile*)':
./engines/ultima/ultima4/game/object.h:96:34: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   96 |                 _tile = t->getId();
      |                                  ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from ./engines/ultima/ultima4/views/menu.h:26,
                 from ./engines/ultima/ultima4/controllers/intro_controller.h:29,
                 from engines/ultima/ultima4/ultima4.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
In file included from ./engines/ultima/ultima4/map/map.h:29,
                 from ./engines/ultima/ultima4/map/location.h:26,
                 from ./engines/ultima/ultima4/game/context.h:26,
                 from ./engines/ultima/ultima4/game/spell.h:26,
                 from ./engines/ultima/ultima4/core/debugger_actions.h:27,
                 from ./engines/ultima/ultima4/core/debugger.h:28,
                 from engines/ultima/ultima4/ultima4.cpp:28:
./engines/ultima/ultima4/game/object.h: In member function 'void Ultima::Ultima4::Object::setPrevTile(Ultima::Ultima4::MapTile)':
./engines/ultima/ultima4/game/object.h:99:29: warning: implicitly-declared 'Ultima::Ultima4::MapTile& Ultima::Ultima4::MapTile::operator=(const Ultima::Ultima4::MapTile&)' is deprecated [-Wdeprecated-copy]
   99 |                 _prevTile = t;
      |                             ^
In file included from ./engines/ultima/ultima4/gfx/screen.h:32,
                 from ./engines/ultima/ultima4/events/event_handler.h:29,
                 from ./engines/ultima/ultima4/views/menu.h:26,
                 from ./engines/ultima/ultima4/controllers/intro_controller.h:29,
                 from engines/ultima/ultima4/ultima4.cpp:24:
./engines/ultima/ultima4/map/map_tile.h:41:9: note: because 'Ultima::Ultima4::MapTile' has user-provided 'Ultima::Ultima4::MapTile::MapTile(const Ultima::Ultima4::MapTile&)'
   41 |         MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
      |         ^~~~~~~
    C++      engines/ultima/nuvie/conf/misc.o
    C++      engines/ultima/nuvie/actors/wou_actor.o
    C++      engines/ultima/nuvie/nuvie.o
    C++      engines/ultima/nuvie/core/book.o
    C++      engines/ultima/nuvie/actors/actor_manager.o
    C++      engines/ultima/nuvie/actors/actor.o
    C++      engines/ultima/nuvie/core/converse_speech.o
engines/ultima/nuvie/core/converse_speech.cpp: In member function 'void Ultima::Nuvie::ConverseSpeech::play_speech(uint16, uint16)':
engines/ultima/nuvie/core/converse_speech.cpp:87:46: warning: '__builtin___sprintf_chk' may write a terminating nul past the end of the destination [-Wformat-overflow=]
   87 |         sprintf(filename, "speech%cchar%u.sam", U6PATH_DELIMITER, actor_num);
      |                                              ^
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/ultima/nuvie/core/nuvie_defs.h:26,
                 from engines/ultima/nuvie/core/converse_speech.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 17 and 21 bytes into a destination of size 20
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
    C++      engines/ultima/nuvie/core/debugger.o
    C++      engines/ultima/nuvie/actors/u6_actor.o
    C++      engines/ultima/nuvie/core/debug.o
    C++      engines/ultima/nuvie/core/converse.o
    C++      engines/ultima/nuvie/conf/configuration.o
    C++      engines/ultima/nuvie/core/cursor.o
    C++      engines/ultima/nuvie/core/egg_manager.o
    C++      engines/ultima/nuvie/core/effect_manager.o
    C++      engines/ultima/nuvie/core/anim_manager.o
    C++      engines/ultima/nuvie/core/game_clock.o
engines/ultima/nuvie/core/game_clock.cpp: In member function 'bool Ultima::Nuvie::GameClock::load(Ultima::Nuvie::NuvieIO*)':
engines/ultima/nuvie/core/game_clock.cpp:299:40: warning: '%04u' directive writing between 4 and 5 bytes into a region of size between 3 and 5 [-Wformat-overflow=]
  299 |         sprintf(date_string, "%2u-%02u-%04u", month, day, year);
      |                                        ^~~~
engines/ultima/nuvie/core/game_clock.cpp:299:30: note: directive argument in the range [0, 65535]
  299 |         sprintf(date_string, "%2u-%02u-%04u", month, day, year);
      |                              ^~~~~~~~~~~~~~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/ultima/nuvie/core/nuvie_defs.h:26,
                 from engines/ultima/nuvie/core/game_clock.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 11 and 14 bytes into a destination of size 11
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
engines/ultima/nuvie/core/game_clock.cpp:322:42: warning: '.M.' directive writing 3 bytes into a region of size between 0 and 5 [-Wformat-overflow=]
  322 |         sprintf(time_string, "%0u:%02u %c.M.", tmp_hour, minute, c);
      |                                          ^~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/ultima/nuvie/core/nuvie_defs.h:26,
                 from engines/ultima/nuvie/core/game_clock.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 10 and 15 bytes into a destination of size 11
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
engines/ultima/nuvie/core/game_clock.cpp: In member function 'void Ultima::Nuvie::GameClock::inc_day()':
engines/ultima/nuvie/core/game_clock.cpp:299:40: warning: '%04u' directive writing between 4 and 5 bytes into a region of size between 3 and 5 [-Wformat-overflow=]
  299 |         sprintf(date_string, "%2u-%02u-%04u", month, day, year);
      |                                        ^~~~
engines/ultima/nuvie/core/game_clock.cpp:299:30: note: directive argument in the range [0, 65535]
  299 |         sprintf(date_string, "%2u-%02u-%04u", month, day, year);
      |                              ^~~~~~~~~~~~~~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/ultima/nuvie/core/nuvie_defs.h:26,
                 from engines/ultima/nuvie/core/game_clock.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 11 and 14 bytes into a destination of size 11
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
engines/ultima/nuvie/core/game_clock.cpp: In member function 'void Ultima::Nuvie::GameClock::inc_minute(uint16)':
engines/ultima/nuvie/core/game_clock.cpp:322:45: warning: '__builtin___sprintf_chk' may write a terminating nul past the end of the destination [-Wformat-overflow=]
  322 |         sprintf(time_string, "%0u:%02u %c.M.", tmp_hour, minute, c);
      |                                             ^
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/ultima/nuvie/core/nuvie_defs.h:26,
                 from engines/ultima/nuvie/core/game_clock.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 10 and 12 bytes into a destination of size 11
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
engines/ultima/nuvie/core/game_clock.cpp: In member function 'char* Ultima::Nuvie::GameClock::get_date_string()':
engines/ultima/nuvie/core/game_clock.cpp:299:40: warning: '%04u' directive writing between 4 and 5 bytes into a region of size between 3 and 5 [-Wformat-overflow=]
  299 |         sprintf(date_string, "%2u-%02u-%04u", month, day, year);
      |                                        ^~~~
engines/ultima/nuvie/core/game_clock.cpp:299:30: note: directive argument in the range [0, 65535]
  299 |         sprintf(date_string, "%2u-%02u-%04u", month, day, year);
      |                              ^~~~~~~~~~~~~~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/ultima/nuvie/core/nuvie_defs.h:26,
                 from engines/ultima/nuvie/core/game_clock.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 11 and 14 bytes into a destination of size 11
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
engines/ultima/nuvie/core/game_clock.cpp: In member function 'char* Ultima::Nuvie::GameClock::get_time_string()':
engines/ultima/nuvie/core/game_clock.cpp:322:42: warning: '.M.' directive writing 3 bytes into a region of size between 0 and 5 [-Wformat-overflow=]
  322 |         sprintf(time_string, "%0u:%02u %c.M.", tmp_hour, minute, c);
      |                                          ^~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/ultima/nuvie/core/nuvie_defs.h:26,
                 from engines/ultima/nuvie/core/game_clock.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 10 and 15 bytes into a destination of size 11
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
    C++      engines/ultima/nuvie/core/look.o
    C++      engines/ultima/nuvie/core/game.o
    C++      engines/ultima/nuvie/core/nuvie_defs.o
    C++      engines/ultima/nuvie/core/magic.o
    C++      engines/ultima/nuvie/core/obj.o
    C++      engines/ultima/nuvie/core/map.o
    C++      engines/ultima/nuvie/core/converse_interpret.o
    C++      engines/ultima/nuvie/core/weather.o
    C++      engines/ultima/nuvie/core/effect.o
    C++      engines/ultima/nuvie/core/party.o
    C++      engines/ultima/nuvie/core/tile_manager.o
    C++      engines/ultima/nuvie/core/player.o
    C++      engines/ultima/nuvie/core/timed_event.o
    C++      engines/ultima/nuvie/files/utils.o
    C++      engines/ultima/nuvie/files/nuvie_io.o
    C++      engines/ultima/nuvie/files/nuvie_bmp_file.o
    C++      engines/ultima/nuvie/core/obj_manager.o
    C++      engines/ultima/nuvie/files/u6_bmp.o
    C++      engines/ultima/nuvie/files/nuvie_io_file.o
    C++      engines/ultima/nuvie/files/nuvie_file_list.o
    C++      engines/ultima/nuvie/files/u6_lib_n.o
    C++      engines/ultima/nuvie/files/u6_shape.o
engines/ultima/nuvie/files/u6_shape.cpp: In member function 'bool Ultima::Nuvie::U6Shape::blit(Ultima::Nuvie::U6Shape*, uint16, uint16)':
engines/ultima/nuvie/files/u6_shape.cpp:401:38: warning: 'src_h' may be used uninitialized in this function [-Wmaybe-uninitialized]
  401 |         if (x + src_w > width || y + src_h > height)
      |                                      ^~~~~
engines/ultima/nuvie/files/u6_shape.cpp:401:17: warning: 'src_w' may be used uninitialized in this function [-Wmaybe-uninitialized]
  401 |         if (x + src_w > width || y + src_h > height)
      |                 ^~~~~
    C++      engines/ultima/nuvie/files/u6_lzw.o
    C++      engines/ultima/nuvie/fonts/bmp_font.o
    C++      engines/ultima/nuvie/fonts/conv_font.o
    C++      engines/ultima/nuvie/files/tmx_map.o
engines/ultima/nuvie/files/tmx_map.cpp: In member function 'void Ultima::Nuvie::TMXMap::writeLayer(Ultima::Nuvie::NuvieIOFileWrite*, uint16, Ultima::Std::string, uint16, uint16, const unsigned char*)':
engines/ultima/nuvie/files/tmx_map.cpp:101:55: warning: '__builtin___snprintf_chk' output may be truncated before the last format character [-Wformat-truncation=]
  101 |                         snprintf(buf, sizeof(buf), "%d", gid);
      |                                                       ^
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/ultima/nuvie/core/nuvie_defs.h:26,
                 from ./engines/ultima/nuvie/core/tile_manager.h:26,
                 from engines/ultima/nuvie/files/tmx_map.cpp:23:
/usr/include/bits/stdio2.h:71:35: note: '__builtin___snprintf_chk' output between 2 and 6 bytes into a destination of size 5
   71 |   return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   72 |                                    __glibc_objsize (__s), __fmt,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   73 |                                    __va_arg_pack ());
      |                                    ~~~~~~~~~~~~~~~~~
engines/ultima/nuvie/files/tmx_map.cpp: In member function 'bool Ultima::Nuvie::TMXMap::exportMapLevel(uint8)':
engines/ultima/nuvie/files/tmx_map.cpp:200:57: warning: '__builtin___snprintf_chk' output may be truncated before the last format character [-Wformat-truncation=]
  200 |         snprintf(level_string, sizeof(level_string), "%d", level);
      |                                                         ^
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/ultima/nuvie/core/nuvie_defs.h:26,
                 from ./engines/ultima/nuvie/core/tile_manager.h:26,
                 from engines/ultima/nuvie/files/tmx_map.cpp:23:
/usr/include/bits/stdio2.h:71:35: note: '__builtin___snprintf_chk' output between 2 and 4 bytes into a destination of size 3
   71 |   return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   72 |                                    __glibc_objsize (__s), __fmt,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   73 |                                    __va_arg_pack ());
      |                                    ~~~~~~~~~~~~~~~~~
    C++      engines/ultima/nuvie/fonts/font.o
    C++      engines/ultima/nuvie/core/events.o
engines/ultima/nuvie/core/events.cpp: In member function 'void Ultima::Nuvie::Events::alt_code_infostring()':
engines/ultima/nuvie/core/events.cpp:1841:39: warning: '%03X' directive writing between 3 and 4 bytes into a region of size between 1 and 5 [-Wformat-overflow=]
 1841 |         sprintf(buf, "%02d%02d%02d%03X%03X%x", karma, hour, minute, x, y, z);
      |                                       ^~~~
engines/ultima/nuvie/core/events.cpp:1841:22: note: directive argument in the range [0, 65535]
 1841 |         sprintf(buf, "%02d%02d%02d%03X%03X%x", karma, hour, minute, x, y, z);
      |                      ^~~~~~~~~~~~~~~~~~~~~~~~
engines/ultima/nuvie/core/events.cpp:1841:22: note: directive argument in the range [0, 255]
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/ultima/nuvie/core/nuvie_defs.h:26,
                 from engines/ultima/nuvie/core/events.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 14 and 20 bytes into a destination of size 14
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
    C++      engines/ultima/nuvie/fonts/u6_font.o
    C++      engines/ultima/nuvie/fonts/wou_font.o
    C++      engines/ultima/nuvie/gui/gui_area.o
    C++      engines/ultima/nuvie/fonts/font_manager.o
    C++      engines/ultima/nuvie/gui/gui.o
    C++      engines/ultima/nuvie/gui/gui_console.o
    C++      engines/ultima/nuvie/gui/gui_dialog.o
    C++      engines/ultima/nuvie/gui/gui_font.o
    C++      engines/ultima/nuvie/gui/gui_drag_manager.o
    C++      engines/ultima/nuvie/gui/gui_load_image.o
    C++      engines/ultima/nuvie/gui/gui_button.o
    C++      engines/ultima/nuvie/gui/gui_text.o
    C++      engines/ultima/nuvie/gui/gui_scroller.o
    C++      engines/ultima/nuvie/gui/gui_scroll_bar.o
    C++      engines/ultima/nuvie/gui/gui_text_toggle_button.o
    C++      engines/ultima/nuvie/gui/gui_yes_no_dialog.o
    C++      engines/ultima/nuvie/gui/gui_text_input.o
engines/ultima/nuvie/gui/gui_text_input.cpp: In member function 'virtual Ultima::Nuvie::GUI_status Ultima::Nuvie::GUI_TextInput::KeyDown(const Common::KeyState&)':
engines/ultima/nuvie/gui/gui_text_input.cpp:137:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  137 |                 if (callback_object)
      |                 ^~
engines/ultima/nuvie/gui/gui_text_input.cpp:139:9: note: here
  139 |         case Common::KEYCODE_ESCAPE :
      |         ^~~~
    C++      engines/ultima/nuvie/gui/widgets/background.o
    C++      engines/ultima/nuvie/gui/widgets/gui_widget.o
engines/ultima/nuvie/gui/widgets/gui_widget.cpp: In member function 'virtual Ultima::Nuvie::GUI_status Ultima::Nuvie::GUI_Widget::HandleEvent(const Common::Event*)':
engines/ultima/nuvie/gui/widgets/gui_widget.cpp:377:36: warning: comparison between 'enum Ultima::Shared::MouseButton' and 'enum Common::EventType' [-Wenum-compare]
  377 |                         if (button == Common::EVENT_WHEELUP)
      |                             ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
engines/ultima/nuvie/gui/widgets/gui_widget.cpp:379:41: warning: comparison between 'enum Ultima::Shared::MouseButton' and 'enum Common::EventType' [-Wenum-compare]
  379 |                         else if (button == Common::EVENT_WHEELDOWN)
      |                                  ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
    C++      engines/ultima/nuvie/gui/widgets/console.o
    C++      engines/ultima/nuvie/gui/widgets/command_bar_new_ui.o
    C++      engines/ultima/nuvie/gui/widgets/command_bar.o
    C++      engines/ultima/nuvie/gui/widgets/msg_scroll_new_ui.o
    C++      engines/ultima/nuvie/gui/widgets/fps_counter.o
    C++      engines/ultima/nuvie/gui/widgets/converse_gump_wou.o
    C++      engines/ultima/nuvie/gui/widgets/msg_scroll.o
engines/ultima/nuvie/gui/widgets/msg_scroll.cpp: In member function 'virtual bool Ultima::Nuvie::MsgScroll::parse_token(Ultima::Nuvie::MsgText*)':
engines/ultima/nuvie/gui/widgets/msg_scroll.cpp:475:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  475 |                 if (is_garg_font()) {
      |                 ^~
engines/ultima/nuvie/gui/widgets/msg_scroll.cpp:481:9: note: here
  481 |         default   :
      |         ^~~~~~~
    C++      engines/ultima/nuvie/menus/audio_dialog.o
    C++      engines/ultima/nuvie/gui/widgets/converse_gump.o
    C++      engines/ultima/nuvie/menus/cheats_dialog.o
    C++      engines/ultima/nuvie/keybinding/key_actions.o
    C++      engines/ultima/nuvie/menus/game_menu_dialog.o
    C++      engines/ultima/nuvie/keybinding/keys.o
engines/ultima/nuvie/keybinding/keys.cpp: In member function 'void Ultima::Nuvie::KeyBinder::set_axis(uint8, uint8)':
engines/ultima/nuvie/keybinding/keys.cpp:702:24: warning: this statement may fall through [-Wimplicit-fallthrough=]
  702 |                 x_axis = value;
      |                 ~~~~~~~^~~~~~~
engines/ultima/nuvie/keybinding/keys.cpp:703:9: note: here
  703 |         case 1:
      |         ^~~~
engines/ultima/nuvie/keybinding/keys.cpp:704:24: warning: this statement may fall through [-Wimplicit-fallthrough=]
  704 |                 y_axis = value;
      |                 ~~~~~~~^~~~~~~
engines/ultima/nuvie/keybinding/keys.cpp:705:9: note: here
  705 |         case 2:
      |         ^~~~
engines/ultima/nuvie/keybinding/keys.cpp:706:25: warning: this statement may fall through [-Wimplicit-fallthrough=]
  706 |                 x_axis2 = value;
      |                 ~~~~~~~~^~~~~~~
engines/ultima/nuvie/keybinding/keys.cpp:707:9: note: here
  707 |         case 3:
      |         ^~~~
engines/ultima/nuvie/keybinding/keys.cpp:708:25: warning: this statement may fall through [-Wimplicit-fallthrough=]
  708 |                 y_axis2 = value;
      |                 ~~~~~~~~^~~~~~~
engines/ultima/nuvie/keybinding/keys.cpp:709:9: note: here
  709 |         case 4:
      |         ^~~~
engines/ultima/nuvie/keybinding/keys.cpp:710:25: warning: this statement may fall through [-Wimplicit-fallthrough=]
  710 |                 x_axis3 = value;
      |                 ~~~~~~~~^~~~~~~
engines/ultima/nuvie/keybinding/keys.cpp:711:9: note: here
  711 |         case 5:
      |         ^~~~
engines/ultima/nuvie/keybinding/keys.cpp:712:25: warning: this statement may fall through [-Wimplicit-fallthrough=]
  712 |                 y_axis3 = value;
      |                 ~~~~~~~~^~~~~~~
engines/ultima/nuvie/keybinding/keys.cpp:713:9: note: here
  713 |         case 6:
      |         ^~~~
engines/ultima/nuvie/keybinding/keys.cpp:714:25: warning: this statement may fall through [-Wimplicit-fallthrough=]
  714 |                 x_axis4 = value;
      |                 ~~~~~~~~^~~~~~~
engines/ultima/nuvie/keybinding/keys.cpp:715:9: note: here
  715 |         case 7:
      |         ^~~~
    C++      engines/ultima/nuvie/misc/u6_line_walker.o
    C++      engines/ultima/nuvie/misc/iavl_tree.o
    C++      engines/ultima/nuvie/menus/gameplay_dialog.o
    C++      engines/ultima/nuvie/misc/sdl_compat.o
    C++      engines/ultima/nuvie/menus/video_dialog.o
    C++      engines/ultima/nuvie/misc/u6_list.o
    C++      engines/ultima/nuvie/menus/input_dialog.o
    C++      engines/ultima/nuvie/pathfinder/actor_path_finder.o
    C++      engines/ultima/nuvie/pathfinder/dir_finder.o
    C++      engines/ultima/nuvie/pathfinder/combat_path_finder.o
    C++      engines/ultima/nuvie/pathfinder/astar_path.o
    C++      engines/ultima/nuvie/pathfinder/path.o
    C++      engines/ultima/nuvie/misc/u6_misc.o
    C++      engines/ultima/nuvie/pathfinder/path_finder.o
    C++      engines/ultima/nuvie/pathfinder/sched_path_finder.o
    C++      engines/ultima/nuvie/pathfinder/party_path_finder.o
    C++      engines/ultima/nuvie/pathfinder/u6_astar_path.o
    C++      engines/ultima/nuvie/pathfinder/seek_path.o
    C++      engines/ultima/nuvie/gui/widgets/map_window.o
engines/ultima/nuvie/gui/widgets/map_window.cpp: In member function 'virtual Ultima::Nuvie::GUI_status Ultima::Nuvie::MapWindow::MouseClick(int, int, Ultima::Shared::MouseButton)':
engines/ultima/nuvie/gui/widgets/map_window.cpp:2068:20: warning: comparison between 'enum Ultima::Shared::MouseButton' and 'enum Ultima::Shared::SpecialButtons' [-Wenum-compare]
 2068 |         if (button == USE_BUTTON && look_on_left_click) {
engines/ultima/nuvie/gui/widgets/map_window.cpp: In member function 'virtual Ultima::Nuvie::GUI_status Ultima::Nuvie::MapWindow::MouseDown(int, int, Ultima::Shared::MouseButton)':
engines/ultima/nuvie/gui/widgets/map_window.cpp:2155:28: warning: comparison between 'enum Ultima::Shared::MouseButton' and 'enum Ultima::Shared::SpecialButtons' [-Wenum-compare]
 2155 |                 if (button == WALK_BUTTON && game->get_command_bar()->get_selected_action() != -1) {
engines/ultima/nuvie/gui/widgets/map_window.cpp:2159:39: warning: comparison between 'enum Ultima::Shared::MouseButton' and 'enum Ultima::Shared::SpecialButtons' [-Wenum-compare]
 2159 |                            && (button == WALK_BUTTON || !enable_doubleclick)) {
engines/ultima/nuvie/gui/widgets/map_window.cpp:2162:35: warning: comparison between 'enum Ultima::Shared::MouseButton' and 'enum Ultima::Shared::SpecialButtons' [-Wenum-compare]
 2162 |                 } else if (button == WALK_BUTTON
engines/ultima/nuvie/gui/widgets/map_window.cpp:2163:62: warning: comparison between 'enum Ultima::Shared::MouseButton' and 'enum Ultima::Shared::SpecialButtons' [-Wenum-compare]
 2163 |                            || (!enable_doubleclick && button == USE_BUTTON
engines/ultima/nuvie/gui/widgets/map_window.cpp:2166:35: warning: comparison between 'enum Ultima::Shared::MouseButton' and 'enum Ultima::Shared::SpecialButtons' [-Wenum-compare]
 2166 |                 } else if (button == USE_BUTTON) { // you can also walk by holding the USE button
engines/ultima/nuvie/gui/widgets/map_window.cpp:2179:28: warning: comparison between 'enum Ultima::Shared::MouseButton' and 'enum Ultima::Shared::SpecialButtons' [-Wenum-compare]
 2179 |                 if (button != USE_BUTTON && button != WALK_BUTTON)
engines/ultima/nuvie/gui/widgets/map_window.cpp:2179:52: warning: comparison between 'enum Ultima::Shared::MouseButton' and 'enum Ultima::Shared::SpecialButtons' [-Wenum-compare]
 2179 |                 if (button != USE_BUTTON && button != WALK_BUTTON)
engines/ultima/nuvie/gui/widgets/map_window.cpp:2188:28: warning: comparison between 'enum Ultima::Shared::MouseButton' and 'enum Ultima::Shared::SpecialButtons' [-Wenum-compare]
 2188 |         if (!obj || button != DRAG_BUTTON)
engines/ultima/nuvie/gui/widgets/map_window.cpp:2203:20: warning: comparison between 'enum Ultima::Shared::MouseButton' and 'enum Ultima::Shared::SpecialButtons' [-Wenum-compare]
 2203 |         if (button == DRAG_BUTTON && game->is_dragging_enabled())
    C++      engines/ultima/nuvie/portraits/portrait.o
    C++      engines/ultima/nuvie/portraits/portrait_md.o
    C++      engines/ultima/nuvie/screen/dither.o
    C++      engines/ultima/nuvie/portraits/portrait_u6.o
    C++      engines/ultima/nuvie/portraits/portrait_se.o
    C++      engines/ultima/nuvie/screen/game_palette.o
    C++      engines/ultima/nuvie/screen/surface.o
    C++      engines/ultima/nuvie/save/save_game.o
    C++      engines/ultima/nuvie/sound/adlib_sfx_manager.o
    C++      engines/ultima/nuvie/sound/custom_sfx_manager.o
    C++      engines/ultima/nuvie/sound/pc_speaker_sfx_manager.o
    C++      engines/ultima/nuvie/script/script_actor.o
    C++      engines/ultima/nuvie/sound/origin_fx_adib_driver.o
    C++      engines/ultima/nuvie/sound/song.o
    C++      engines/ultima/nuvie/screen/screen.o
    C++      engines/ultima/nuvie/sound/adplug/adplug_player.o
    C++      engines/ultima/nuvie/sound/song_adplug.o
    C++      engines/ultima/nuvie/sound/adplug/emu_opl.o
    C++      engines/ultima/nuvie/sound/towns_sfx_manager.o
    C++      engines/ultima/nuvie/script/script_cutscene.o
    C++      engines/ultima/nuvie/sound/adplug/mid.o
    C++      engines/ultima/nuvie/sound/adplug/u6m.o
    C++      engines/ultima/nuvie/sound/adplug/fm_opl.o
    C++      engines/ultima/nuvie/script/script.o
    C++      engines/ultima/nuvie/sound/decoder/adlib_sfx_stream.o
    C++      engines/ultima/nuvie/sound/decoder/fm_towns_decoder_stream.o
    C++      engines/ultima/nuvie/sound/adplug/opl_class.o
    C++      engines/ultima/nuvie/sound/sound_manager.o
    C++      engines/ultima/nuvie/sound/decoder/pc_speaker.o
    C++      engines/ultima/nuvie/sound/decoder/random_collection_audio_stream.o
    C++      engines/ultima/nuvie/sound/decoder/u6_adplug_decoder_stream.o
    C++      engines/ultima/nuvie/sound/decoder/pc_speaker_stream.o
    C++      engines/ultima/nuvie/usecode/usecode.o
    C++      engines/ultima/nuvie/views/actor_view.o
    C++      engines/ultima/nuvie/views/container_view_gump.o
    C++      engines/ultima/nuvie/views/container_widget_gump.o
    C++      engines/ultima/nuvie/views/container_widget.o
engines/ultima/nuvie/views/container_widget.cpp: In member function 'virtual Ultima::Nuvie::GUI_status Ultima::Nuvie::ContainerWidget::MouseDown(int, int, Ultima::Shared::MouseButton)':
engines/ultima/nuvie/views/container_widget.cpp:206:34: warning: comparison between 'enum Ultima::Shared::MouseButton' and 'enum Ultima::Shared::SpecialButtons' [-Wenum-compare]
  206 |         if (/*actor && */(button == USE_BUTTON || button == ACTION_BUTTON || button == DRAG_BUTTON)) {
engines/ultima/nuvie/views/container_widget.cpp:206:58: warning: comparison between 'enum Ultima::Shared::MouseButton' and 'enum Ultima::Shared::SpecialButtons' [-Wenum-compare]
  206 |         if (/*actor && */(button == USE_BUTTON || button == ACTION_BUTTON || button == DRAG_BUTTON)) {
engines/ultima/nuvie/views/container_widget.cpp:206:85: warning: comparison between 'enum Ultima::Shared::MouseButton' and 'enum Ultima::Shared::SpecialButtons' [-Wenum-compare]
  206 |         if (/*actor && */(button == USE_BUTTON || button == ACTION_BUTTON || button == DRAG_BUTTON)) {
engines/ultima/nuvie/views/container_widget.cpp:211:43: warning: comparison between 'enum Ultima::Shared::MouseButton' and 'enum Ultima::Shared::SpecialButtons' [-Wenum-compare]
  211 |                                 && button == DRAG_BUTTON)
engines/ultima/nuvie/views/container_widget.cpp: In member function 'virtual Ultima::Nuvie::GUI_status Ultima::Nuvie::ContainerWidget::MouseUp(int, int, Ultima::Shared::MouseButton)':
engines/ultima/nuvie/views/container_widget.cpp:262:20: warning: comparison between 'enum Ultima::Shared::MouseButton' and 'enum Ultima::Shared::SpecialButtons' [-Wenum-compare]
  262 |         if (button == USE_BUTTON) {
    C++      engines/ultima/nuvie/views/draggable_view.o
    C++      engines/ultima/nuvie/views/doll_view_gump.o
    C++      engines/ultima/nuvie/views/doll_widget.o
engines/ultima/nuvie/views/doll_widget.cpp: In member function 'virtual Ultima::Nuvie::GUI_status Ultima::Nuvie::DollWidget::MouseDown(int, int, Ultima::Shared::MouseButton)':
engines/ultima/nuvie/views/doll_widget.cpp:356:20: warning: comparison between 'enum Ultima::Shared::MouseButton' and 'enum Ultima::Shared::SpecialButtons' [-Wenum-compare]
  356 |         if (button == ACTION_BUTTON && event->get_mode() == MOVE_MODE
engines/ultima/nuvie/views/doll_widget.cpp:362:54: warning: comparison between 'enum Ultima::Shared::MouseButton' and 'enum Ultima::Shared::SpecialButtons' [-Wenum-compare]
  362 |         if (actor && selected_obj == NULL && (button == USE_BUTTON || button == ACTION_BUTTON || button == DRAG_BUTTON)) {
engines/ultima/nuvie/views/doll_widget.cpp:362:78: warning: comparison between 'enum Ultima::Shared::MouseButton' and 'enum Ultima::Shared::SpecialButtons' [-Wenum-compare]
  362 |         if (actor && selected_obj == NULL && (button == USE_BUTTON || button == ACTION_BUTTON || button == DRAG_BUTTON)) {
engines/ultima/nuvie/views/doll_widget.cpp:362:105: warning: comparison between 'enum Ultima::Shared::MouseButton' and 'enum Ultima::Shared::SpecialButtons' [-Wenum-compare]
  362 |         if (actor && selected_obj == NULL && (button == USE_BUTTON || button == ACTION_BUTTON || button == DRAG_BUTTON)) {
engines/ultima/nuvie/views/doll_widget.cpp:367:44: warning: comparison between 'enum Ultima::Shared::MouseButton' and 'enum Ultima::Shared::SpecialButtons' [-Wenum-compare]
  367 |                                 if (button == ACTION_BUTTON && command_bar->get_selected_action() > 0
engines/ultima/nuvie/views/doll_widget.cpp:383:59: warning: comparison between 'enum Ultima::Shared::MouseButton' and 'enum Ultima::Shared::SpecialButtons' [-Wenum-compare]
  383 |                                                 && button == DRAG_BUTTON)
    C++      engines/ultima/nuvie/views/inventory_view.o
    C++      engines/ultima/nuvie/views/md_sky_strip_widget.o
    C++      engines/ultima/nuvie/views/map_editor_view.o
    C++      engines/ultima/nuvie/views/inventory_widget.o
engines/ultima/nuvie/views/inventory_widget.cpp: In member function 'virtual Ultima::Nuvie::GUI_status Ultima::Nuvie::InventoryWidget::MouseDown(int, int, Ultima::Shared::MouseButton)':
engines/ultima/nuvie/views/inventory_widget.cpp:288:20: warning: comparison between 'enum Ultima::Shared::MouseButton' and 'enum Ultima::Shared::SpecialButtons' [-Wenum-compare]
  288 |         if (button == ACTION_BUTTON && event->get_mode() == MOVE_MODE
engines/ultima/nuvie/views/inventory_widget.cpp:293:20: warning: comparison between 'enum Ultima::Shared::MouseButton' and 'enum Ultima::Shared::SpecialButtons' [-Wenum-compare]
  293 |         if (button == ACTION_BUTTON && command_bar->get_selected_action() > 0
engines/ultima/nuvie/views/inventory_widget.cpp:306:30: warning: comparison between 'enum Ultima::Shared::MouseButton' and 'enum Ultima::Shared::SpecialButtons' [-Wenum-compare]
  306 |         if (actor && (button == USE_BUTTON || button == ACTION_BUTTON || button == DRAG_BUTTON)) {
engines/ultima/nuvie/views/inventory_widget.cpp:306:54: warning: comparison between 'enum Ultima::Shared::MouseButton' and 'enum Ultima::Shared::SpecialButtons' [-Wenum-compare]
  306 |         if (actor && (button == USE_BUTTON || button == ACTION_BUTTON || button == DRAG_BUTTON)) {
engines/ultima/nuvie/views/inventory_widget.cpp:306:81: warning: comparison between 'enum Ultima::Shared::MouseButton' and 'enum Ultima::Shared::SpecialButtons' [-Wenum-compare]
  306 |         if (actor && (button == USE_BUTTON || button == ACTION_BUTTON || button == DRAG_BUTTON)) {
engines/ultima/nuvie/views/inventory_widget.cpp:310:43: warning: comparison between 'enum Ultima::Shared::MouseButton' and 'enum Ultima::Shared::SpecialButtons' [-Wenum-compare]
  310 |                                 && button == DRAG_BUTTON)
engines/ultima/nuvie/views/inventory_widget.cpp: In member function 'virtual Ultima::Nuvie::GUI_status Ultima::Nuvie::InventoryWidget::MouseUp(int, int, Ultima::Shared::MouseButton)':
engines/ultima/nuvie/views/inventory_widget.cpp:386:20: warning: comparison between 'enum Ultima::Shared::MouseButton' and 'enum Ultima::Shared::SpecialButtons' [-Wenum-compare]
  386 |         if (button == USE_BUTTON || (button == ACTION_BUTTON
engines/ultima/nuvie/views/inventory_widget.cpp:386:45: warning: comparison between 'enum Ultima::Shared::MouseButton' and 'enum Ultima::Shared::SpecialButtons' [-Wenum-compare]
  386 |         if (button == USE_BUTTON || (button == ACTION_BUTTON
engines/ultima/nuvie/views/inventory_widget.cpp:394:36: warning: comparison between 'enum Ultima::Shared::MouseButton' and 'enum Ultima::Shared::SpecialButtons' [-Wenum-compare]
  394 |                         if (button == ACTION_BUTTON && event->get_mode() == MOVE_MODE) {
    C++      engines/ultima/nuvie/screen/scale.o
    C++      engines/ultima/nuvie/views/party_view.o
engines/ultima/nuvie/views/party_view.cpp: In member function 'virtual Ultima::Nuvie::GUI_status Ultima::Nuvie::PartyView::MouseUp(int, int, Ultima::Shared::MouseButton)':
engines/ultima/nuvie/views/party_view.cpp:153:28: warning: comparison between 'enum Ultima::Shared::MouseButton' and 'enum Ultima::Shared::SpecialButtons' [-Wenum-compare]
  153 |                 if (button == ACTION_BUTTON && event->get_mode() == MOVE_MODE
engines/ultima/nuvie/views/party_view.cpp:158:54: warning: comparison between 'enum Ultima::Shared::MouseButton' and 'enum Ultima::Shared::SpecialButtons' [-Wenum-compare]
  158 |                 if ((party_view_targeting || (button == ACTION_BUTTON
    C++      engines/ultima/nuvie/views/portrait_view.o
    C++      engines/ultima/nuvie/views/scroll_view_gump.o
    C++      engines/ultima/nuvie/views/sign_view_gump.o
    C++      engines/ultima/nuvie/views/portrait_view_gump.o
engines/ultima/nuvie/views/portrait_view_gump.cpp: In member function 'virtual void Ultima::Nuvie::PortraitViewGump::Display(bool)':
engines/ultima/nuvie/views/portrait_view_gump.cpp:192:29: warning: '__builtin___snprintf_chk' output may be truncated before the last format character [-Wformat-truncation=]
  192 |         snprintf(buf, 5, "%d", actor->get_exp());
      |                             ^
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/ultima/nuvie/core/nuvie_defs.h:26,
                 from engines/ultima/nuvie/views/portrait_view_gump.cpp:23:
/usr/include/bits/stdio2.h:71:35: note: '__builtin___snprintf_chk' output between 2 and 6 bytes into a destination of size 5
   71 |   return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   72 |                                    __glibc_objsize (__s), __fmt,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   73 |                                    __va_arg_pack ());
      |                                    ~~~~~~~~~~~~~~~~~
    C++      engines/ultima/nuvie/views/scroll_widget_gump.o
    C++      engines/ultima/nuvie/views/sun_moon_strip_widget.o
    C++      engines/ultima/nuvie/views/sun_moon_ribbon.o
engines/ultima/nuvie/views/sun_moon_ribbon.cpp: In member function 'void Ultima::Nuvie::SunMoonRibbon::loadBgImage(uint8)':
engines/ultima/nuvie/views/sun_moon_ribbon.cpp:76:30: warning: '.bmp' directive writing 4 bytes into a region of size between 3 and 5 [-Wformat-overflow=]
   76 |         sprintf(filename, "%d.bmp", num);
      |                              ^~~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/ultima/nuvie/core/nuvie_defs.h:26,
                 from engines/ultima/nuvie/views/sun_moon_ribbon.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 6 and 8 bytes into a destination of size 6
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
    C++      engines/ultima/nuvie/views/vew.o
    C++      engines/ultima/nuvie/views/spell_view_gump.o
engines/ultima/nuvie/views/spell_view_gump.cpp: In member function 'void Ultima::Nuvie::SpellViewGump::loadCircleString(Ultima::Std::string)':
engines/ultima/nuvie/views/spell_view_gump.cpp:162:34: warning: '__builtin___sprintf_chk' may write a terminating nul past the end of the destination [-Wformat-overflow=]
  162 |         sprintf(filename, "%d.bmp", level);
      |                                  ^
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/ultima/nuvie/core/nuvie_defs.h:26,
                 from engines/ultima/nuvie/views/spell_view_gump.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 6 and 8 bytes into a destination of size 7
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
engines/ultima/nuvie/views/spell_view_gump.cpp: In member function 'void Ultima::Nuvie::SpellViewGump::printSpellQty(uint8, uint16, uint16)':
engines/ultima/nuvie/views/spell_view_gump.cpp:207:31: warning: '%d' directive output may be truncated writing between 1 and 5 bytes into a region of size 3 [-Wformat-truncation=]
  207 |         snprintf(num_str, 3, "%d", qty);
      |                               ^~
engines/ultima/nuvie/views/spell_view_gump.cpp:207:30: note: directive argument in the range [0, 65535]
  207 |         snprintf(num_str, 3, "%d", qty);
      |                              ^~~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/ultima/nuvie/core/nuvie_defs.h:26,
                 from engines/ultima/nuvie/views/spell_view_gump.cpp:23:
/usr/include/bits/stdio2.h:71:35: note: '__builtin___snprintf_chk' output between 2 and 6 bytes into a destination of size 3
   71 |   return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   72 |                                    __glibc_objsize (__s), __fmt,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   73 |                                    __va_arg_pack ());
      |                                    ~~~~~~~~~~~~~~~~~
engines/ultima/nuvie/views/spell_view_gump.cpp: In member function 'virtual uint8 Ultima::Nuvie::SpellViewGump::fill_cur_spell_list()':
engines/ultima/nuvie/views/spell_view_gump.cpp:131:56: warning: '.bmp' directive writing 4 bytes into a region of size between 2 and 5 [-Wformat-overflow=]
  131 |                 sprintf(filename, "spellbook_spell_%03d.bmp", cur_spells[i]);
      |                                                        ^~~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/ultima/nuvie/core/nuvie_defs.h:26,
                 from engines/ultima/nuvie/views/spell_view_gump.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 24 and 27 bytes into a destination of size 24
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
    C++      engines/ultima/nuvie/views/spell_view.o
engines/ultima/nuvie/views/spell_view.cpp: In member function 'void Ultima::Nuvie::SpellView::display_spell_text(Ultima::Nuvie::Spell*, uint16, uint8)':
engines/ultima/nuvie/views/spell_view.cpp:301:31: warning: '%d' directive output may be truncated writing between 1 and 5 bytes into a region of size 3 [-Wformat-truncation=]
  301 |         snprintf(num_str, 3, "%d", get_available_spell_count(spell));
      |                               ^~
engines/ultima/nuvie/views/spell_view.cpp:301:30: note: directive argument in the range [0, 65535]
  301 |         snprintf(num_str, 3, "%d", get_available_spell_count(spell));
      |                              ^~~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/ultima/nuvie/core/nuvie_defs.h:26,
                 from engines/ultima/nuvie/views/spell_view.cpp:23:
/usr/include/bits/stdio2.h:71:35: note: '__builtin___snprintf_chk' output between 2 and 6 bytes into a destination of size 3
   71 |   return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   72 |                                    __glibc_objsize (__s), __fmt,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   73 |                                    __va_arg_pack ());
      |                                    ~~~~~~~~~~~~~~~~~
    C++      engines/ultima/nuvie/usecode/u6_usecode.o
engines/ultima/nuvie/usecode/u6_usecode.cpp: In member function 'bool Ultima::Nuvie::U6UseCode::use_sextant(Ultima::Nuvie::Obj*, Ultima::Nuvie::UseCodeEvent)':
engines/ultima/nuvie/usecode/u6_usecode.cpp:2350:47: warning: '__builtin___sprintf_chk' may write a terminating nul past the end of the destination [-Wformat-overflow=]
 2350 |                 sprintf(buf, "\n%d{%c, %d{%c\n", y, lat, x, lon);
      |                                               ^
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./engines/ultima/nuvie/core/nuvie_defs.h:26,
                 from engines/ultima/nuvie/usecode/u6_usecode.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 11 and 19 bytes into a destination of size 18
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
    C++      engines/ultima/ultima8/audio/audio_sample.o
    C++      engines/ultima/ultima8/audio/audio_channel.o
    C++      engines/ultima/ultima8/meta_engine.o
    C++      engines/ultima/ultima8/audio/audio_mixer.o
    C++      engines/ultima/ultima8/audio/midi_player.o
    C++      engines/ultima/nuvie/views/view_manager.o
    C++      engines/ultima/ultima8/audio/music_process.o
    C++      engines/ultima/ultima8/audio/raw_audio_sample.o
    C++      engines/ultima/ultima8/audio/music_flex.o
    C++      engines/ultima/ultima8/audio/sonarc_audio_sample.o
    C++      engines/ultima/ultima8/audio/audio_process.o
    C++      engines/ultima/ultima8/audio/speech_flex.o
    C++      engines/ultima/ultima8/audio/sound_flex.o
    C++      engines/ultima/ultima8/audio/remorse_music_process.o
    C++      engines/ultima/ultima8/audio/u8_music_process.o
    C++      engines/ultima/ultima8/convert/u8/convert_shape_u8.o
    C++      engines/ultima/ultima8/convert/crusader/convert_shape_crusader.o
    C++      engines/ultima/ultima8/filesys/data.o
    C++      engines/ultima/ultima8/filesys/archive.o
    C++      engines/ultima/ultima8/conf/config_file_manager.o
    C++      engines/ultima/ultima8/filesys/archive_file.o
    C++      engines/ultima/ultima8/conf/setting_manager.o
    C++      engines/ultima/ultima8/filesys/flex_file.o
    C++      engines/ultima/ultima8/filesys/raw_archive.o
    C++      engines/ultima/ultima8/conf/ini_file.o
    C++      engines/ultima/ultima8/convert/convert_shape.o
    C++      engines/ultima/ultima8/games/game.o
    C++      engines/ultima/ultima8/filesys/savegame.o
    C++      engines/ultima/ultima8/filesys/u8_save_file.o
    C++      engines/ultima/ultima8/filesys/file_system.o
    C++      engines/ultima/ultima8/ultima8.o
    C++      engines/ultima/ultima8/games/game_info.o
    C++      engines/ultima/ultima8/games/start_crusader_process.o
    C++      engines/ultima/ultima8/games/remorse_game.o
    C++      engines/ultima/ultima8/graphics/avi_player.o
    C++      engines/ultima/ultima8/games/start_u8_process.o
    C++      engines/ultima/ultima8/graphics/cycle_process.o
    C++      engines/ultima/ultima8/graphics/anim_dat.o
    C++      engines/ultima/ultima8/graphics/frame_id.o
    C++      engines/ultima/ultima8/graphics/base_soft_render_surface.o
    C++      engines/ultima/ultima8/games/u8_game.o
    C++      engines/ultima/ultima8/games/game_data.o
    C++      engines/ultima/ultima8/graphics/fade_to_modal_process.o
    C++      engines/ultima/ultima8/graphics/gump_shape_archive.o
    C++      engines/ultima/ultima8/games/treasure_loader.o
    C++      engines/ultima/ultima8/graphics/main_shape_archive.o
    C++      engines/ultima/ultima8/graphics/palette.o
    C++      engines/ultima/ultima8/graphics/inverter_process.o
    C++      engines/ultima/ultima8/graphics/render_surface.o
    C++      engines/ultima/ultima8/graphics/palette_manager.o
    C++      engines/ultima/ultima8/graphics/palette_fader_process.o
    C++      engines/ultima/ultima8/graphics/shape_archive.o
    C++      engines/ultima/ultima8/graphics/shape_frame.o
    C++      engines/ultima/ultima8/graphics/raw_shape_frame.o
    C++      engines/ultima/ultima8/graphics/point_scaler.o
    C++      engines/ultima/ultima8/graphics/shape_info.o
    C++      engines/ultima/ultima8/graphics/texture_png.o
    C++      engines/ultima/ultima8/graphics/texture.o
    C++      engines/ultima/ultima8/graphics/texture_bitmap.o
    C++      engines/ultima/ultima8/graphics/skf_player.o
    C++      engines/ultima/ultima8/graphics/shape.o
    C++      engines/ultima/ultima8/graphics/xform_blend.o
    C++      engines/ultima/ultima8/graphics/texture_targa.o
    C++      engines/ultima/ultima8/graphics/wpn_ovlay_dat.o
    C++      engines/ultima/ultima8/graphics/fonts/fixed_width_font.o
    C++      engines/ultima/ultima8/graphics/fonts/rendered_text.o
    C++      engines/ultima/ultima8/graphics/fonts/font_shape_archive.o
    C++      engines/ultima/ultima8/graphics/fonts/jp_font.o
    C++      engines/ultima/ultima8/graphics/fonts/font_manager.o
    C++      engines/ultima/ultima8/graphics/type_flags.o
    C++      engines/ultima/ultima8/graphics/fonts/jp_rendered_text.o
    C++      engines/ultima/ultima8/graphics/fonts/font.o
    C++      engines/ultima/ultima8/graphics/fonts/ttf_rendered_text.o
    C++      engines/ultima/ultima8/graphics/fonts/shape_rendered_text.o
    C++      engines/ultima/ultima8/graphics/fonts/shape_font.o
    C++      engines/ultima/ultima8/gumps/ask_gump.o
    C++      engines/ultima/ultima8/gumps/book_gump.o
    C++      engines/ultima/ultima8/gumps/bark_gump.o
    C++      engines/ultima/ultima8/gumps/computer_gump.o
    C++      engines/ultima/ultima8/graphics/soft_render_surface.o
    C++      engines/ultima/ultima8/graphics/fonts/tt_font.o
    C++      engines/ultima/ultima8/gumps/cru_energy_gump.o
    C++      engines/ultima/ultima8/gumps/cru_ammo_gump.o
    C++      engines/ultima/ultima8/gumps/cru_health_gump.o
    C++      engines/ultima/ultima8/gumps/credits_gump.o
    C++      engines/ultima/ultima8/gumps/container_gump.o
    C++      engines/ultima/ultima8/gumps/cru_pickup_area_gump.o
    C++      engines/ultima/ultima8/gumps/cru_stat_gump.o
    C++      engines/ultima/ultima8/gumps/cru_inventory_gump.o
    C++      engines/ultima/ultima8/gumps/cru_weapon_gump.o
    C++      engines/ultima/ultima8/gumps/cru_pickup_gump.o
    C++      engines/ultima/ultima8/gumps/cru_status_gump.o
    C++      engines/ultima/ultima8/gumps/gump_notify_process.o
    C++      engines/ultima/ultima8/gumps/fast_area_vis_gump.o
    C++      engines/ultima/ultima8/gumps/desktop_gump.o
    C++      engines/ultima/ultima8/gumps/item_relative_gump.o
    C++      engines/ultima/ultima8/gumps/main_menu_process.o
    C++      engines/ultima/ultima8/gumps/inverter_gump.o
    C++      engines/ultima/ultima8/gumps/keypad_gump.o
    C++      engines/ultima/ultima8/gumps/game_map_gump.o
    C++      engines/ultima/ultima8/gumps/mini_stats_gump.o
    C++      engines/ultima/ultima8/gumps/message_box_gump.o
    C++      engines/ultima/ultima8/gumps/minimap_gump.o
    C++      engines/ultima/ultima8/gumps/modal_gump.o
    C++      engines/ultima/ultima8/gumps/menu_gump.o
    C++      engines/ultima/ultima8/gumps/gump.o
    C++      engines/ultima/ultima8/gumps/movie_gump.o
    C++      engines/ultima/ultima8/gumps/resizable_gump.o
    C++      engines/ultima/ultima8/gumps/scroll_gump.o
    C++      engines/ultima/ultima8/gumps/paged_gump.o
    C++      engines/ultima/ultima8/gumps/quit_gump.o
    C++      engines/ultima/ultima8/gumps/readable_gump.o
    C++      engines/ultima/ultima8/gumps/paperdoll_gump.o
    C++      engines/ultima/ultima8/gumps/remorse_menu_gump.o
    C++      engines/ultima/ultima8/gumps/scaler_gump.o
    C++      engines/ultima/ultima8/gumps/translucent_gump.o
    C++      engines/ultima/ultima8/gumps/target_gump.o
    C++      engines/ultima/ultima8/gumps/widgets/sliding_widget.o
    C++      engines/ultima/ultima8/gumps/widgets/button_widget.o
    C++      engines/ultima/ultima8/gumps/slider_gump.o
    C++      engines/ultima/ultima8/gumps/shape_viewer_gump.o
    C++      engines/ultima/ultima8/gumps/widgets/edit_widget.o
    C++      engines/ultima/ultima8/kernel/delay_process.o
    C++      engines/ultima/ultima8/gumps/widgets/text_widget.o
    C++      engines/ultima/ultima8/gumps/u8_save_gump.o
    C++      engines/ultima/ultima8/kernel/object.o
    C++      engines/ultima/ultima8/misc/args.o
    C++      engines/ultima/ultima8/misc/encoding.o
    C++      engines/ultima/ultima8/kernel/process.o
    C++      engines/ultima/ultima8/kernel/core_app.o
    C++      engines/ultima/ultima8/kernel/kernel.o
    C++      engines/ultima/ultima8/misc/istring.o
    C++      engines/ultima/ultima8/misc/id_man.o
    C++      engines/ultima/ultima8/usecode/bit_set.o
    C++      engines/ultima/ultima8/kernel/mouse.o
    C++      engines/ultima/ultima8/usecode/byte_set.o
    C++      engines/ultima/ultima8/kernel/object_manager.o
    C++      engines/ultima/ultima8/usecode/uc_stack.o
    C++      engines/ultima/ultima8/usecode/uc_list.o
    C++      engines/ultima/ultima8/usecode/uc_process.o
    C++      engines/ultima/ultima8/usecode/usecode.o
    C++      engines/ultima/ultima8/usecode/usecode_flex.o
    C++      engines/ultima/ultima8/misc/util.o
    C++      engines/ultima/ultima8/world/create_item_process.o
    C++      engines/ultima/ultima8/world/crosshair_process.o
    C++      engines/ultima/ultima8/world/camera_process.o
    C++      engines/ultima/ultima8/world/damage_info.o
    C++      engines/ultima/ultima8/world/destroy_item_process.o
    C++      engines/ultima/ultima8/world/container.o
    C++      engines/ultima/ultima8/world/egg_hatcher_process.o
    C++      engines/ultima/ultima8/world/fire_type_table.o
    C++      engines/ultima/ultima8/world/egg.o
    C++      engines/ultima/ultima8/misc/debugger.o
    C++      engines/ultima/ultima8/world/fire_type.o
    C++      engines/ultima/ultima8/world/get_object.o
    C++      engines/ultima/ultima8/world/fireball_process.o
    C++      engines/ultima/ultima8/world/glob_egg.o
    C++      engines/ultima/ultima8/world/gravity_process.o
    C++      engines/ultima/ultima8/world/item_factory.o
    C++      engines/ultima/ultima8/world/map_glob.o
    C++      engines/ultima/ultima8/world/item_selection_process.o
    C++      engines/ultima/ultima8/world/missile_tracker.o
    C++      engines/ultima/ultima8/world/current_map.o
    C++      engines/ultima/ultima8/world/monster_egg.o
    C++      engines/ultima/ultima8/world/map.o
    C++      engines/ultima/ultima8/world/snap_process.o
    C++      engines/ultima/ultima8/world/split_item_process.o
    C++      engines/ultima/ultima8/world/teleport_egg.o
    C++      engines/ultima/ultima8/world/sprite_process.o
    C++      engines/ultima/ultima8/world/target_reticle_process.o
    C++      engines/ultima/ultima8/world/actors/actor_bark_notify_process.o
    C++      engines/ultima/ultima8/world/item_sorter.o
    C++      engines/ultima/ultima8/world/super_sprite_process.o
    C++      engines/ultima/ultima8/world/actors/animation.o
    C++      engines/ultima/ultima8/world/world.o
    C++      engines/ultima/ultima8/world/actors/ambush_process.o
    C++      engines/ultima/ultima8/world/actors/anim_action.o
    C++      engines/ultima/ultima8/world/actors/actor_anim_process.o
    C++      engines/ultima/ultima8/world/actors/avatar_death_process.o
    C++      engines/ultima/ultima8/world/actors/avatar_gravity_process.o
    C++      engines/ultima/ultima8/usecode/uc_machine.o
    C++      engines/ultima/ultima8/world/actors/battery_charger_process.o
    C++      engines/ultima/ultima8/world/actors/animation_tracker.o
    C++      engines/ultima/ultima8/world/actors/clear_feign_death_process.o
    C++      engines/ultima/ultima8/world/actors/combat_dat.o
    C++      engines/ultima/ultima8/world/actors/cru_healer_process.o
    C++      engines/ultima/ultima8/world/actors/heal_process.o
    C++      engines/ultima/ultima8/world/actors/grant_peace_process.o
    C++      engines/ultima/ultima8/world/actors/guard_process.o
    C++      engines/ultima/ultima8/world/actors/avatar_mover_process.o
    C++      engines/ultima/ultima8/world/actors/combat_process.o
    C++      engines/ultima/ultima8/world/actors/actor.o
    C++      engines/ultima/ultima8/world/actors/loiter_process.o
    C++      engines/ultima/ultima8/world/item.o
    C++      engines/ultima/ultima8/world/actors/npc_dat.o
    C++      engines/ultima/ultima8/world/actors/resurrection_process.o
    C++      engines/ultima/ultima8/world/actors/quick_avatar_mover_process.o
    C++      engines/ultima/ultima8/world/actors/scheduler_process.o
    C++      engines/ultima/ultima8/world/actors/targeted_anim_process.o
    C++      engines/ultima/ultima8/world/actors/pathfinder_process.o
    C++      engines/ultima/ultima8/world/actors/surrender_process.o
    C++      engines/ultima/ultima8/world/actors/teleport_to_egg_process.o
    C++      engines/ultima/ultima8/world/actors/pathfinder.o
    C++      engines/voyeur/debugger.o
    C++      engines/ultima/ultima8/world/actors/main_actor.o
    C++      engines/voyeur/data.o
    C++      engines/voyeur/detection.o
    C++      engines/voyeur/animation.o
    C++      engines/voyeur/sound.o
    C++      engines/voyeur/events.o
    C++      engines/voyeur/staticres.o
    C++      engines/wage/debugger.o
    C++      engines/voyeur/files_threads.o
    C++      engines/wage/design.o
    C++      engines/voyeur/screen.o
    C++      engines/voyeur/voyeur.o
    C++      engines/wage/combat.o
    C++      engines/voyeur/voyeur_game.o
    C++      engines/wage/detection.o
    C++      engines/wage/dialog.o
    C++      engines/wage/randomhat.o
    C++      engines/voyeur/files.o
    C++      engines/wage/gui.o
    C++      engines/wage/util.o
    C++      engines/wage/sound.o
    C++      engines/wage/entities.o
    C++      engines/wage/saveload.o
    C++      engines/wage/wage.o
    C++      engines/wage/script.o
    C++      engines/wintermute/ad/ad_inventory.o
    C++      engines/wintermute/ad/ad_entity.o
    C++      engines/wintermute/ad/ad_inventory_box.o
    C++      engines/wage/world.o
    C++      engines/wintermute/ad/ad_node_state.o
    C++      engines/wintermute/ad/ad_actor.o
    C++      engines/wintermute/ad/ad_item.o
    C++      engines/wintermute/ad/ad_path_point.o
    C++      engines/wintermute/ad/ad_path.o
    C++      engines/wintermute/ad/ad_layer.o
    C++      engines/wintermute/ad/ad_response.o
    C++      engines/wintermute/ad/ad_region.o
    C++      engines/wintermute/ad/ad_response_context.o
    C++      engines/wintermute/ad/ad_rot_level.o
    C++      engines/wintermute/ad/ad_scale_level.o
    C++      engines/wintermute/ad/ad_scene_node.o
    C++      engines/wintermute/ad/ad_scene_state.o
    C++      engines/wintermute/ad/ad_object.o
    C++      engines/wintermute/ad/ad_sprite_set.o
    C++      engines/wintermute/ad/ad_response_box.o
    C++      engines/wintermute/ad/ad_sentence.o
    C++      engines/wintermute/ad/ad_game.o
    C++      engines/wintermute/ad/ad_talk_def.o
    C++      engines/wintermute/ad/ad_talk_node.o
    C++      engines/wintermute/ad/ad_talk_holder.o
    C++      engines/wintermute/base/scriptables/debuggable/debuggable_script_engine.o
    C++      engines/wintermute/base/scriptables/debuggable/debuggable_script.o
    C++      engines/wintermute/ad/ad_waypoint_group.o
    C++      engines/wintermute/base/scriptables/script_ext_date.o
    C++      engines/wintermute/base/scriptables/script_stack.o
    C++      engines/wintermute/base/scriptables/script_ext_directory.o
    C++      engines/wintermute/base/scriptables/script_ext_array.o
    C++      engines/wintermute/base/scriptables/script_engine.o
    C++      engines/wintermute/base/scriptables/script.o
    C++      engines/wintermute/base/scriptables/script_ext_object.o
    C++      engines/wintermute/base/scriptables/script_ext_math.o
    C++      engines/wintermute/base/scriptables/script_value.o
    C++      engines/wintermute/base/scriptables/script_ext_mem_buffer.o
    C++      engines/wintermute/base/file/base_file.o
    C++      engines/wintermute/base/scriptables/script_ext_file.o
    C++      engines/wintermute/base/file/base_file_entry.o
    C++      engines/wintermute/base/scriptables/script_ext_string.o
    C++      engines/wintermute/base/file/base_savefile_manager_file.o
    C++      engines/wintermute/base/file/base_disk_file.o
    C++      engines/wintermute/base/file/base_save_thumb_file.o
    C++      engines/wintermute/ad/ad_scene.o
    C++      engines/wintermute/base/file/base_package.o
    C++      engines/wintermute/base/font/base_font.o
    C++      engines/wintermute/base/font/base_font_storage.o
    C++      engines/wintermute/base/font/base_font_bitmap.o
    C++      engines/wintermute/base/gfx/base_image.o
    C++      engines/wintermute/base/gfx/base_surface.o
    C++      engines/wintermute/base/gfx/base_renderer.o
    C++      engines/wintermute/base/font/base_font_truetype.o
    C++      engines/wintermute/base/particles/part_force.o
    C++      engines/wintermute/base/particles/part_particle.o
    C++      engines/wintermute/base/gfx/osystem/render_ticket.o
    C++      engines/wintermute/base/gfx/osystem/base_surface_osystem.o
    C++      engines/wintermute/base/sound/base_sound.o
    C++      engines/wintermute/base/base_active_rect.o
    C++      engines/wintermute/base/base_dynamic_buffer.o
    C++      engines/wintermute/base/sound/base_sound_buffer.o
    C++      engines/wintermute/base/gfx/osystem/base_render_osystem.o
    C++      engines/wintermute/base/sound/base_sound_manager.o
    C++      engines/wintermute/base/base.o
    C++      engines/wintermute/base/base_engine.o
    C++      engines/wintermute/base/base_fader.o
    C++      engines/wintermute/base/base_game_settings.o
    C++      engines/wintermute/base/particles/part_emitter.o
    C++      engines/wintermute/base/base_named_object.o
    C++      engines/wintermute/base/base_game_music.o
    C++      engines/wintermute/base/base_keyboard_state.o
    C++      engines/wintermute/base/base_frame.o
    C++      engines/wintermute/base/base_point.o
    C++      engines/wintermute/base/base_quick_msg.o
    C++      engines/wintermute/base/base_file_manager.o
    C++      engines/wintermute/base/base_object.o
    C++      engines/wintermute/base/base_parser.o
    C++      engines/wintermute/base/base_scriptable.o
    C++      engines/wintermute/base/base_persistence_manager.o
    C++      engines/wintermute/base/base_region.o
    C++      engines/wintermute/base/base_transition_manager.o
    C++      engines/wintermute/base/base_string_table.o
    C++      engines/wintermute/base/base_surface_storage.o
    C++      engines/wintermute/base/base_script_holder.o
    C++      engines/wintermute/base/base_viewport.o
    C++      engines/wintermute/base/base_sub_frame.o
    C++      engines/wintermute/base/base_sprite.o
    C++      engines/wintermute/base/save_thumb_helper.o
    C++      engines/wintermute/base/timer.o
    C++      engines/wintermute/ext/dll_geturl.o
    C++      engines/wintermute/ext/dll_dlltest.o
    C++      engines/wintermute/ext/dll_httpconnect.o
    C++      engines/wintermute/ext/dll_img.o
    C++      engines/wintermute/ext/dll_kernel32.o
    C++      engines/wintermute/ext/dll_installutil.o
    C++      engines/wintermute/base/saveload.o
    C++      engines/wintermute/ext/dll_shell32.o
    C++      engines/wintermute/ext/dll_tools.o
    C++      engines/wintermute/debugger/breakpoint.o
    C++      engines/wintermute/debugger/listing_providers/blank_listing.o
    C++      engines/wintermute/ext/wme_galaxy.o
    C++      engines/wintermute/ext/wme_3fstatistics.o
    C++      engines/wintermute/debugger/listing_providers/blank_listing_provider.o
    C++      engines/wintermute/ext/wme_steam.o
    C++      engines/wintermute/debugger/script_monitor.o
    C++      engines/wintermute/debugger/error.o
    C++      engines/wintermute/debugger/listing_providers/basic_source_listing_provider.o
    C++      engines/wintermute/debugger/listing_providers/source_listing.o
    C++      engines/wintermute/debugger/watch.o
    C++      engines/wintermute/base/base_game.o
    C++      engines/wintermute/debugger/listing_providers/cached_source_listing_provider.o
    C++      engines/wintermute/math/math_util.o
    C++      engines/wintermute/debugger/listing.o
    C++      engines/wintermute/math/matrix4.o
    C++      engines/wintermute/debugger/watch_instance.o
    C++      engines/wintermute/math/vector2.o
    C++      engines/wintermute/debugger/debugger_controller.o
    C++      engines/wintermute/system/sys_instance.o
    C++      engines/wintermute/platform_osystem.o
    C++      engines/wintermute/system/sys_class.o
    C++      engines/wintermute/ui/ui_entity.o
    C++      engines/wintermute/ui/ui_edit.o
    C++      engines/wintermute/ui/ui_button.o
    C++      engines/wintermute/ui/ui_text.o
    C++      engines/wintermute/system/sys_class_registry.o
    C++      engines/wintermute/ui/ui_object.o
    C++      engines/wintermute/ui/ui_tiled_image.o
    C++      engines/wintermute/utils/crc.o
    C++      engines/wintermute/utils/convert_utf.o
    C++      engines/wintermute/utils/path_util.o
    C++      engines/wintermute/utils/string_util.o
    C++      engines/wintermute/utils/utils.o
    C++      engines/wintermute/video/video_player.o
    C++      engines/wintermute/video/subtitle_card.o
    C++      engines/wintermute/video/video_theora_player.o
    C++      engines/wintermute/video/video_subtitler.o
    C++      engines/wintermute/ui/ui_window.o
    C++      engines/wintermute/debugger.o
    C++      engines/wintermute/persistent.o
    C++      engines/wintermute/wintermute.o
    C++      engines/xeen/swordsofxeen/swordsofxeen.o
    C++      engines/xeen/worldofxeen/worldofxeen.o
    C++      engines/xeen/swordsofxeen/swordsofxeen_menu.o
    C++      engines/xeen/worldofxeen/worldofxeen_menu.o
In file included from ./common/array.h:29,
                 from ./common/system.h:28,
                 from ./engines/xeen/xeen.h:27,
                 from ./engines/xeen/worldofxeen/worldofxeen_menu.h:26,
                 from engines/xeen/worldofxeen/worldofxeen_menu.cpp:24:
./common/memory.h: In instantiation of 'Type* Common::uninitialized_copy(In, In, Type*) [with In = Xeen::SpriteResource*; Type = Xeen::SpriteResource]':
./common/array.h:277:22:   required from 'void Common::Array<T>::reserve(Common::Array<T>::size_type) [with T = Xeen::SpriteResource; Common::Array<T>::size_type = unsigned int]'
./common/array.h:283:3:   required from 'void Common::Array<T>::resize(Common::Array<T>::size_type) [with T = Xeen::SpriteResource; Common::Array<T>::size_type = unsigned int]'
engines/xeen/worldofxeen/worldofxeen_menu.cpp:61:27:   required from here
./common/memory.h:38:17: warning: implicitly-declared 'Xeen::SpriteResource::SpriteResource(const Xeen::SpriteResource&)' is deprecated [-Wdeprecated-copy]
   38 |                 new ((void *)dst++) Type(*first++);
      |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./engines/xeen/combat.h:29,
                 from ./engines/xeen/xeen.h:33,
                 from ./engines/xeen/worldofxeen/worldofxeen_menu.h:26,
                 from engines/xeen/worldofxeen/worldofxeen_menu.cpp:24:
./engines/xeen/sprites.h:87:25: note: because 'Xeen::SpriteResource' has user-provided 'Xeen::SpriteResource& Xeen::SpriteResource::operator=(const Xeen::SpriteResource&)'
   87 |         SpriteResource &operator=(const SpriteResource &src);
      |                         ^~~~~~~~
    C++      engines/xeen/dialogs/credits_screen.o
    C++      engines/xeen/worldofxeen/clouds_cutscenes.o
    C++      engines/xeen/worldofxeen/worldofxeen_cutscenes.o
    C++      engines/xeen/dialogs/dialogs_awards.o
    C++      engines/xeen/dialogs/dialogs.o
    C++      engines/xeen/dialogs/dialogs_copy_protection.o
    C++      engines/xeen/dialogs/dialogs_char_info.o
    C++      engines/wintermute/detection.o
    C++      engines/xeen/dialogs/dialogs_difficulty.o
    C++      engines/xeen/worldofxeen/darkside_cutscenes.o
    C++      engines/xeen/dialogs/dialogs_control_panel.o
    C++      engines/xeen/dialogs/dialogs_create_char.o
    C++      engines/xeen/dialogs/dialogs_dismiss.o
    C++      engines/xeen/dialogs/dialogs_exchange.o
    C++      engines/xeen/dialogs/dialogs_info.o
    C++      engines/xeen/dialogs/dialogs_message.o
    C++      engines/xeen/dialogs/dialogs_query.o
    C++      engines/xeen/dialogs/dialogs_input.o
    C++      engines/xeen/dialogs/dialogs_map.o
    C++      engines/xeen/dialogs/dialogs_quick_fight.o
    C++      engines/xeen/dialogs/dialogs_party.o
    C++      engines/xeen/dialogs/dialogs_quests.o
    C++      engines/xeen/dialogs/dialogs_quick_ref.o
    C++      engines/xeen/dialogs/please_wait.o
    C++      engines/xeen/dialogs/dialogs_whowill.o
    C++      engines/xeen/dialogs/dialogs_items.o
    C++      engines/xeen/cutscenes.o
    C++      engines/xeen/debugger.o
    C++      engines/xeen/events.o
    C++      engines/xeen/font.o
    C++      engines/xeen/detection.o
    C++      engines/xeen/dialogs/dialogs_spells.o
    C++      engines/xeen/character.o
    C++      engines/xeen/interface_minimap.o
    C++      engines/xeen/combat.o
engines/xeen/combat.cpp: In constructor 'Xeen::Combat::Combat(Xeen::XeenEngine*)':
engines/xeen/combat.cpp:97:21: warning: array subscript 32 is above array bounds of 'int [32][32]' [-Warray-bounds]
   97 |         Common::fill(&_monsterMap[0][0], &_monsterMap[32][32], 0);
      |         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./engines/xeen/character.h:30,
                 from engines/xeen/combat.cpp:25:
./engines/xeen/combat.h:166:13: note: while referencing 'Xeen::Combat::_monsterMap'
  166 |         int _monsterMap[32][32];
      |             ^~~~~~~~~~~
engines/xeen/combat.cpp: In member function 'void Xeen::Combat::moveMonsters()':
engines/xeen/combat.cpp:455:21: warning: array subscript 32 is above array bounds of 'int [32][32]' [-Warray-bounds]
  455 |         Common::fill(&_monsterMap[0][0], &_monsterMap[32][32], 0);
      |         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./engines/xeen/character.h:30,
                 from engines/xeen/combat.cpp:25:
./engines/xeen/combat.h:166:13: note: while referencing 'Xeen::Combat::_monsterMap'
  166 |         int _monsterMap[32][32];
      |             ^~~~~~~~~~~
    C++      engines/xeen/files.o
    C++      engines/xeen/interface.o
    C++      engines/xeen/patcher.o
    C++      engines/xeen/item.o
    C++      engines/xeen/screen.o
    C++      engines/xeen/saves.o
    C++      engines/xeen/resources.o
    C++      engines/xeen/sound_driver.o
    C++      engines/xeen/locations.o
engines/xeen/locations.cpp: In member function 'virtual Common::String Xeen::Locations::TrainingLocation::createLocationText(Xeen::Character&)':
engines/xeen/locations.cpp:1063:60: warning: comparison of integer expressions of different signedness: 'int' and 'uint' {aka 'unsigned int'} [-Wsign-compare]
 1063 |         if (_experienceToNextLevel && ch._level._permanent < _maxLevel) {
      |                                       ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
engines/xeen/locations.cpp:1068:41: warning: comparison of integer expressions of different signedness: 'int' and 'uint' {aka 'unsigned int'} [-Wsign-compare]
 1068 |         } else if (ch._level._permanent >= _maxLevel) {
      |                    ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
engines/xeen/locations.cpp: In member function 'virtual Xeen::Character* Xeen::Locations::TrainingLocation::doOptions(Xeen::Character*)':
engines/xeen/locations.cpp:1110:50: warning: comparison of integer expressions of different signedness: 'int' and 'uint' {aka 'unsigned int'} [-Wsign-compare]
 1110 |                         if (c->_level._permanent >= _maxLevel) {
      |                             ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
In file included from ./common/array.h:29,
                 from ./common/str-array.h:26,
                 from ./engines/xeen/locations.h:27,
                 from engines/xeen/locations.cpp:23:
./common/memory.h: In instantiation of 'Type* Common::uninitialized_copy(In, In, Type*) [with In = Xeen::SpriteResource*; Type = Xeen::SpriteResource]':
./common/array.h:277:22:   required from 'void Common::Array<T>::reserve(Common::Array<T>::size_type) [with T = Xeen::SpriteResource; Common::Array<T>::size_type = unsigned int]'
./common/array.h:283:3:   required from 'void Common::Array<T>::resize(Common::Array<T>::size_type) [with T = Xeen::SpriteResource; Common::Array<T>::size_type = unsigned int]'
engines/xeen/locations.cpp:43:22:   required from here
./common/memory.h:38:17: warning: implicitly-declared 'Xeen::SpriteResource::SpriteResource(const Xeen::SpriteResource&)' is deprecated [-Wdeprecated-copy]
   38 |                 new ((void *)dst++) Type(*first++);
      |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./engines/xeen/cutscenes.h:27,
                 from ./engines/xeen/dialogs/dialogs.h:29,
                 from ./engines/xeen/locations.h:28,
                 from engines/xeen/locations.cpp:23:
./engines/xeen/sprites.h:87:25: note: because 'Xeen::SpriteResource' has user-provided 'Xeen::SpriteResource& Xeen::SpriteResource::operator=(const Xeen::SpriteResource&)'
   87 |         SpriteResource &operator=(const SpriteResource &src);
      |                         ^~~~~~~~
    C++      engines/xeen/sound.o
    C++      engines/xeen/sound_driver_adlib.o
    C++      engines/xeen/scripts.o
    C++      engines/xeen/map.o
In file included from engines/xeen/map.cpp:24:
./engines/xeen/map.h: In instantiation of 'void Common::Array<T>::push_back(const T&) [with T = Xeen::MonsterObjectData::SpriteResourceEntry]':
engines/xeen/map.cpp:403:29:   required from here
./engines/xeen/map.h:316:16: warning: implicitly-declared 'Xeen::SpriteResource::SpriteResource(const Xeen::SpriteResource&)' is deprecated [-Wdeprecated-copy]
  316 |         struct SpriteResourceEntry {
      |                ^~~~~~~~~~~~~~~~~~~
In file included from ./engines/xeen/combat.h:29,
                 from ./engines/xeen/map.h:29,
                 from engines/xeen/map.cpp:24:
./engines/xeen/sprites.h:87:25: note: because 'Xeen::SpriteResource' has user-provided 'Xeen::SpriteResource& Xeen::SpriteResource::operator=(const Xeen::SpriteResource&)'
   87 |         SpriteResource &operator=(const SpriteResource &src);
      |                         ^~~~~~~~
In file included from engines/xeen/map.cpp:24:
./engines/xeen/map.h:316:16: warning: implicitly-declared 'Xeen::SpriteResource::SpriteResource(const Xeen::SpriteResource&)' is deprecated [-Wdeprecated-copy]
  316 |         struct SpriteResourceEntry {
      |                ^~~~~~~~~~~~~~~~~~~
In file included from ./engines/xeen/combat.h:29,
                 from ./engines/xeen/map.h:29,
                 from engines/xeen/map.cpp:24:
./engines/xeen/sprites.h:87:25: note: because 'Xeen::SpriteResource' has user-provided 'Xeen::SpriteResource& Xeen::SpriteResource::operator=(const Xeen::SpriteResource&)'
   87 |         SpriteResource &operator=(const SpriteResource &src);
      |                         ^~~~~~~~
In file included from ./engines/xeen/map.h:27,
                 from engines/xeen/map.cpp:24:
./common/array.h:106:25: note: synthesized method 'Xeen::MonsterObjectData::SpriteResourceEntry::SpriteResourceEntry(const Xeen::MonsterObjectData::SpriteResourceEntry&)' first required here
  106 |                         new ((void *)&_storage[_size++]) T(element);
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    C++      engines/xeen/party.o
    C++      engines/xeen/subtitles.o
    C++      engines/xeen/xsurface.o
    C++      engines/zvision/core/clock.o
    C++      engines/xeen/spells.o
    C++      engines/xeen/sprites.o
    C++      engines/xeen/window.o
    C++      engines/zvision/file/lzss_read_stream.o
    C++      engines/zvision/core/console.o
    C++      engines/zvision/core/events.o
    C++      engines/xeen/xeen.o
    C++      engines/zvision/file/save_manager.o
    C++      engines/zvision/graphics/cursors/cursor.o
    C++      engines/zvision/graphics/cursors/cursor_manager.o
    C++      engines/zvision/file/zfs_archive.o
    C++      engines/zvision/file/search_manager.o
    C++      engines/zvision/graphics/effects/light.o
    C++      engines/zvision/detection.o
    C++      engines/zvision/graphics/render_table.o
    C++      engines/zvision/graphics/effects/wave.o
    C++      engines/zvision/graphics/effects/fog.o
    C++      engines/zvision/scripting/control.o
    C++      engines/zvision/scripting/controls/hotmov_control.o
    C++      engines/zvision/scripting/controls/input_control.o
    C++      engines/zvision/scripting/controls/fist_control.o
    C++      engines/zvision/scripting/controls/paint_control.o
    C++      engines/zvision/scripting/actions.o
    C++      engines/zvision/scripting/controls/lever_control.o
    C++      engines/zvision/scripting/controls/push_toggle_control.o
    C++      engines/xeen/interface_scene.o
    C++      engines/zvision/scripting/controls/safe_control.o
    C++      engines/zvision/scripting/controls/save_control.o
    C++      engines/zvision/scripting/inventory.o
    C++      engines/zvision/scripting/controls/slot_control.o
    C++      engines/zvision/scripting/controls/titler_control.o
    C++      engines/zvision/graphics/render_manager.o
    C++      engines/zvision/scripting/effects/distort_effect.o
    C++      engines/zvision/scripting/effects/region_effect.o
    C++      engines/zvision/scripting/effects/animation_effect.o
    C++      engines/zvision/scripting/effects/syncsound_effect.o
    C++      engines/zvision/scripting/scr_file_handling.o
    C++      engines/zvision/scripting/effects/music_effect.o
    C++      engines/zvision/scripting/menu.o
engines/zvision/scripting/menu.cpp: In member function 'virtual void ZVision::MenuZGI::process(uint32)':
engines/zvision/scripting/menu.cpp:396:73: warning: '1.tga' directive writing 5 bytes into a region of size between 3 and 9 [-Wformat-overflow=]
  396 |                                                 sprintf(buf, "gmzwu%2.2x1.tga", curItemId);
      |                                                                         ^~~~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./common/rect.h:26,
                 from ./engines/zvision/graphics/render_table.h:26,
                 from ./engines/zvision/graphics/render_manager.h:26,
                 from engines/zvision/scripting/menu.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 13 and 19 bytes into a destination of size 16
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
engines/zvision/scripting/menu.cpp:398:73: warning: '1.tga' directive writing 5 bytes into a region of size between 3 and 9 [-Wformat-overflow=]
  398 |                                                 sprintf(buf, "gmzxu%2.2x1.tga", curItemId);
      |                                                                         ^~~~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from ./common/rect.h:26,
                 from ./engines/zvision/graphics/render_table.h:26,
                 from ./engines/zvision/graphics/render_manager.h:26,
                 from engines/zvision/scripting/menu.cpp:23:
/usr/include/bits/stdio2.h:38:34: note: '__builtin___sprintf_chk' output between 13 and 19 bytes into a destination of size 16
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
    C++      engines/zvision/scripting/effects/timer_effect.o
    C++      engines/zvision/sound/midi.o
    C++      engines/zvision/scripting/effects/ttytext_effect.o
    C++      engines/zvision/text/string_manager.o
    C++      engines/zvision/text/subtitles.o
    C++      engines/zvision/sound/zork_raw.o
    C++      engines/zvision/text/truetype_font.o
    C++      engines/zvision/video/zork_avi_decoder.o
    C++      engines/zvision/video/rlf_decoder.o
    C++      engines/zvision/video/video.o
    C++      engines/zvision/scripting/script_manager.o
    C++      engines/zvision/text/text.o
    C++      engines/obsolete.o
    C++      engines/zvision/zvision.o
    C++      engines/savestate.o
    C++      engines/game.o
    C++      engines/dialogs.o
    C++      gui/chooser.o
    C++      engines/engine.o
    C++      engines/metaengine.o
    C++      gui/browser.o
    C++      engines/advancedDetector.o
    C++      gui/dialog.o
    C++      gui/error.o
    C++      gui/EventRecorder.o
    C++      gui/console.o
    C++      gui/about.o
    C++      gui/filebrowser-dialog.o
    C++      gui/debugger.o
    C++      gui/object.o
    C++      gui/message.o
    C++      gui/gui-manager.o
    C++      gui/saveload.o
    C++      gui/editgamedialog.o
    C++      gui/themebrowser.o
    C++      gui/massadd.o
    C++      gui/launcher.o
    C++      gui/predictivedialog.o
    C++      gui/ThemeEval.o
    C++      gui/animation/Animation.o
    C++      gui/ThemeLayout.o
    C++      gui/Tooltip.o
    C++      gui/unknown-game-dialog.o
    C++      gui/animation/RepeatAnimationWrapper.o
    C++      gui/animation/SequenceAnimationComposite.o
    C++      gui/saveload-dialog.o
    C++      gui/widgets/editable.o
    C++      gui/widgets/edittext.o
    C++      gui/widgets/scrollbar.o
    C++      gui/ThemeEngine.o
    C++      gui/widgets/scrollcontainer.o
    C++      gui/widgets/list.o
    C++      gui/widgets/popup.o
    C++      gui/downloaddialog.o
    C++      gui/widget.o
    C++      backends/base-backend.o
    C++      gui/widgets/tab.o
    C++      backends/audiocd/audiocd-stream.o
    C++      backends/audiocd/default/default-audiocd.o
    C++      gui/remotebrowser.o
    C++      gui/fluidsynth-dialog.o
    C++      backends/fs/abstract-fs.o
    C++      backends/modular-backend.o
    C++      gui/ThemeParser.o
    C++      backends/fs/stdiostream.o
    C++      backends/keymapper/action.o
    C++      backends/keymapper/standard-actions.o
    C++      backends/keymapper/input-watcher.o
    C++      backends/events/default/default-events.o
backends/events/default/default-events.cpp: In member function 'virtual void DefaultEventManager::purgeMouseEvents()':
backends/events/default/default-events.cpp:286:23: warning: implicitly-declared 'Common::Queue<Common::Event>& Common::Queue<Common::Event>::operator=(const Common::Queue<Common::Event>&)' is deprecated [-Wdeprecated-copy]
  286 |         _eventQueue = filteredQueue;
      |                       ^~~~~~~~~~~~~
In file included from ./common/events.h:27,
                 from ./backends/events/default/default-events.h:26,
                 from backends/events/default/default-events.cpp:30:
./common/queue.h:41:9: note: because 'Common::Queue<Common::Event>' has user-provided 'Common::Queue<T>::Queue(const Common::Queue<T>&) [with T = Common::Event]'
   41 |         Queue<T>(const Queue<T> &queue) : _impl(queue._impl) {}
      |         ^~~~~~~~
    C++      gui/options.o
    C++      backends/log/log.o
    C++      backends/midi/dmedia.o
    C++      backends/keymapper/hardware-input.o
    C++      backends/keymapper/virtual-mouse.o
    C++      backends/midi/sndio.o
    C++      backends/midi/stmidi.o
    C++      backends/keymapper/keymapper.o
    C++      backends/midi/seq.o
    C++      backends/midi/alsa.o
    C++      backends/saves/savefile.o
    C++      backends/keymapper/remap-widget.o
    C++      backends/midi/timidity.o
backends/midi/timidity.cpp: In member function 'int MidiDriver_TIMIDITY::_ZN19MidiDriver_TIMIDITY4openEv.part.0()':
backends/midi/timidity.cpp:214:49: warning: '%d' directive output may be truncated writing between 1 and 11 bytes into a region of size 6 [-Wformat-truncation=]
  214 |         snprintf(data_port, sizeof(data_port), "%d", num);
      |                                                 ^~
backends/midi/timidity.cpp:214:48: note: directive argument in the range [-2147483648, 65535]
  214 |         snprintf(data_port, sizeof(data_port), "%d", num);
      |                                                ^~~~
In file included from /usr/include/stdio.h:866,
                 from ./common/scummsys.h:118,
                 from backends/midi/timidity.cpp:38:
/usr/include/bits/stdio2.h:71:35: note: '__builtin___snprintf_chk' output between 2 and 12 bytes into a destination of size 6
   71 |   return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   72 |                                    __glibc_objsize (__s), __fmt,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   73 |                                    __va_arg_pack ());
      |                                    ~~~~~~~~~~~~~~~~~
    C++      backends/timer/default/default-timer.o
    C++      backends/cloud/iso8601.o
    C++      backends/cloud/cloudicon.o
    C++      backends/cloud/storagefile.o
    C++      backends/keymapper/keymap.o
    C++      backends/cloud/basestorage.o
    C++      backends/cloud/downloadrequest.o
    C++      backends/cloud/storage.o
    C++      backends/cloud/folderdownloadrequest.o
    C++      backends/cloud/cloudmanager.o
    C++      backends/saves/default/default-saves.o
    C++      backends/cloud/box/boxstorage.o
    C++      backends/cloud/box/boxlistdirectorybyidrequest.o
    C++      backends/cloud/box/boxtokenrefresher.o
    C++      backends/cloud/box/boxuploadrequest.o
    C++      backends/cloud/dropbox/dropboxstorage.o
    C++      backends/cloud/dropbox/dropboxcreatedirectoryrequest.o
    C++      backends/cloud/dropbox/dropboxinforequest.o
    C++      backends/cloud/dropbox/dropboxuploadrequest.o
    C++      backends/cloud/dropbox/dropboxlistdirectoryrequest.o
    C++      backends/cloud/savessyncrequest.o
    C++      backends/cloud/googledrive/googledrivelistdirectorybyidrequest.o
    C++      backends/cloud/id/idstorage.o
    C++      backends/cloud/googledrive/googledrivetokenrefresher.o
    C++      backends/cloud/id/idcreatedirectoryrequest.o
    C++      backends/cloud/googledrive/googledrivestorage.o
    C++      backends/cloud/id/iddownloadrequest.o
    C++      backends/cloud/id/idstreamfilerequest.o
    C++      backends/cloud/id/idresolveidrequest.o
    C++      backends/cloud/googledrive/googledriveuploadrequest.o
    C++      backends/cloud/id/idlistdirectoryrequest.o
    C++      backends/cloud/onedrive/onedrivecreatedirectoryrequest.o
    C++      backends/cloud/onedrive/onedrivestorage.o
    C++      backends/cloud/onedrive/onedrivetokenrefresher.o
    C++      backends/networking/curl/connectionmanager.o
    C++      backends/cloud/onedrive/onedriveuploadrequest.o
    C++      backends/networking/curl/request.o
    C++      backends/cloud/onedrive/onedrivelistdirectoryrequest.o
    C++      backends/networking/curl/postrequest.o
    C++      backends/networking/curl/curlrequest.o
    C++      backends/networking/curl/curljsonrequest.o
    C++      backends/networking/curl/networkreadstream.o
    C++      backends/networking/curl/sessionrequest.o
    C++      backends/graphics/opengl/debug.o
    C++      backends/graphics/opengl/framebuffer.o
    C++      backends/graphics/opengl/context.o
    C++      backends/graphics/opengl/pipelines/fixed.o
    C++      backends/graphics/opengl/shader.o
    C++      backends/graphics/opengl/pipelines/clut8.o
    C++      backends/graphics/opengl/pipelines/pipeline.o
    C++      backends/graphics/opengl/texture.o
    C++      backends/graphics/opengl/pipelines/shader.o
    C++      backends/events/sdl/legacy-sdl-events.o
    C++      backends/plugins/sdl/sdl-provider.o
    C++      backends/mutex/sdl/sdl-mutex.o
    C++      backends/graphics/opengl/opengl-graphics.o
    C++      backends/mixer/sdl/sdl-mixer.o
    C++      backends/events/sdl/sdl-events.o
    C++      backends/graphics/sdl/sdl-graphics.o
    C++      backends/fs/posix/posix-iostream.o
    C++      backends/fs/posix/posix-fs-factory.o
    C++      backends/fs/posix/posix-fs.o
    C++      backends/timer/sdl/sdl-timer.o
    C++      backends/fs/chroot/chroot-fs-factory.o
    C++      backends/fs/posix-drives/posix-drives-fs-factory.o
    C++      backends/fs/posix-drives/posix-drives-fs.o
    C++      backends/plugins/posix/posix-provider.o
    C++      backends/taskbar/unity/unity-taskbar.o
    C++      backends/fs/chroot/chroot-fs.o
    C++      backends/saves/posix/posix-saves.o
    C++      backends/text-to-speech/linux/linux-text-to-speech.o
    C++      backends/audiocd/linux/linux-audiocd.o
    C++      backends/graphics/openglsdl/openglsdl-graphics.o
    C++      video/dxa_decoder.o
    C++      backends/graphics/surfacesdl/surfacesdl-graphics.o
    C++      backends/dialogs/gtk/gtk-dialogs.o
    C++      video/flic_decoder.o
    C++      video/avi_decoder.o
    C++      video/mve_decoder.o
    C++      video/mpegps_decoder.o
    C++      video/psx_decoder.o
    C++      image/bmp.o
    C++      image/iff.o
    C++      video/qt_decoder.o
    C++      image/jpeg.o
    C++      video/smk_decoder.o
    C++      image/pcx.o
    C++      video/video_decoder.o
    C++      image/png.o
    C++      image/codecs/bmp_raw.o
    C++      image/tga.o
    C++      video/coktel_decoder.o
    C++      image/pict.o
    C++      image/codecs/codec.o
    C++      image/codecs/cdtoons.o
    C++      image/codecs/jyv1.o
    C++      image/codecs/mjpeg.o
    C++      image/codecs/msrle.o
    C++      image/codecs/msrle4.o
    C++      image/codecs/msvideo1.o
    C++      video/bink_decoder.o
    C++      image/codecs/cinepak.o
    C++      image/codecs/indeo3.o
    C++      image/codecs/rpza.o
    C++      image/codecs/smc.o
    C++      image/codecs/qtrle.o
    C++      image/codecs/indeo5.o
    C++      image/codecs/indeo/mem.o
    C++      image/codecs/mpeg.o
    C++      image/codecs/indeo/vlc.o
    C++      image/codecs/truemotion1.o
    C++      image/codecs/indeo/indeo_dsp.o
    C++      image/codecs/indeo4.o
    C++      graphics/conversion.o
    C++      image/codecs/svq1.o
    C++      graphics/fonts/consolefont.o
    C++      graphics/cursorman.o
    C++      graphics/fontman.o
    C++      graphics/fonts/newfont_big.o
    C++      graphics/fonts/newfont.o
    C++      graphics/font.o
    C++      image/codecs/indeo/indeo.o
    C++      graphics/maccursor.o
    C++      graphics/fonts/winfont.o
    C++      graphics/fonts/bdf.o
    C++      graphics/macgui/datafiles.o
    C++      graphics/macgui/macbutton.o
    C++      graphics/fonts/macfont.o
    C++      graphics/macgui/macwidget.o
    C++      graphics/macgui/mactextwindow.o
    C++      graphics/fonts/ttf.o
    C++      graphics/larryScale.o
    C++      graphics/macgui/macwindowborder.o
    C++      graphics/pixelformat.o
    C++      graphics/macgui/macwindow.o
    C++      graphics/macgui/macfontmanager.o
    C++      graphics/scaler.o
    C++      graphics/primitives.o
    C++      graphics/scaler/thumbnail_intern.o
    C++      graphics/screen.o
    C++      graphics/macgui/macmenu.o
    C++      graphics/transform_tools.o
    C++      graphics/transform_struct.o
    C++      graphics/nine_patch.o
    C++      graphics/macgui/mactext.o
    C++      graphics/sjis.o
    C++      graphics/macgui/macwindowmanager.o
    C++      graphics/thumbnail.o
    C++      graphics/VectorRenderer.o
    C++      graphics/managed_surface.o
    C++      graphics/surface.o
    C++      graphics/scaler/aspect.o
    C++      graphics/scaler/scale2x.o
    C++      graphics/scaler/downscaler.o
    C++      graphics/wincursor.o
    C++      graphics/scaler/scalebit.o
    C++      graphics/yuv_to_rgb.o
    C++      graphics/scaler/scale3x.o
    C++      graphics/scaler/2xsai.o
    C++      graphics/transparent_surface.o
    C++      audio/fmopl.o
    C++      audio/audiostream.o
    C++      audio/midiparser_smf.o
    C++      audio/adlib.o
    C++      audio/midiparser_xmidi.o
    C++      audio/mididrv.o
    C++      audio/midiparser_qt.o
    C++      audio/midiparser.o
audio/midiparser.cpp: In member function 'bool MidiParser::jumpToTick(uint32, bool, bool, bool)':
audio/midiparser.cpp:490:45: warning: implicitly-declared 'Tracker& Tracker::operator=(const Tracker&)' is deprecated [-Wdeprecated-copy]
  490 |                                 _position = currentPos;
      |                                             ^~~~~~~~~~
In file included from audio/midiparser.cpp:23:
./audio/midiparser.h:62:9: note: because 'Tracker' has user-provided 'Tracker::Tracker(const Tracker&)'
   62 |         Tracker(const Tracker &copy) :
      |         ^~~~~~~
audio/midiparser.cpp:509:37: warning: implicitly-declared 'Tracker& Tracker::operator=(const Tracker&)' is deprecated [-Wdeprecated-copy]
  509 |                         _position = currentPos;
      |                                     ^~~~~~~~~~
In file included from audio/midiparser.cpp:23:
./audio/midiparser.h:62:9: note: because 'Tracker' has user-provided 'Tracker::Tracker(const Tracker&)'
   62 |         Tracker(const Tracker &copy) :
      |         ^~~~~~~
audio/midiparser.cpp:514:37: warning: implicitly-declared 'Tracker& Tracker::operator=(const Tracker&)' is deprecated [-Wdeprecated-copy]
  514 |                         _position = targetPosition;
      |                                     ^~~~~~~~~~~~~~
In file included from audio/midiparser.cpp:23:
./audio/midiparser.h:62:9: note: because 'Tracker' has user-provided 'Tracker::Tracker(const Tracker&)'
   62 |         Tracker(const Tracker &copy) :
      |         ^~~~~~~
    C++      audio/midiplayer.o
    C++      audio/mpu401.o
    C++      audio/mixer.o
    C++      audio/musicplugin.o
    C++      audio/miles_adlib.o
audio/miles_adlib.cpp: In member function 'void Audio::MidiDriver_Miles_AdLib::resetData()':
audio/miles_adlib.cpp:346:15: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct Audio::MidiDriver_Miles_AdLib::MidiChannelEntry'; use assignment or value-initialization instead [-Wclass-memaccess]
  346 |         memset(_midiChannels, 0, sizeof(_midiChannels));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
audio/miles_adlib.cpp:145:16: note: 'struct Audio::MidiDriver_Miles_AdLib::MidiChannelEntry' declared here
  145 |         struct MidiChannelEntry {
      |                ^~~~~~~~~~~~~~~~
audio/miles_adlib.cpp:347:15: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct Audio::MidiDriver_Miles_AdLib::VirtualFmVoiceEntry'; use assignment or value-initialization instead [-Wclass-memaccess]
  347 |         memset(_virtualFmVoices, 0, sizeof(_virtualFmVoices));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
audio/miles_adlib.cpp:175:16: note: 'struct Audio::MidiDriver_Miles_AdLib::VirtualFmVoiceEntry' declared here
  175 |         struct VirtualFmVoiceEntry {
      |                ^~~~~~~~~~~~~~~~~~~
audio/miles_adlib.cpp:348:15: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct Audio::MidiDriver_Miles_AdLib::PhysicalFmVoiceEntry'; use assignment or value-initialization instead [-Wclass-memaccess]
  348 |         memset(_physicalFmVoices, 0, sizeof(_physicalFmVoices));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
audio/miles_adlib.cpp:206:16: note: 'struct Audio::MidiDriver_Miles_AdLib::PhysicalFmVoiceEntry' declared here
  206 |         struct PhysicalFmVoiceEntry {
      |                ^~~~~~~~~~~~~~~~~~~~
    C++      audio/null.o
    C++      audio/decoders/aac.o
    C++      audio/timestamp.o
    C++      audio/decoders/3do.o
    C++      audio/decoders/aiff.o
    C++      audio/miles_midi.o
    C++      audio/decoders/mac_snd.o
    C++      audio/decoders/iff_sound.o
    C++      audio/decoders/flac.o
    C++      audio/decoders/adpcm.o
    C++      audio/decoders/voc.o
    C++      audio/decoders/mp3.o
    C++      audio/decoders/raw.o
    C++      audio/decoders/wave.o
    C++      audio/decoders/vorbis.o
    C++      audio/decoders/xa.o
    C++      audio/decoders/quicktime.o
    C++      audio/mods/infogrames.o
    C++      audio/mods/module.o
    C++      audio/mods/maxtrax.o
    C++      audio/mods/mod_xm_s3m.o
    C++      audio/mods/protracker.o
audio/mods/protracker.cpp: In constructor 'Modules::ProtrackerStream::ProtrackerStream(Common::SeekableReadStream*, int, int, bool)':
audio/mods/protracker.cpp:172:15: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct Modules::ProtrackerStream::<unnamed>'; use assignment or value-initialization instead [-Wclass-memaccess]
  172 |         memset(_track, 0, sizeof(_track));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
audio/mods/protracker.cpp:60:16: note: 'struct Modules::ProtrackerStream::<unnamed>' declared here
   60 |         struct {
      |                ^
    C++      audio/mods/soundfx.o
    C++      audio/mods/rjp1.o
    C++      audio/mods/module_mod_xm_s3m.o
    C++      audio/mods/paula.o
    C++      audio/decoders/qdm2.o
audio/decoders/qdm2.cpp: In member function 'void Audio::QDM2Stream::qdm2_fft_tone_synthesizer(uint8)':
audio/decoders/qdm2.cpp:2423:56: warning: taking address of packed member of 'Audio::QDM2FFT' may result in an unaligned pointer value [-Waddress-of-packed-member]
 2423 |                                         tone.complex = &_fft.complex[ch][offset];
      |                                                        ^~~~~~~~~~~~~~~~~~~~~~~~~
audio/decoders/qdm2.cpp: In member function 'void Audio::QDM2Stream::qdm2_calculate_fft(int)':
audio/decoders/qdm2.cpp:2441:50: warning: taking address of packed member of 'Audio::QDM2FFT' may result in an unaligned pointer value [-Waddress-of-packed-member]
 2441 |         _rdft->calc((float *)_fft.complex[channel]);
      |                              ~~~~~~~~~~~~~~~~~~~~^
    C++      audio/softsynth/cms.o
    C++      audio/softsynth/opl/dosbox.o
audio/softsynth/opl/dosbox.cpp: In member function 'virtual bool OPL::DOSBox::OPL::init()':
audio/softsynth/opl/dosbox.cpp:169:15: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct OPL::DOSBox::Chip'; use assignment or value-initialization instead [-Wclass-memaccess]
  169 |         memset(_chip, 0, sizeof(_chip));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from audio/softsynth/opl/dosbox.cpp:32:
audio/softsynth/opl/dosbox.h:59:8: note: 'struct OPL::DOSBox::Chip' declared here
   59 | struct Chip {
      |        ^~~~
    C++      audio/mods/tfmx.o
    C++      audio/softsynth/fmtowns_pc98/pcm_common.o
    C++      audio/softsynth/fmtowns_pc98/pc98_audio.o
    C++      audio/softsynth/opl/dbopl.o
    C++      audio/softsynth/opl/mame.o
    C++      audio/softsynth/fmtowns_pc98/sega_audio.o
    C++      audio/softsynth/fmtowns_pc98/towns_pc98_plugins.o
    C++      audio/softsynth/appleiigs.o
    C++      audio/softsynth/fmtowns_pc98/towns_euphony.o
    C++      audio/softsynth/fmtowns_pc98/towns_audio.o
    C++      audio/softsynth/eas.o
    C++      audio/softsynth/fmtowns_pc98/towns_pc98_fmsynth.o
    C++      audio/softsynth/fluidsynth.o
    C++      audio/softsynth/pcspk.o
    C++      audio/softsynth/mt32.o
    C++      audio/softsynth/wave6581.o
    C++      audio/soundfont/rifffile.o
    C++      audio/soundfont/rawfile.o
    C++      audio/softsynth/fmtowns_pc98/towns_pc98_driver.o
    C++      audio/softsynth/sid.o
    C++      audio/soundfont/vgmcoll.o
    C++      audio/soundfont/sf2file.o
    C++      audio/soundfont/synthfile.o
In file included from ./common/array.h:27,
                 from audio/soundfont/synthfile.h:33,
                 from audio/soundfont/synthfile.cpp:28:
In function 'Out Common::copy_backward(In, In, Out) [with In = SynthRgn**; Out = SynthRgn**]',
    inlined from 'T* Common::Array<T>::insert_aux(Common::Array<T>::iterator, Common::Array<T>::const_iterator, Common::Array<T>::const_iterator) [with T = SynthRgn*]' at ./common/array.h:366:18,
    inlined from 'void Common::Array<T>::insert(Common::Array<T>::iterator, const T&) [with T = SynthRgn*]' at ./common/array.h:176:13,
    inlined from 'SynthRgn* SynthInstr::AddRgn()' at audio/soundfont/synthfile.cpp:75:15:
./common/algorithm.h:54:24: warning: 'void* __builtin_memmove(void*, const void*, long unsigned int)' specified bound 18446744073709551608 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   54 |                 *--dst = *--last;
      |                 ~~~~~~~^~~~~~~~~
    C++      audio/soundfont/vgminstrset.o
    C++      audio/soundfont/vgmsamp.o
    C++      graphics/VectorRendererSpec.o
graphics/VectorRendererSpec.cpp: In member function 'virtual void Graphics::VectorRendererAA<PixelType>::drawBorderRoundedSquareAlg(int, int, int, int, int, PixelType, Graphics::VectorRenderer::FillMode, uint8, uint8, uint8, uint8)':
graphics/VectorRendererSpec.cpp:3644:25: warning: this 'if' clause does not guard... [-Wmisleading-indentation]
 3644 |                         if (sw != strokeWidth || fill_m != Base::kFillDisabled)
      |                         ^~
graphics/VectorRendererSpec.cpp:380:53: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
  380 | #define WU_DRAWCIRCLE_BCOLOR_TR_CW(ptr,x,y,px,py,a) do { \
      |                                                     ^~
graphics/VectorRendererSpec.cpp:3648:33: note: in expansion of macro 'WU_DRAWCIRCLE_BCOLOR_TR_CW'
 3648 |                                 WU_DRAWCIRCLE_BCOLOR_TR_CW(ptr_tr, (x - 1), y, (px - pitch), py, (uint8)((uint32)(((alpha_t - (alphaStep_tr * y)) << 8) * a2) >> 16));
      |                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~
    C++      audio/soundfont/vab/psxspu.o
    C++      audio/soundfont/vgmitem.o
    C++      audio/soundfont/vab/vab.o
    C++      audio/alsa_opl.o
    C++      common/achievements.o
    C++      audio/softsynth/opl/nuked.o
    C++      audio/rate.o
    C++      common/error.o
    C++      common/dcl.o
    C++      common/archive.o
    C++      common/coroutines.o
    C++      common/debug.o
    C++      common/events.o
    C++      common/gui_options.o
    C++      common/hashmap.o
    C++      common/iff_container.o
    C++      common/file.o
    C++      common/config-manager.o
    C++      common/installshield_cab.o
    C++      common/language.o
    C++      common/localization.o
    C++      common/fs.o
    C++      common/ini-file.o
    C++      common/mutex.o
    C++      common/md5.o
    C++      common/osd_message_queue.o
    C++      common/memorypool.o
    C++      common/platform.o
    C++      common/rendermode.o
    C++      common/random.o
    C++      common/macresman.o
    C++      common/rational.o
    C++      common/json.o
    C++      common/str-enc.o
    C++      common/textconsole.o
    C++      common/tokenizer.o
    C++      common/quicktime.o
    C++      common/system.o
    C++      common/stream.o
    C++      common/unicode-bidi.o
    C++      common/str.o
    C++      common/util.o
    C++      common/translation.o
    C++      common/unarj.o
    C++      common/unzip.o
    C++      common/winexe.o
    C++      common/ustr.o
    C++      common/winexe_ne.o
    C++      common/cosinetables.o
    C++      common/fft.o
    C++      common/dct.o
    C++      common/rdft.o
    C++      common/sinetables.o
    C++      common/winexe_pe.o
    C++      common/lua/double_serialization.o
    C++      graphics/scaler/hq2x.o
    C++      common/encoding.o
    C++      common/xmlparser.o
    C++      common/lua/lauxlib.o
    C++      common/lua/lbaselib.o
    C++      common/zlib.o
    C++      common/lua/ldblib.o
    C++      common/lua/lfunc.o
    C++      graphics/scaler/hq3x.o
    C++      common/lua/lapi.o
    C++      common/lua/linit.o
    C++      common/lua/ldebug.o
    C++      common/lua/lmem.o
    C++      common/lua/lmathlib.o
    C++      common/lua/ldo.o
    C++      common/lua/lcode.o
    C++      common/lua/lopcodes.o
    C++      common/lua/loadlib.o
    C++      common/lua/liolib.o
    C++      common/lua/lgc.o
    C++      common/lua/llex.o
    C++      common/lua/lobject.o
    C++      common/lua/lstate.o
    C++      common/lua/loslib.o
    C++      common/lua/lstring.o
    C++      common/lua/ltm.o
    C++      common/lua/ltablib.o
    C++      common/lua/ltable.o
    C++      common/lua/lua_persist.o
    C++      common/lua/lua_persistence_util.o
    C++      common/lua/lua_unpersist.o
    C++      common/lua/lzio.o
    C++      audio/softsynth/mt32/File.o
    C++      common/lua/lparser.o
    C++      common/lua/lstrlib.o
    C++      audio/softsynth/mt32/LA32Ramp.o
    C++      audio/softsynth/mt32/Analog.o
    C++      common/text-to-speech.o
    C++      audio/softsynth/mt32/LA32FloatWaveGenerator.o
    C++      common/lua/scummvm_file.o
    C++      audio/softsynth/mt32/LA32WaveGenerator.o
    C++      common/lua/lvm.o
    C++      audio/softsynth/mt32/MidiStreamParser.o
    C++      audio/softsynth/mt32/ROMInfo.o
    C++      audio/softsynth/mt32/Poly.o
    C++      audio/softsynth/mt32/PartialManager.o
    C++      audio/softsynth/mt32/FileStream.o
    C++      audio/softsynth/mt32/BReverbModel.o
    C++      audio/softsynth/mt32/Partial.o
    C++      audio/softsynth/mt32/Tables.o
    C++      audio/softsynth/mt32/TVF.o
    C++      audio/softsynth/mt32/TVA.o
    C++      audio/softsynth/mt32/sha1/sha1.o
    C++      audio/softsynth/mt32/SampleRateConverter.o
    C++      audio/softsynth/mt32/Part.o
    C++      audio/softsynth/mt32/TVP.o
    AR       engines/access/libaccess.a
    RANLIB   engines/access/libaccess.a
    AR       engines/adl/libadl.a
    RANLIB   engines/adl/libadl.a
    AR       engines/agi/libagi.a
    RANLIB   engines/agi/libagi.a
    AR       engines/agos/libagos.a
    RANLIB   engines/agos/libagos.a
    AR       engines/avalanche/libavalanche.a
    RANLIB   engines/avalanche/libavalanche.a
    AR       engines/bbvs/libbbvs.a
    RANLIB   engines/bbvs/libbbvs.a
    AR       engines/cge/libcge.a
    RANLIB   engines/cge/libcge.a
    AR       engines/scumm/libscumm.a
    RANLIB   engines/scumm/libscumm.a
    AR       engines/cge2/libcge2.a
    RANLIB   engines/cge2/libcge2.a
    AR       engines/chewy/libchewy.a
    RANLIB   engines/chewy/libchewy.a
    AR       engines/cine/libcine.a
    RANLIB   engines/cine/libcine.a
    AR       engines/composer/libcomposer.a
    RANLIB   engines/composer/libcomposer.a
    AR       engines/cruise/libcruise.a
    RANLIB   engines/cruise/libcruise.a
    AR       engines/cryo/libcryo.a
    RANLIB   engines/cryo/libcryo.a
    AR       engines/cryomni3d/libcryomni3d.a
    RANLIB   engines/cryomni3d/libcryomni3d.a
    AR       engines/dm/libdm.a
    RANLIB   engines/dm/libdm.a
    AR       engines/draci/libdraci.a
    RANLIB   engines/draci/libdraci.a
    AR       engines/dragons/libdragons.a
    RANLIB   engines/dragons/libdragons.a
    AR       engines/director/libdirector.a
    RANLIB   engines/director/libdirector.a
    AR       engines/drascula/libdrascula.a
    RANLIB   engines/drascula/libdrascula.a
    AR       engines/dreamweb/libdreamweb.a
    RANLIB   engines/dreamweb/libdreamweb.a
    AR       engines/griffon/libgriffon.a
    RANLIB   engines/griffon/libgriffon.a
    AR       engines/gnap/libgnap.a
    RANLIB   engines/gnap/libgnap.a
    AR       engines/fullpipe/libfullpipe.a
    RANLIB   engines/fullpipe/libfullpipe.a
    AR       engines/groovie/libgroovie.a
    RANLIB   engines/groovie/libgroovie.a
    AR       engines/hdb/libhdb.a
    RANLIB   engines/hdb/libhdb.a
    AR       engines/hopkins/libhopkins.a
    RANLIB   engines/hopkins/libhopkins.a
    AR       engines/bladerunner/libbladerunner.a
    RANLIB   engines/bladerunner/libbladerunner.a
    AR       engines/hugo/libhugo.a
    RANLIB   engines/hugo/libhugo.a
    AR       engines/gob/libgob.a
    RANLIB   engines/gob/libgob.a
    AR       engines/kingdom/libkingdom.a
    RANLIB   engines/kingdom/libkingdom.a
    AR       engines/lab/liblab.a
    RANLIB   engines/lab/liblab.a
    AR       engines/illusions/libillusions.a
    RANLIB   engines/illusions/libillusions.a
    AR       engines/lilliput/liblilliput.a
    RANLIB   engines/lilliput/liblilliput.a
    AR       engines/lure/liblure.a
    RANLIB   engines/lure/liblure.a
    AR       engines/macventure/libmacventure.a
    RANLIB   engines/macventure/libmacventure.a
    AR       engines/glk/libglk.a
    RANLIB   engines/glk/libglk.a
    C++      audio/softsynth/mt32/c_interface/c_interface.o
    AR       engines/made/libmade.a
    RANLIB   engines/made/libmade.a
    AR       engines/mortevielle/libmortevielle.a
    RANLIB   engines/mortevielle/libmortevielle.a
    AR       engines/kyra/libkyra.a
    RANLIB   engines/kyra/libkyra.a
    AR       engines/lastexpress/liblastexpress.a
    RANLIB   engines/lastexpress/liblastexpress.a
    AR       engines/mutationofjb/libmutationofjb.a
    RANLIB   engines/mutationofjb/libmutationofjb.a
    AR       engines/mohawk/libmohawk.a
    RANLIB   engines/mohawk/libmohawk.a
    AR       engines/parallaction/libparallaction.a
    RANLIB   engines/parallaction/libparallaction.a
    AR       engines/neverhood/libneverhood.a
    RANLIB   engines/neverhood/libneverhood.a
    AR       engines/petka/libpetka.a
    RANLIB   engines/petka/libpetka.a
    AR       engines/plumbers/libplumbers.a
    RANLIB   engines/plumbers/libplumbers.a
    AR       engines/mads/libmads.a
    RANLIB   engines/mads/libmads.a
    AR       engines/pink/libpink.a
    RANLIB   engines/pink/libpink.a
    AR       engines/prince/libprince.a
    RANLIB   engines/prince/libprince.a
    AR       engines/queen/libqueen.a
    RANLIB   engines/queen/libqueen.a
    AR       engines/sky/libsky.a
    RANLIB   engines/sky/libsky.a
    AR       engines/saga/libsaga.a
    RANLIB   engines/saga/libsaga.a
    AR       engines/sludge/libsludge.a
    RANLIB   engines/sludge/libsludge.a
    AR       engines/pegasus/libpegasus.a
    RANLIB   engines/pegasus/libpegasus.a
    AR       engines/sherlock/libsherlock.a
    RANLIB   engines/sherlock/libsherlock.a
    AR       engines/supernova/libsupernova.a
    RANLIB   engines/supernova/libsupernova.a
    AR       engines/sword1/libsword1.a
    RANLIB   engines/sword1/libsword1.a
    AR       engines/teenagent/libteenagent.a
    RANLIB   engines/teenagent/libteenagent.a
    AR       engines/sword2/libsword2.a
    RANLIB   engines/sword2/libsword2.a
    AR       engines/testbed/libtestbed.a
    RANLIB   engines/testbed/libtestbed.a
    AR       engines/toltecs/libtoltecs.a
    RANLIB   engines/toltecs/libtoltecs.a
    AR       engines/tinsel/libtinsel.a
    RANLIB   engines/tinsel/libtinsel.a
    AR       engines/startrek/libstartrek.a
    RANLIB   engines/startrek/libstartrek.a
    AR       engines/tony/libtony.a
    RANLIB   engines/tony/libtony.a
    AR       engines/toon/libtoon.a
    RANLIB   engines/toon/libtoon.a
    AR       engines/touche/libtouche.a
    RANLIB   engines/touche/libtouche.a
    AR       engines/sci/libsci.a
    RANLIB   engines/sci/libsci.a
    AR       engines/tucker/libtucker.a
    RANLIB   engines/tucker/libtucker.a
    AR       engines/voyeur/libvoyeur.a
    RANLIB   engines/voyeur/libvoyeur.a
    AR       engines/wage/libwage.a
    RANLIB   engines/wage/libwage.a
    AR       engines/libengines.a
    RANLIB   engines/libengines.a
    AR       engines/zvision/libzvision.a
    RANLIB   engines/zvision/libzvision.a
    AR       engines/xeen/libxeen.a
    RANLIB   engines/xeen/libxeen.a
    AR       engines/wintermute/libwintermute.a
    RANLIB   engines/wintermute/libwintermute.a
    AR       video/libvideo.a
    RANLIB   video/libvideo.a
    AR       gui/libgui.a
    RANLIB   gui/libgui.a
    AR       engines/tsage/libtsage.a
    RANLIB   engines/tsage/libtsage.a
    C++      audio/softsynth/mt32/Synth.o
    AR       image/libimage.a
    RANLIB   image/libimage.a
    AR       backends/libbackends.a
    RANLIB   backends/libbackends.a
    AR       graphics/libgraphics.a
    RANLIB   graphics/libgraphics.a
    AR       audio/softsynth/mt32/libmt32.a
    RANLIB   audio/softsynth/mt32/libmt32.a
    AR       audio/libaudio.a
    RANLIB   audio/libaudio.a
    AR       common/libcommon.a
    RANLIB   common/libcommon.a
    AR       engines/titanic/libtitanic.a
    RANLIB   engines/titanic/libtitanic.a
    AR       engines/ultima/libultima.a
    RANLIB   engines/ultima/libultima.a
    C++      base/version.o
    AR       base/libbase.a
    RANLIB   base/libbase.a
    LINK     scummvm
+ RPM_EC=0
++ jobs -p
+ exit 0
Executing(%install): /bin/sh -e /home/iurt/rpmbuild/tmp/rpm-tmp.fcXN2D
+ umask 022
+ cd /home/iurt/rpmbuild/BUILD
+ '[' 1 -eq 1 ']'
+ '[' /home/iurt/rpmbuild/BUILDROOT/scummvm-2.2.0-2.mga9.aarch64 '!=' / ']'
+ rm -rf /home/iurt/rpmbuild/BUILDROOT/scummvm-2.2.0-2.mga9.aarch64
++ dirname /home/iurt/rpmbuild/BUILDROOT/scummvm-2.2.0-2.mga9.aarch64
+ mkdir -p /home/iurt/rpmbuild/BUILDROOT
+ mkdir /home/iurt/rpmbuild/BUILDROOT/scummvm-2.2.0-2.mga9.aarch64
+ cd scummvm-2.2.0
+ '[' 1 -eq 1 ']'
+ /usr/bin/make install DESTDIR=/home/iurt/rpmbuild/BUILDROOT/scummvm-2.2.0-2.mga9.aarch64 'INSTALL=/usr/bin/install -p'
/bin/sh: line 1: git: command not found
/usr/bin/install -p -d "/home/iurt/rpmbuild/BUILDROOT/scummvm-2.2.0-2.mga9.aarch64/usr/games"
/usr/bin/install -p -c -m 755 "./scummvm" "/home/iurt/rpmbuild/BUILDROOT/scummvm-2.2.0-2.mga9.aarch64/usr/games/scummvm"
/usr/bin/install -p -d "/home/iurt/rpmbuild/BUILDROOT/scummvm-2.2.0-2.mga9.aarch64/usr/share/man/man6/"
/usr/bin/install -p -c -m 644 "./dists/scummvm.6" "/home/iurt/rpmbuild/BUILDROOT/scummvm-2.2.0-2.mga9.aarch64/usr/share/man/man6/scummvm.6"
/usr/bin/install -p -d "/home/iurt/rpmbuild/BUILDROOT/scummvm-2.2.0-2.mga9.aarch64/usr/share/pixmaps/"
/usr/bin/install -p -c -m 644 "./icons/scummvm.xpm" "/home/iurt/rpmbuild/BUILDROOT/scummvm-2.2.0-2.mga9.aarch64/usr/share/pixmaps/scummvm.xpm"
/usr/bin/install -p -d "/home/iurt/rpmbuild/BUILDROOT/scummvm-2.2.0-2.mga9.aarch64/usr/share/icons/hicolor/scalable/apps/"
/usr/bin/install -p -c -m 644 "./icons/scummvm.svg" "/home/iurt/rpmbuild/BUILDROOT/scummvm-2.2.0-2.mga9.aarch64/usr/share/icons/hicolor/scalable/apps/scummvm.svg"
/usr/bin/install -p -d "/home/iurt/rpmbuild/BUILDROOT/scummvm-2.2.0-2.mga9.aarch64/usr/share/doc/scummvm"
/usr/bin/install -p -c -m 644 ./AUTHORS ./COPYING ./COPYING.BSD ./COPYING.LGPL ./COPYING.FREEFONT ./COPYING.OFL ./COPYRIGHT ./NEWS.md ./README.md ./CONTRIBUTING.md "/home/iurt/rpmbuild/BUILDROOT/scummvm-2.2.0-2.mga9.aarch64/usr/share/doc/scummvm"
/usr/bin/install -p -d "/home/iurt/rpmbuild/BUILDROOT/scummvm-2.2.0-2.mga9.aarch64/usr/share/scummvm"
/usr/bin/install -p -c -m 644 ./gui/themes/scummmodern.zip ./gui/themes/scummclassic.zip ./gui/themes/scummremastered.zip ./gui/themes/translations.dat   ./dists/engine-data/access.dat ./dists/engine-data/cryo.dat ./dists/engine-data/cryomni3d.dat ./dists/engine-data/drascula.dat ./dists/engine-data/hugo.dat ./dists/engine-data/kyra.dat ./dists/engine-data/lure.dat ./dists/engine-data/mort.dat ./dists/engine-data/neverhood.dat ./dists/engine-data/queen.tbl ./dists/engine-data/sky.cpt ./dists/engine-data/supernova.dat ./dists/engine-data/teenagent.dat ./dists/engine-data/titanic.dat ./dists/engine-data/tony.dat ./dists/engine-data/toon.dat ./dists/engine-data/ultima.dat ./dists/engine-data/wintermute.zip ./dists/engine-data/macventure.dat ./dists/engine-data/xeen.ccs ./dists/engine-data/fonts.dat ./dists/pred.dic "/home/iurt/rpmbuild/BUILDROOT/scummvm-2.2.0-2.mga9.aarch64/usr/share/scummvm/"
/usr/bin/install -p -d "/home/iurt/rpmbuild/BUILDROOT/scummvm-2.2.0-2.mga9.aarch64/usr/share/applications"
/usr/bin/install -p -c -m 644 "./dists/scummvm.desktop" "/home/iurt/rpmbuild/BUILDROOT/scummvm-2.2.0-2.mga9.aarch64/usr/share/applications/scummvm.desktop"
/usr/bin/install -p -d "/home/iurt/rpmbuild/BUILDROOT/scummvm-2.2.0-2.mga9.aarch64/usr/share/metainfo"
/usr/bin/install -p -c -m 644 "./dists/scummvm.appdata.xml" "/home/iurt/rpmbuild/BUILDROOT/scummvm-2.2.0-2.mga9.aarch64/usr/share/metainfo/scummvm.appdata.xml"
+ mkdir -p /home/iurt/rpmbuild/BUILDROOT/scummvm-2.2.0-2.mga9.aarch64/usr/share/applications
+ cp dists/scummvm.desktop /home/iurt/rpmbuild/BUILDROOT/scummvm-2.2.0-2.mga9.aarch64/usr/share/applications
+ install -D -m 644 dists/redhat/scummvm48.png /home/iurt/rpmbuild/BUILDROOT/scummvm-2.2.0-2.mga9.aarch64/usr/share/icons/hicolor/48x48/apps/scummvm.png
+ install -D -m 644 icons/scummvm.svg /home/iurt/rpmbuild/BUILDROOT/scummvm-2.2.0-2.mga9.aarch64/usr/share/icons/hicolor/scalable/apps/scummvm.svg
+ /usr/bin/find-debuginfo -j8 --strict-build-id -m -i --build-id-seed 2.2.0-2.mga9 --unique-debug-suffix -2.2.0-2.mga9.aarch64 --unique-debug-src-base scummvm-2.2.0-2.mga9.aarch64 --run-dwz --dwz-low-mem-die-limit 10000000 --dwz-max-die-limit 50000000 -S debugsourcefiles.list /home/iurt/rpmbuild/BUILD/scummvm-2.2.0

extracting debug info from /home/iurt/rpmbuild/BUILDROOT/scummvm-2.2.0-2.mga9.aarch64/usr/games/scummvm
dwz: ./usr/games/scummvm-2.2.0-2.mga9.aarch64.debug: Unknown debugging section .debug_line_str
original debug info size: 375312kB, size after compression: 375312kB
/usr/bin/sepdebugcrcfix: Updated 0 CRC32s, 1 CRC32s did match.
177988 blocks
+ /usr/lib/rpm/check-buildroot
+ '[' -n '' ']'
+ /usr/share/spec-helper/clean_files
+ '[' -n '' ']'
+ /usr/share/spec-helper/compress_files .xz
+ '[' -n '' ']'
+ /usr/share/spec-helper/relink_symlinks
+ '[' -n '' ']'
+ /usr/share/spec-helper/clean_perl
+ '[' -n '' ']'
+ /usr/share/spec-helper/lib_symlinks
+ '[' -n '' ']'
+ /usr/share/spec-helper/gprintify
+ '[' -n '' ']'
+ /usr/share/spec-helper/fix_mo
+ '[' -n '' ']'
+ /usr/share/spec-helper/fix_pamd
+ '[' -n '' ']'
+ /usr/share/spec-helper/remove_info_dir
+ '[' -n '' ']'
+ /usr/share/spec-helper/fix_eol
+ '[' -n '' ']'
+ /usr/share/spec-helper/check_desktop_files
+ '[' -n '' ']'
+ /usr/share/spec-helper/check_elf_files
+ /usr/lib/rpm/brp-python-bytecompile /usr/bin/python3 1 0
+ /usr/lib/rpm/check-rpaths
+ /usr/lib/rpm/brp-remove-la-files
+ /usr/lib/rpm/redhat/brp-mangle-shebangs
Processing files: scummvm-2.2.0-2.mga9.aarch64
Provides: application() application(scummvm.desktop) metainfo() metainfo(scummvm.appdata.xml) scummvm = 2.2.0-2.mga9 scummvm(aarch-64) = 2.2.0-2.mga9
Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1
Requires: ld-linux-aarch64.so.1()(64bit) ld-linux-aarch64.so.1(GLIBC_2.17)(64bit) libFLAC.so.8()(64bit) libSDL2-2.0.so.0()(64bit) libasound.so.2()(64bit) libasound.so.2(ALSA_0.9)(64bit) libc.so.6()(64bit) libc.so.6(GLIBC_2.17)(64bit) libc.so.6(GLIBC_2.33)(64bit) libcurl.so.4()(64bit) libfluidsynth.so.3()(64bit) libfreetype.so.6()(64bit) libfribidi.so.0()(64bit) libgcc_s.so.1()(64bit) libgcc_s.so.1(GCC_3.0)(64bit) libglib-2.0.so.0()(64bit) libgobject-2.0.so.0()(64bit) libgtk-3.so.0()(64bit) libjpeg.so.8()(64bit) libjpeg.so.8(LIBJPEG_8.0)(64bit) libm.so.6()(64bit) libm.so.6(GLIBC_2.17)(64bit) libm.so.6(GLIBC_2.27)(64bit) libm.so.6(GLIBC_2.29)(64bit) libmad.so.0()(64bit) libmpeg2.so.0()(64bit) libpng16.so.16()(64bit) libpng16.so.16(PNG16_0)(64bit) libpthread.so.0()(64bit) libpthread.so.0(GLIBC_2.17)(64bit) libreadline.so.8()(64bit) libspeechd.so.2()(64bit) libstdc++.so.6()(64bit) libstdc++.so.6(CXXABI_1.3)(64bit) libstdc++.so.6(GLIBCXX_3.4)(64bit) libvorbisfile.so.3()(64bit) libz.so.1()(64bit)
Processing files: scummvm-debugsource-2.2.0-2.mga9.aarch64
Provides: scummvm-debugsource = 2.2.0-2.mga9 scummvm-debugsource(aarch-64) = 2.2.0-2.mga9
Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1
Processing files: scummvm-debuginfo-2.2.0-2.mga9.aarch64
Provides: debuginfo(build-id) = 497c051a46a1230bc636d1198a5634aaead5085e scummvm-debuginfo = 2.2.0-2.mga9 scummvm-debuginfo(aarch-64) = 2.2.0-2.mga9
Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1
Recommends: scummvm-debugsource(aarch-64) = 2.2.0-2.mga9
Checking for unpackaged file(s): /usr/lib/rpm/check-files /home/iurt/rpmbuild/BUILDROOT/scummvm-2.2.0-2.mga9.aarch64
Wrote: /home/iurt/rpmbuild/RPMS/aarch64/scummvm-2.2.0-2.mga9.aarch64.rpm
Wrote: /home/iurt/rpmbuild/RPMS/aarch64/scummvm-debugsource-2.2.0-2.mga9.aarch64.rpm
Wrote: /home/iurt/rpmbuild/RPMS/aarch64/scummvm-debuginfo-2.2.0-2.mga9.aarch64.rpm
Executing(%clean): /bin/sh -e /home/iurt/rpmbuild/tmp/rpm-tmp.e10AI8
+ umask 022
+ cd /home/iurt/rpmbuild/BUILD
+ cd scummvm-2.2.0
+ /usr/bin/rm -rf /home/iurt/rpmbuild/BUILDROOT/scummvm-2.2.0-2.mga9.aarch64
+ RPM_EC=0
++ jobs -p
+ exit 0
Executing(--clean): /bin/sh -e /home/iurt/rpmbuild/tmp/rpm-tmp.8wGvFS
+ umask 022
+ cd /home/iurt/rpmbuild/BUILD
+ rm -rf scummvm-2.2.0
+ RPM_EC=0
++ jobs -p
+ exit 0
D: [iurt_root_command] Success!