<86>Dec 4 19:11:51 userdel[2551594]: delete user 'rooter' <86>Dec 4 19:11:51 groupadd[2551614]: group added to /etc/group: name=rooter, GID=657 <86>Dec 4 19:11:51 groupadd[2551614]: group added to /etc/gshadow: name=rooter <86>Dec 4 19:11:51 groupadd[2551614]: new group: name=rooter, GID=657 <86>Dec 4 19:11:51 useradd[2551628]: new user: name=rooter, UID=657, GID=657, home=/root, shell=/bin/bash <86>Dec 4 19:11:51 userdel[2551644]: delete user 'builder' <86>Dec 4 19:11:51 userdel[2551644]: removed group 'builder' owned by 'builder' <86>Dec 4 19:11:51 userdel[2551644]: removed shadow group 'builder' owned by 'builder' <86>Dec 4 19:11:51 groupadd[2551653]: group added to /etc/group: name=builder, GID=658 <86>Dec 4 19:11:51 groupadd[2551653]: group added to /etc/gshadow: name=builder <86>Dec 4 19:11:51 groupadd[2551653]: new group: name=builder, GID=658 <86>Dec 4 19:11:51 useradd[2551661]: new user: name=builder, UID=658, GID=658, home=/usr/src, shell=/bin/bash <13>Dec 4 19:11:54 rpmi: libSDL2-2.0.12-alt4 sisyphus+261827.100.1.1 1605520031 installed <13>Dec 4 19:11:54 rpmi: libglvnd-7:1.3.2-alt1 sisyphus+254610.100.1.1 1594124268 installed <13>Dec 4 19:11:54 rpmi: libexpat-2.2.10-alt1 sisyphus+259966.100.1.1 1602824518 installed <13>Dec 4 19:11:54 rpmi: libpng16-1.6.37-alt1 sisyphus+236677.100.2.1 1566917998 installed <13>Dec 4 19:11:54 rpmi: libgraphite2-1.3.14-alt2 sisyphus+250009.100.1.1 1586943065 installed <13>Dec 4 19:11:54 rpmi: xorg-proto-devel-2020.1-alt1 sisyphus+250406.100.1.1 1587554810 installed <13>Dec 4 19:11:54 rpmi: libwayland-server-1.18.0-alt1 sisyphus+255795.100.1.1 1596475648 installed <13>Dec 4 19:11:55 rpmi: libicu67-1:6.7.1-alt2 sisyphus+252432.100.2.2 1590796126 installed <13>Dec 4 19:11:55 rpmi: icu-utils-1:6.7.1-alt2 sisyphus+252432.100.2.2 1590796126 installed <13>Dec 4 19:11:55 rpmi: libicu-devel-1:6.7.1-alt2 sisyphus+252432.100.2.2 1590796126 installed <13>Dec 4 19:11:55 rpmi: libgraphite2-devel-1.3.14-alt2 sisyphus+250009.100.1.1 1586943065 installed <13>Dec 4 19:11:55 rpmi: libGLES-7:1.3.2-alt1 sisyphus+254610.100.1.1 1594124268 installed <13>Dec 4 19:11:55 rpmi: libOpenGL-7:1.3.2-alt1 sisyphus+254610.100.1.1 1594124268 installed <13>Dec 4 19:11:55 rpmi: libSDL2_image-2.0.4-alt3 sisyphus+226885.100.1.1 1554750422 installed <13>Dec 4 19:11:55 rpmi: libSDL2_mixer-2.0.4-alt2 sisyphus+226796.100.1.1 1554637286 installed <13>Dec 4 19:11:56 rpmi: libSDL2_net-2.0.1-alt1 1453488111 installed <13>Dec 4 19:11:56 rpmi: zlib-devel-1.2.11-alt1 sisyphus+221902.6000.4.1 1550601058 installed <13>Dec 4 19:11:56 rpmi: libogg-1.3.4-alt1 sisyphus+247109.100.1.1 1582849994 installed <13>Dec 4 19:11:56 rpmi: libbrotlicommon-1.0.9-alt2 sisyphus+257777.100.1.1 1599688017 installed <13>Dec 4 19:11:56 rpmi: libbrotlidec-1.0.9-alt2 sisyphus+257777.100.1.1 1599688017 installed <13>Dec 4 19:11:56 rpmi: libharfbuzz-2.6.8-alt1 sisyphus+254028.100.1.1 1593106819 installed <13>Dec 4 19:11:56 rpmi: libfreetype-2.10.4-alt2 sisyphus+260293.100.2.1 1604479496 installed <13>Dec 4 19:11:56 rpmi: libSDL2_ttf-2.0.14-alt1 1468489205 installed <13>Dec 4 19:11:56 rpmi: libharfbuzz-icu-2.6.8-alt1 sisyphus+254028.100.1.1 1593106819 installed <13>Dec 4 19:11:56 rpmi: libharfbuzz-gobject-2.6.8-alt1 sisyphus+254028.100.1.1 1593106819 installed <13>Dec 4 19:11:56 rpmi: libxshmfence-1.3-alt1 sisyphus+223149.1000.2.1 1551268571 installed <13>Dec 4 19:11:56 rpmi: libX11-locales-3:1.6.12-alt1 sisyphus+256796.100.1.1 1598422159 installed <13>Dec 4 19:11:56 rpmi: libXdmcp-1.1.3-alt1 sisyphus+225206.600.1.2 1552949353 installed <13>Dec 4 19:11:56 rpmi: libXau-1.0.9-alt1 sisyphus+223149.200.2.1 1551268152 installed <13>Dec 4 19:11:56 rpmi: libxcb-1.14-alt1 sisyphus+247358.200.1.3 1583854228 installed <13>Dec 4 19:11:56 rpmi: libX11-3:1.6.12-alt1 sisyphus+256796.100.1.1 1598422166 installed <13>Dec 4 19:11:56 rpmi: libXext-1.3.4-alt1 sisyphus+225206.700.1.2 1552949429 installed <13>Dec 4 19:11:56 rpmi: libXxf86vm-1.1.4-alt2 1527672187 installed <13>Dec 4 19:11:56 rpmi: libXdamage-1.1.5-alt1 sisyphus+225206.500.1.2 1552949286 installed <13>Dec 4 19:11:56 rpmi: libXfixes-5.0.3-alt1 sisyphus+226736.100.2.2 1554614841 installed <13>Dec 4 19:11:57 rpmi: libxcb-devel-1.14-alt1 sisyphus+247358.200.1.3 1583854228 installed <13>Dec 4 19:11:57 rpmi: libX11-devel-3:1.6.12-alt1 sisyphus+256796.100.1.1 1598422166 installed <13>Dec 4 19:11:57 rpmi: libwayland-client-1.18.0-alt1 sisyphus+255795.100.1.1 1596475648 installed <13>Dec 4 19:11:57 rpmi: libpciaccess-1:0.16-alt1 sisyphus+234814.100.1.1 1563438291 installed <13>Dec 4 19:11:57 rpmi: libdrm-1:2.4.103-alt1 sisyphus+261080.100.1.1 1604598368 installed <13>Dec 4 19:11:57 rpmi: libGLX-mesa-4:20.2.3-alt1 sisyphus+262368.100.1.1 1606200337 installed <13>Dec 4 19:11:57 rpmi: libGLX-7:1.3.2-alt1 sisyphus+254610.100.1.1 1594124268 installed <13>Dec 4 19:11:57 rpmi: libGL-7:1.3.2-alt1 sisyphus+254610.100.1.1 1594124268 installed <13>Dec 4 19:11:57 rpmi: libgbm-4:20.2.3-alt1 sisyphus+262368.100.1.1 1606200337 installed <13>Dec 4 19:11:57 rpmi: libEGL-mesa-4:20.2.3-alt1 sisyphus+262368.100.1.1 1606200337 installed <13>Dec 4 19:11:57 rpmi: libEGL-7:1.3.2-alt1 sisyphus+254610.100.1.1 1594124268 installed <13>Dec 4 19:11:57 rpmi: libglvnd-devel-7:1.3.2-alt1 sisyphus+254610.100.1.1 1594124268 installed <13>Dec 4 19:11:57 rpmi: libSDL2-devel-2.0.12-alt4 sisyphus+261827.100.1.1 1605520031 installed <13>Dec 4 19:11:57 rpmi: libgdbm-1.8.3-alt10 1454943334 installed <13>Dec 4 19:11:57 rpmi: xml-utils-1:2.9.10-alt4 sisyphus+261132.100.1.1 1604669137 installed <13>Dec 4 19:11:57 rpmi: rpm-build-gir-0.7.3-alt3 sisyphus+242150.100.1.1 1575312005 installed <13>Dec 4 19:11:57 rpmi: gcc-c++-common-1.4.26-alt1 icarus+262780.400.2.1 1606887104 installed <13>Dec 4 19:11:58 rpmi: libstdc++10-devel-10.2.1-alt2 icarus+262842.100.1.1 1606948274 installed <13>Dec 4 19:11:59 rpmi: gcc10-c++-10.2.1-alt2 icarus+262842.100.1.1 1606948274 installed <13>Dec 4 19:11:59 rpmi: libp11-kit-0.23.15-alt2 sisyphus+252784.100.2.2 1591274901 installed <13>Dec 4 19:11:59 rpmi: libtasn1-4.16.0-alt1 sisyphus+245480.100.1.1 1580825062 installed <13>Dec 4 19:11:59 rpmi: rpm-macros-alternatives-0.5.1-alt1 sisyphus+226946.100.1.1 1554830426 installed <13>Dec 4 19:11:59 rpmi: alternatives-0.5.1-alt1 sisyphus+226946.100.1.1 1554830426 installed <13>Dec 4 19:11:59 rpmi: ca-certificates-2020.10.22-alt1 sisyphus+260224.300.2.1 1603549301 installed <13>Dec 4 19:11:59 rpmi: ca-trust-0.1.2-alt1 sisyphus+233348.100.1.1 1561653823 installed <13>Dec 4 19:11:59 rpmi: p11-kit-trust-0.23.15-alt2 sisyphus+252784.100.2.2 1591274901 installed <13>Dec 4 19:11:59 rpmi: libcrypto1.1-1.1.1g-alt1 sisyphus+249982.60.8.1 1587743711 installed <13>Dec 4 19:11:59 rpmi: libssl1.1-1.1.1g-alt1 sisyphus+249982.60.8.1 1587743711 installed <13>Dec 4 19:11:59 rpmi: libpython3-3.8.6-alt1 sisyphus+259085.100.2.1 1601904174 installed <13>Dec 4 19:11:59 rpmi: python3-3.8.6-alt1 sisyphus+259085.100.2.1 1601904174 installed <13>Dec 4 19:12:00 rpmi: python3-base-3.8.6-alt1 sisyphus+259085.100.2.1 1601904174 installed <13>Dec 4 19:12:00 rpmi: glib2-devel-2.66.3-alt1 sisyphus+261863.100.1.1 1605540253 installed <13>Dec 4 19:12:00 rpmi: libfreetype-devel-2.10.4-alt2 sisyphus+260293.100.2.1 1604479496 installed <13>Dec 4 19:12:00 rpmi: libharfbuzz-devel-2.6.8-alt1 sisyphus+254028.100.1.1 1593106819 installed <13>Dec 4 19:12:00 rpmi: gcc-c++-10-alt1 icarus+262780.300.2.1 1606888886 installed <13>Dec 4 19:12:00 rpmi: libSDL2_image-devel-2.0.4-alt3 sisyphus+226885.100.1.1 1554750422 installed <13>Dec 4 19:12:00 rpmi: libSDL2_mixer-devel-2.0.4-alt2 sisyphus+226796.100.1.1 1554637286 installed <13>Dec 4 19:12:00 rpmi: libSDL2_net-devel-2.0.1-alt1 1453488111 installed <13>Dec 4 19:12:00 rpmi: libSDL2_ttf-devel-2.0.14-alt1 1468489205 installed <13>Dec 4 19:12:00 rpmi: libogg-devel-1.3.4-alt1 sisyphus+247109.100.1.1 1582849994 installed <13>Dec 4 19:12:00 rpmi: libpng-devel-1.6.37-alt1 sisyphus+236677.100.2.1 1566917998 installed Building target platforms: i586 Building for target i586 Wrote: /usr/src/in/nosrpm/fheroes2-0.8.3-alt1.20201104.nosrc.rpm Installing fheroes2-0.8.3-alt1.20201104.src.rpm Building target platforms: i586 Building for target i586 Executing(%prep): /bin/sh -e /usr/src/tmp/rpm-tmp.13929 + umask 022 + /bin/mkdir -p /usr/src/RPM/BUILD + cd /usr/src/RPM/BUILD + cd /usr/src/RPM/BUILD + rm -rf fheroes2-0.8.3 + echo 'Source #0 (fheroes2-0.8.3.tar):' Source #0 (fheroes2-0.8.3.tar): + /bin/tar -xf /usr/src/RPM/SOURCES/fheroes2-0.8.3.tar + cd fheroes2-0.8.3 + /bin/chmod -c -Rf u+rwX,go-w . + exit 0 Executing(%build): /bin/sh -e /usr/src/tmp/rpm-tmp.13929 + umask 022 + /bin/mkdir -p /usr/src/RPM/BUILD + cd /usr/src/RPM/BUILD + cd fheroes2-0.8.3 + export WITH_SDL2=ON + WITH_SDL2=ON + make -j8 WITH_AI=simple CONFIGURE_FHEROES2_DATA=/usr/share/games/fheroes2/ make -C src make -C thirdparty/tinyxml CFLAGS="-std=c++11 -O3 -fsigned-char" make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/thirdparty/tinyxml' g++ -c -MD tinyxmlerror.cpp -std=c++11 -O3 -fsigned-char make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/thirdparty/tinyxml' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/thirdparty/tinyxml' g++ -c -MD tinystr.cpp -std=c++11 -O3 -fsigned-char make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/thirdparty/tinyxml' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/thirdparty/tinyxml' g++ -c -MD tinyxmlparser.cpp -std=c++11 -O3 -fsigned-char make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/thirdparty/tinyxml' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/thirdparty/tinyxml' g++ -c -MD tinyxml.cpp -std=c++11 -O3 -fsigned-char make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/thirdparty/tinyxml' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/thirdparty/tinyxml' ar crvs libtinyxml.a tinystr.o tinyxml.o tinyxmlerror.o tinyxmlparser.o a - tinystr.o a - tinyxml.o a - tinyxmlerror.o a - tinyxmlparser.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/thirdparty/tinyxml' make -C thirdparty/libsmacker CFLAGS="-O3 -fsigned-char" make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/thirdparty/libsmacker' cc -c -MD smk_bitstream.c -O3 -fsigned-char make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/thirdparty/libsmacker' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/thirdparty/libsmacker' cc -c -MD smk_hufftree.c -O3 -fsigned-char make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/thirdparty/libsmacker' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/thirdparty/libsmacker' cc -c -MD smacker.c -O3 -fsigned-char make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/thirdparty/libsmacker' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/thirdparty/libsmacker' ar crvs libsmacker.a smacker.o smk_bitstream.o smk_hufftree.o a - smacker.o a - smk_bitstream.o a - smk_hufftree.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/thirdparty/libsmacker' make -C engine make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' g++ -c -MD audio_cdrom.cpp -I/usr/include/SDL2 -D_REENTRANT -std=c++11 -O3 -fsigned-char -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -DWITH_MIXER -DWITH_IMAGE -I/usr/include/libpng16 -DWITH_ZLIB -DWITH_TTF -DWITH_XML -DWITH_ZLIB -DWITH_ICONV -I../thirdparty/libsmacker make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' g++ -c -MD error.cpp -I/usr/include/SDL2 -D_REENTRANT -std=c++11 -O3 -fsigned-char -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -DWITH_MIXER -DWITH_IMAGE -I/usr/include/libpng16 -DWITH_ZLIB -DWITH_TTF -DWITH_XML -DWITH_ZLIB -DWITH_ICONV -I../thirdparty/libsmacker make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' g++ -c -MD IMG_savepng.cpp -I/usr/include/SDL2 -D_REENTRANT -std=c++11 -O3 -fsigned-char -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -DWITH_MIXER -DWITH_IMAGE -I/usr/include/libpng16 -DWITH_ZLIB -DWITH_TTF -DWITH_XML -DWITH_ZLIB -DWITH_ICONV -I../thirdparty/libsmacker make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' g++ -c -MD image_tool.cpp -I/usr/include/SDL2 -D_REENTRANT -std=c++11 -O3 -fsigned-char -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -DWITH_MIXER -DWITH_IMAGE -I/usr/include/libpng16 -DWITH_ZLIB -DWITH_TTF -DWITH_XML -DWITH_ZLIB -DWITH_ICONV -I../thirdparty/libsmacker image_tool.cpp: In function 'bool {anonymous}::SaveImage(const fheroes2::Image&, const string&)': image_tool.cpp:55:43: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 55 | const uint32_t width = image.width(); | ~~~~~~~~~~~^~ image_tool.cpp:56:45: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 56 | const uint32_t height = image.height(); | ~~~~~~~~~~~~^~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' g++ -c -MD font.cpp -I/usr/include/SDL2 -D_REENTRANT -std=c++11 -O3 -fsigned-char -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -DWITH_MIXER -DWITH_IMAGE -I/usr/include/libpng16 -DWITH_ZLIB -DWITH_TTF -DWITH_XML -DWITH_ZLIB -DWITH_ICONV -I../thirdparty/libsmacker font.cpp: In member function 'fheroes2::Image FontPSF::RenderText(const string&, uint8_t) const': font.cpp:143:25: warning: comparison of integer expressions of different signedness: 'int32_t' {aka 'int'} and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 143 | if ( offset < _data.size() ) { | ~~~~~~~^~~~~~~~~~~~~~ font.cpp:144:44: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 144 | const int32_t line = _data[offset]; | ^~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' g++ -c -MD engine.cpp -I/usr/include/SDL2 -D_REENTRANT -std=c++11 -O3 -fsigned-char -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -DWITH_MIXER -DWITH_IMAGE -I/usr/include/libpng16 -DWITH_ZLIB -DWITH_TTF -DWITH_XML -DWITH_ZLIB -DWITH_ICONV -I../thirdparty/libsmacker make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' g++ -c -MD dir.cpp -I/usr/include/SDL2 -D_REENTRANT -std=c++11 -O3 -fsigned-char -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -DWITH_MIXER -DWITH_IMAGE -I/usr/include/libpng16 -DWITH_ZLIB -DWITH_TTF -DWITH_XML -DWITH_ZLIB -DWITH_ICONV -I../thirdparty/libsmacker dir.cpp: In member function 'void ListFiles::ReadDir(const string&, const string&, bool)': dir.cpp:69:50: warning: conversion to 'int' from 'size_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 69 | const int filenameLength = strlen( ep->d_name ); | ~~~~~~^~~~~~~~~~~~~~ dir.cpp:70:37: warning: comparison of integer expressions of different signedness: 'const int' and 'std::__cxx11::basic_string::size_type' {aka 'unsigned int'} [-Wsign-compare] 70 | if ( filenameLength < filter.length() ) | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' g++ -c -MD audio_mixer.cpp -I/usr/include/SDL2 -D_REENTRANT -std=c++11 -O3 -fsigned-char -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -DWITH_MIXER -DWITH_IMAGE -I/usr/include/libpng16 -DWITH_ZLIB -DWITH_TTF -DWITH_XML -DWITH_ZLIB -DWITH_ICONV -I../thirdparty/libsmacker audio_mixer.cpp: In function 'void Mixer::Init()': audio_mixer.cpp:72:33: warning: conversion from 'int' to 'Uint8' {aka 'unsigned char'} may change value [-Wconversion] 72 | hardware.channels = channels; | ^~~~~~~~ audio_mixer.cpp: In function 'Mixer::chunk_t* Mixer::LoadWAV(const u8*, u32)': audio_mixer.cpp:118:67: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 118 | Mix_Chunk * sample = Mix_LoadWAV_RW( SDL_RWFromConstMem( ptr, size ), 1 ); | ^~~~ audio_mixer.cpp: In function 'u16 Mixer::Volume(int, s16)': audio_mixer.cpp:165:22: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 165 | return Mix_Volume( channel, vol > MIX_MAX_VOLUME ? MIX_MAX_VOLUME : vol ); | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ audio_mixer.cpp: In function 'u8 Mixer::isPlaying(int)': audio_mixer.cpp:195:23: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 195 | return Mix_Playing( channel ); | ~~~~~~~~~~~^~~~~~~~~~~ audio_mixer.cpp: In function 'u8 Mixer::isPaused(int)': audio_mixer.cpp:200:22: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 200 | return Mix_Paused( channel ); | ~~~~~~~~~~^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' g++ -c -MD audio.cpp -I/usr/include/SDL2 -D_REENTRANT -std=c++11 -O3 -fsigned-char -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -DWITH_MIXER -DWITH_IMAGE -I/usr/include/libpng16 -DWITH_ZLIB -DWITH_TTF -DWITH_XML -DWITH_ZLIB -DWITH_ICONV -I../thirdparty/libsmacker make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' g++ -c -MD sdlnet.cpp -I/usr/include/SDL2 -D_REENTRANT -std=c++11 -O3 -fsigned-char -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -DWITH_MIXER -DWITH_IMAGE -I/usr/include/libpng16 -DWITH_ZLIB -DWITH_TTF -DWITH_XML -DWITH_ZLIB -DWITH_ICONV -I../thirdparty/libsmacker make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' g++ -c -MD audio_music.cpp -I/usr/include/SDL2 -D_REENTRANT -std=c++11 -O3 -fsigned-char -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -DWITH_MIXER -DWITH_IMAGE -I/usr/include/libpng16 -DWITH_ZLIB -DWITH_TTF -DWITH_XML -DWITH_ZLIB -DWITH_ICONV -I../thirdparty/libsmacker audio_music.cpp: In function 'void Music::Play(const std::vector&, bool)': audio_music.cpp:59:62: warning: conversion to 'int' from 'std::vector::size_type' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 59 | SDL_RWops * rwops = SDL_RWFromConstMem( &v[0], v.size() ); | ~~~~~~^~ audio_music.cpp: In function 'u16 Music::Volume(s16)': audio_music.cpp:96:29: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 96 | return Mixer::isValid() ? ( Mix_VolumeMusic( vol > MIX_MAX_VOLUME ? MIX_MAX_VOLUME : vol ) ) : 0; | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' g++ -c -MD pal.cpp -I/usr/include/SDL2 -D_REENTRANT -std=c++11 -O3 -fsigned-char -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -DWITH_MIXER -DWITH_IMAGE -I/usr/include/libpng16 -DWITH_ZLIB -DWITH_TTF -DWITH_XML -DWITH_ZLIB -DWITH_ICONV -I../thirdparty/libsmacker pal.cpp: In function 'std::vector PAL::GetCyclingPalette(int)': pal.cpp:147:52: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 147 | const uint8_t newColorID = it->forward ? it->start + ( id + stepId ) % it->length : it->start + lastColorID - ( lastColorID + stepId - id ) % it->length; | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ pal.cpp:148:31: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 148 | palette[it->start + id] = newColorID; | ~~~~~~~~~~^~~~ pal.cpp: In function 'const std::vector& PAL::GetPalette(int)': pal.cpp:204:22: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 204 | standard[i] = static_cast( i ); | ^ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' g++ -c -MD localevent.cpp -I/usr/include/SDL2 -D_REENTRANT -std=c++11 -O3 -fsigned-char -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -DWITH_MIXER -DWITH_IMAGE -I/usr/include/libpng16 -DWITH_ZLIB -DWITH_TTF -DWITH_XML -DWITH_ZLIB -DWITH_ICONV -I../thirdparty/libsmacker localevent.cpp: In member function 'bool {anonymous}::ColorCycling::applyCycling(std::vector&)': localevent.cpp:446:59: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 446 | palette = PAL::GetCyclingPalette( _counter++ ); | ~~~~~~~~^~ localevent.cpp: In member function 'bool LocalEvent::HandleEvents(bool, bool)': localevent.cpp:641:20: warning: conversion to 'Uint32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 641 | SDL_Delay( loop_delay ); | ^~~~~~~~~~ localevent.cpp: In member function 'void LocalEvent::HandleMouseMotionEvent(const SDL_MouseMotionEvent&)': localevent.cpp:702:26: warning: conversion to 'int' from 'Uint32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 702 | mouse_state = motion.state; | ~~~~~~~^~~~~ localevent.cpp:704:25: warning: conversion from 'Sint32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 704 | mouse_cu.x = motion.x; | ~~~~~~~^ localevent.cpp:705:25: warning: conversion from 'Sint32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 705 | mouse_cu.y = motion.y; | ~~~~~~~^ localevent.cpp: In member function 'void LocalEvent::HandleMouseButtonEvent(const SDL_MouseButtonEvent&)': localevent.cpp:715:25: warning: conversion from 'Sint32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 715 | mouse_cu.x = button.x; | ~~~~~~~^ localevent.cpp:716:25: warning: conversion from 'Sint32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 716 | mouse_cu.y = button.y; | ~~~~~~~^ localevent.cpp: In member function 'void LocalEvent::HandleMouseWheelEvent(const SDL_MouseWheelEvent&)': localevent.cpp:790:24: warning: conversion from 'Sint32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 790 | mouse_wm.x = wheel.x; | ~~~~~~^ localevent.cpp:791:24: warning: conversion from 'Sint32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 791 | mouse_wm.y = wheel.y; | ~~~~~~^ localevent.cpp: In member function 'bool LocalEvent::MousePressLeft(const Point&, u32, u32) const': localevent.cpp:881:52: warning: conversion from 'u32' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 881 | return MousePressLeft() && ( Rect( pt.x, pt.y, w, h ) & mouse_pl ); | ^ localevent.cpp:881:55: warning: conversion from 'u32' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 881 | return MousePressLeft() && ( Rect( pt.x, pt.y, w, h ) & mouse_pl ); | ^ localevent.cpp: In member function 'const Point& LocalEvent::GetMouseCursor()': localevent.cpp:971:22: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 971 | mouse_cu.x = x; | ^ localevent.cpp:972:22: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 972 | mouse_cu.y = y; | ^ localevent.cpp: In static member function 'static int LocalEvent::GlobalFilterEvents(void*, SDL_Event*)': localevent.cpp:1012:44: warning: unused parameter 'userdata' [-Wunused-parameter] 1012 | int LocalEvent::GlobalFilterEvents( void * userdata, SDL_Event * event ) | ~~~~~~~^~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' g++ -c -MD screen.cpp -I/usr/include/SDL2 -D_REENTRANT -std=c++11 -O3 -fsigned-char -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -DWITH_MIXER -DWITH_IMAGE -I/usr/include/libpng16 -DWITH_ZLIB -DWITH_TTF -DWITH_XML -DWITH_ZLIB -DWITH_ICONV -I../thirdparty/libsmacker screen.cpp: In function 'std::pair {anonymous}::GetNearestResolution(int, int, const std::vector >&)': screen.cpp:61:28: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'std::vector::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 61 | return resolutions[id]; | ^~ screen.cpp: In member function 'virtual void {anonymous}::RenderCursor::update(const fheroes2::Image&, int32_t, int32_t)': screen.cpp:141:47: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 141 | const uint32_t width = image.width(); | ~~~~~~~~~~~^~ screen.cpp:142:49: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 142 | const uint32_t height = image.height(); | ~~~~~~~~~~~~^~ screen.cpp: In member function 'virtual void {anonymous}::RenderEngine::setIcon(const fheroes2::Image&)': screen.cpp:322:46: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 322 | const uint32_t width = icon.width(); | ~~~~~~~~~~^~ screen.cpp:323:48: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 323 | const uint32_t height = icon.height(); | ~~~~~~~~~~~^~ screen.cpp: In member function 'virtual void {anonymous}::RenderEngine::render(const fheroes2::Display&)': screen.cpp:431:73: warning: conversion to 'Uint32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 431 | _renderer = SDL_CreateRenderer( _window, -1, renderFlags() ); | ~~~~~~~~~~~^~ screen.cpp: In member function 'virtual bool {anonymous}::RenderEngine::allocate(int32_t&, int32_t&, bool)': screen.cpp:471:69: warning: conversion to 'Uint32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 471 | _renderer = SDL_CreateRenderer( _window, -1, renderFlags() ); | ~~~~~~~~~~~^~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' g++ -c -MD image.cpp -I/usr/include/SDL2 -D_REENTRANT -std=c++11 -O3 -fsigned-char -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -DWITH_MIXER -DWITH_IMAGE -I/usr/include/libpng16 -DWITH_ZLIB -DWITH_TTF -DWITH_XML -DWITH_ZLIB -DWITH_ICONV -I../thirdparty/libsmacker image.cpp: In function 'uint8_t {anonymous}::GetPALColorId(uint8_t, uint8_t, uint8_t)': image.cpp:331:41: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 331 | return rgbToId[red + green * 64 + blue * 64 * 64]; | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ image.cpp: In function 'void fheroes2::Resize(const fheroes2::Image&, fheroes2::Image&, bool)': image.cpp:1459:44: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 1459 | std::vector positionX( widthOut ); | ^~~~~~~~ image.cpp:1460:44: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 1460 | std::vector positionY( heightOut ); | ^~~~~~~~~ image.cpp:1462:27: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 1462 | positionX[x] = static_cast( x * widthIn ) / widthOut; | ^ image.cpp:1464:27: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 1464 | positionY[y] = static_cast( y * heightIn ) / heightOut; | ^ image.cpp:1467:47: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 1467 | const double posY = positionY[y]; | ^ image.cpp:1475:51: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 1475 | const double posX = positionX[x]; | ^ image.cpp:1518:45: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 1518 | std::vector positionX( widthOut ); | ^~~~~~~~ image.cpp:1520:27: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 1520 | positionX[x] = ( x * widthIn ) / widthOut; | ^ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' g++ -c -MD smk_decoder.cpp -I/usr/include/SDL2 -D_REENTRANT -std=c++11 -O3 -fsigned-char -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -DWITH_MIXER -DWITH_IMAGE -I/usr/include/libpng16 -DWITH_ZLIB -DWITH_TTF -DWITH_XML -DWITH_ZLIB -DWITH_ICONV -I../thirdparty/libsmacker smk_decoder.cpp: In member function 'void SMKVideoSequence::getNextFrame(fheroes2::Image&, std::vector&)': smk_decoder.cpp:174:19: warning: conversion to 'int32_t' {aka 'int'} from 'long unsigned int' may change the sign of the result [-Wsign-conversion] 174 | image.resize( _width, _height ); | ^~~~~~ smk_decoder.cpp:174:27: warning: conversion to 'int32_t' {aka 'int'} from 'long unsigned int' may change the sign of the result [-Wsign-conversion] 174 | image.resize( _width, _height ); | ^~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' g++ -c -MD rand.cpp -I/usr/include/SDL2 -D_REENTRANT -std=c++11 -O3 -fsigned-char -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -DWITH_MIXER -DWITH_IMAGE -I/usr/include/libpng16 -DWITH_ZLIB -DWITH_TTF -DWITH_XML -DWITH_ZLIB -DWITH_ICONV -I../thirdparty/libsmacker rand.cpp: In function 'uint32_t Rand::Get(uint32_t, uint32_t)': rand.cpp:42:46: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 42 | std::uniform_int_distribution<> distrib( from, to ); | ^~~~ rand.cpp:42:52: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 42 | std::uniform_int_distribution<> distrib( from, to ); | ^~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' g++ -c -MD rect.cpp -I/usr/include/SDL2 -D_REENTRANT -std=c++11 -O3 -fsigned-char -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -DWITH_MIXER -DWITH_IMAGE -I/usr/include/libpng16 -DWITH_ZLIB -DWITH_TTF -DWITH_XML -DWITH_ZLIB -DWITH_ICONV -I../thirdparty/libsmacker rect.cpp: In member function 'Point Point::rotate(double) const': rect.cpp:99:32: warning: conversion from 'double' to 's16' {aka 'short int'} may change value [-Wfloat-conversion] 99 | return Point( x * cosValue - y * sinValue, x * sinValue + y * cosValue ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~ rect.cpp:99:61: warning: conversion from 'double' to 's16' {aka 'short int'} may change value [-Wfloat-conversion] 99 | return Point( x * cosValue - y * sinValue, x * sinValue + y * cosValue ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~ rect.cpp: In constructor 'Rect::Rect(const Rect&)': rect.cpp:171:19: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 171 | : Point( rect.x, rect.y ) | ~~~~~^ rect.cpp:171:27: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 171 | : Point( rect.x, rect.y ) | ~~~~~^ rect.cpp:172:18: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 172 | , Size( rect.width, rect.height ) | ~~~~~^~~~~ rect.cpp:172:30: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 172 | , Size( rect.width, rect.height ) | ~~~~~^~~~~~ rect.cpp: In static member function 'static Rect Rect::Get(const Point&, const Point&)': rect.cpp:181:63: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 181 | res.w = ( pt1.x < pt2.x ? pt2.x - pt1.x : pt1.x - pt2.x ) + 1; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ rect.cpp:182:63: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 182 | res.h = ( pt1.y < pt2.y ? pt2.y - pt1.y : pt1.y - pt2.y ) + 1; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ rect.cpp: In static member function 'static Rect Rect::Get(const Rect&, const Rect&, bool)': rect.cpp:195:62: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 195 | rt3.w = std::min( rt1.x + rt1.w, rt2.x + rt2.w ) - rt3.x; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ rect.cpp:196:62: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 196 | rt3.h = std::min( rt1.y + rt1.h, rt2.y + rt2.h ) - rt3.y; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ rect.cpp:204:47: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 204 | rt3.w = rt1.x + rt1.w > rt2.x + rt2.w ? rt1.x + rt1.w - rt3.x : rt2.x + rt2.w - rt3.x; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ rect.cpp:205:47: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 205 | rt3.h = rt1.y + rt1.h > rt2.y + rt2.h ? rt1.y + rt1.h - rt3.y : rt2.y + rt2.h - rt3.y; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ rect.cpp: In member function 'Rect Rect::operator^(const Rect&) const': rect.cpp:250:16: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 250 | temp.w -= diff; | ~~~~~~~^~~~~~~ rect.cpp:255:16: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 255 | temp.h -= diff; | ~~~~~~~^~~~~~~ rect.cpp:262:46: warning: conversion from 'int' to 'int16_t' {aka 'short int'} may change value [-Wconversion] 262 | const int16_t diff = temp.x + temp.w - ( x + w ); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~ rect.cpp:263:16: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 263 | temp.w -= diff; | ~~~~~~~^~~~~~~ rect.cpp:267:46: warning: conversion from 'int' to 'int16_t' {aka 'short int'} may change value [-Wconversion] 267 | const int16_t diff = temp.y + temp.h - ( y + h ); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~ rect.cpp:268:16: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 268 | temp.h -= diff; | ~~~~~~~^~~~~~~ rect.cpp: In member function 'Rect Points::GetRect() const': rect.cpp:290:43: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 290 | res.w = ( *it ).x - res.x + 1; | ~~~~~~~~~~~~~~~~~~^~~ rect.cpp:295:43: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 295 | res.h = ( *it ).y - res.y + 1; | ~~~~~~~~~~~~~~~~~~^~~ rect.cpp: In static member function 'static std::pair Rect::Fixed4Blit(const Rect&, const Rect&)': rect.cpp:350:44: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 350 | srcrtfix.w = dstrt.x + dstrt.w - dstptfix.x; | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ rect.cpp:353:44: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 353 | srcrtfix.h = dstrt.y + dstrt.h - dstptfix.y; | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' g++ -c -MD serialize.cpp -I/usr/include/SDL2 -D_REENTRANT -std=c++11 -O3 -fsigned-char -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -DWITH_MIXER -DWITH_IMAGE -I/usr/include/libpng16 -DWITH_ZLIB -DWITH_TTF -DWITH_XML -DWITH_ZLIB -DWITH_ICONV -I../thirdparty/libsmacker serialize.cpp: In member function 'void StreamBase::setconstbuf(bool)': serialize.cpp:40:18: warning: unsigned conversion from 'int' to 'size_t' {aka 'unsigned int'} changes value from '-4097' to '4294963199' [-Wsign-conversion] 40 | flags &= ~0x00001000; | ^~~~~~~~~~~ serialize.cpp: In member function 'void StreamBase::setfail(bool)': serialize.cpp:66:18: warning: unsigned conversion from 'int' to 'size_t' {aka 'unsigned int'} changes value from '-2' to '4294967294' [-Wsign-conversion] 66 | flags &= ~0x00000001; | ^~~~~~~~~~~ serialize.cpp: In member function 'StreamBase& StreamBase::operator>>(char&)': serialize.cpp:92:13: warning: conversion to 'char' from 'u8' {aka 'unsigned char'} may change the sign of the result [-Wsign-conversion] 92 | v = get8(); | ~~~~^~ serialize.cpp: In member function 'StreamBase& StreamBase::operator>>(s8&)': serialize.cpp:104:13: warning: conversion to 's8' {aka 'signed char'} from 'u8' {aka 'unsigned char'} may change the sign of the result [-Wsign-conversion] 104 | v = get8(); | ~~~~^~ serialize.cpp: In member function 'StreamBase& StreamBase::operator>>(s16&)': serialize.cpp:116:14: warning: conversion to 's16' {aka 'short int'} from 'u16' {aka 'short unsigned int'} may change the sign of the result [-Wsign-conversion] 116 | v = get16(); | ~~~~~^~ serialize.cpp: In member function 'StreamBase& StreamBase::operator>>(s32&)': serialize.cpp:128:14: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 128 | v = get32(); | ~~~~~^~ serialize.cpp: In member function 'StreamBase& StreamBase::operator>>(float&)': serialize.cpp:137:17: warning: conversion from 's32' {aka 'int'} to 'float' may change value [-Wconversion] 137 | v = intpart + decpart / 100000000; | ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ serialize.cpp: In member function 'StreamBase& StreamBase::operator>>(std::string&)': serialize.cpp:147:19: warning: conversion to 'char' from 'u8' {aka 'unsigned char'} may change the sign of the result [-Wsign-conversion] 147 | *it = get8(); | ~~~~^~ serialize.cpp: In member function 'StreamBase& StreamBase::operator<<(const u8&)': serialize.cpp:194:11: warning: conversion to 'char' from 'u8' {aka 'unsigned char'} may change the sign of the result [-Wsign-conversion] 194 | put8( v ); | ^ serialize.cpp: In member function 'StreamBase& StreamBase::operator<<(const s16&)': serialize.cpp:212:12: warning: conversion to 'u16' {aka 'short unsigned int'} from 's16' {aka 'short int'} may change the sign of the result [-Wsign-conversion] 212 | put16( v ); | ^ serialize.cpp: In member function 'StreamBase& StreamBase::operator<<(const s32&)': serialize.cpp:218:12: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 218 | put32( v ); | ^ serialize.cpp: In member function 'StreamBase& StreamBase::operator<<(const float&)': serialize.cpp:231:27: warning: conversion from 's32' {aka 'int'} to 'float' may change value [-Wconversion] 231 | float decpart = ( v - intpart ) * 100000000; | ^~~~~~~ serialize.cpp: In member function 'size_t StreamBuf::capacity() const': serialize.cpp:338:18: warning: conversion to 'size_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 338 | return itend - itbeg; | ~~~~~~^~~~~~~ serialize.cpp: In member function 'virtual size_t StreamBuf::tellg() const': serialize.cpp:359:18: warning: conversion to 'size_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 359 | return itget - itbeg; | ~~~~~~^~~~~~~ serialize.cpp: In member function 'virtual size_t StreamBuf::tellp() const': serialize.cpp:364:18: warning: conversion to 'size_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 364 | return itput - itbeg; | ~~~~~~^~~~~~~ serialize.cpp: In member function 'virtual size_t StreamBuf::sizeg() const': serialize.cpp:369:18: warning: conversion to 'size_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 369 | return itput - itget; | ~~~~~~^~~~~~~ serialize.cpp: In member function 'virtual size_t StreamBuf::sizep() const': serialize.cpp:374:18: warning: conversion to 'size_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 374 | return itend - itput; | ~~~~~~^~~~~~~ serialize.cpp: In member function 'virtual void StreamBuf::put8(char)': serialize.cpp:435:20: warning: conversion to 'u8' {aka 'unsigned char'} from 'char' may change the sign of the result [-Wsign-conversion] 435 | *itput++ = v; | ^ serialize.cpp: In member function 'virtual u16 StreamBuf::getLE16()': serialize.cpp:457:29: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 457 | result += ( get8() << 8 ); | ^ serialize.cpp: In member function 'virtual u32 StreamBuf::getBE32()': serialize.cpp:465:30: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 465 | result += ( get8() << 16 ); | ^ serialize.cpp:466:29: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 466 | result += ( get8() << 8 ); | ^ serialize.cpp: In member function 'virtual u32 StreamBuf::getLE32()': serialize.cpp:475:29: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 475 | result += ( get8() << 8 ); | ^ serialize.cpp:476:30: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 476 | result += ( get8() << 16 ); | ^ serialize.cpp:477:30: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 477 | result += ( get8() << 24 ); | ^ serialize.cpp: In member function 'virtual void StreamBuf::putBE16(u16)': serialize.cpp:484:13: warning: conversion from 'int' to 'char' may change value [-Wconversion] 484 | put8( v >> 8 ); | ~~^~~~ serialize.cpp:485:11: warning: conversion from 'u16' {aka 'short unsigned int'} to 'char' may change value [-Wconversion] 485 | put8( v ); | ^ serialize.cpp: In member function 'virtual void StreamBuf::putLE16(u16)': serialize.cpp:490:11: warning: conversion from 'u16' {aka 'short unsigned int'} to 'char' may change value [-Wconversion] 490 | put8( v ); | ^ serialize.cpp:491:13: warning: conversion from 'int' to 'char' may change value [-Wconversion] 491 | put8( v >> 8 ); | ~~^~~~ serialize.cpp: In member function 'virtual void StreamBuf::putBE32(u32)': serialize.cpp:496:13: warning: conversion from 'u32' {aka 'unsigned int'} to 'char' may change value [-Wconversion] 496 | put8( v >> 24 ); | ~~^~~~~ serialize.cpp:497:13: warning: conversion from 'u32' {aka 'unsigned int'} to 'char' may change value [-Wconversion] 497 | put8( v >> 16 ); | ~~^~~~~ serialize.cpp:498:13: warning: conversion from 'u32' {aka 'unsigned int'} to 'char' may change value [-Wconversion] 498 | put8( v >> 8 ); | ~~^~~~ serialize.cpp:499:11: warning: conversion from 'u32' {aka 'unsigned int'} to 'char' may change value [-Wconversion] 499 | put8( v ); | ^ serialize.cpp: In member function 'virtual void StreamBuf::putLE32(u32)': serialize.cpp:504:11: warning: conversion from 'u32' {aka 'unsigned int'} to 'char' may change value [-Wconversion] 504 | put8( v ); | ^ serialize.cpp:505:13: warning: conversion from 'u32' {aka 'unsigned int'} to 'char' may change value [-Wconversion] 505 | put8( v >> 8 ); | ~~^~~~ serialize.cpp:506:13: warning: conversion from 'u32' {aka 'unsigned int'} to 'char' may change value [-Wconversion] 506 | put8( v >> 16 ); | ~~^~~~~ serialize.cpp:507:13: warning: conversion from 'u32' {aka 'unsigned int'} to 'char' may change value [-Wconversion] 507 | put8( v >> 24 ); | ~~^~~~~ serialize.cpp: In member function 'size_t StreamFile::size() const': serialize.cpp:628:32: warning: conversion from 'Sint64' {aka 'long long int'} to 'size_t' {aka 'unsigned int'} may change value [-Wconversion] 628 | size_t pos = SDL_RWtell( rw ); | ~~~~~~~~~~^~~~~~ serialize.cpp:630:32: warning: conversion from 'Sint64' {aka 'long long int'} to 'size_t' {aka 'unsigned int'} may change value [-Wconversion] 630 | size_t len = SDL_RWseek( rw, 0, SEEK_END ); | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ serialize.cpp: In member function 'virtual size_t StreamFile::sizeg() const': serialize.cpp:651:32: warning: conversion from 'Sint64' {aka 'long long int'} to 'size_t' {aka 'unsigned int'} may change value [-Wconversion] 651 | size_t pos = SDL_RWtell( rw ); | ~~~~~~~~~~^~~~~~ serialize.cpp:652:32: warning: conversion from 'Sint64' {aka 'long long int'} to 'size_t' {aka 'unsigned int'} may change value [-Wconversion] 652 | size_t len = SDL_RWseek( rw, 0, RW_SEEK_END ); | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ serialize.cpp: In member function 'virtual size_t StreamFile::tellg() const': serialize.cpp:661:15: warning: conversion from 'Sint64' {aka 'long long int'} to 'size_t' {aka 'unsigned int'} may change value [-Wconversion] 661 | return rw ? SDL_RWtell( rw ) : 0; | ~~~^~~~~~~~~~~~~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' g++ -c -MD surface.cpp -I/usr/include/SDL2 -D_REENTRANT -std=c++11 -O3 -fsigned-char -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -DWITH_MIXER -DWITH_IMAGE -I/usr/include/libpng16 -DWITH_ZLIB -DWITH_TTF -DWITH_XML -DWITH_ZLIB -DWITH_ICONV -I../thirdparty/libsmacker surface.cpp: In function 'SDL_Rect {anonymous}::SDLRect(s32, s32, u32, u32)': surface.cpp:59:17: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 59 | res.w = w; | ^ surface.cpp:60:17: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 60 | res.h = h; | ^ surface.cpp: In constructor 'RGBA::RGBA(int, int, int, int)': surface.cpp:196:15: warning: conversion from 'int' to 'Uint8' {aka 'unsigned char'} may change value [-Wconversion] 196 | color.r = r; | ^ surface.cpp:197:15: warning: conversion from 'int' to 'Uint8' {aka 'unsigned char'} may change value [-Wconversion] 197 | color.g = g; | ^ surface.cpp:198:15: warning: conversion from 'int' to 'Uint8' {aka 'unsigned char'} may change value [-Wconversion] 198 | color.b = b; | ^ surface.cpp:200:15: warning: conversion from 'int' to 'Uint8' {aka 'unsigned char'} may change value [-Wconversion] 200 | color.a = a; | ^ surface.cpp: In member function 'int RGBA::pack() const': surface.cpp:232:22: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 232 | return ( ( ( a() << 24 ) & 0xFF000000 ) | ( ( b() << 16 ) & 0x00FF0000 ) | ( ( g() << 8 ) & 0x0000FF00 ) | ( r() & 0x000000FF ) ); | ~~~~~~^~~~~~~ surface.cpp:232:110: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] 232 | return ( ( ( a() << 24 ) & 0xFF000000 ) | ( ( b() << 16 ) & 0x00FF0000 ) | ( ( g() << 8 ) & 0x0000FF00 ) | ( r() & 0x000000FF ) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ surface.cpp: In constructor 'Surface::Surface(const void*, u32, u32, u32, bool, bool)': surface.cpp:280:44: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 280 | surface = SDL_CreateRGBSurface( 0, width, height, fm.depth, fm.rmask, fm.gmask, fm.bmask, ( amask ? fm.amask : 0 ) ); | ^~~~~ surface.cpp:280:51: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 280 | surface = SDL_CreateRGBSurface( 0, width, height, fm.depth, fm.rmask, fm.gmask, fm.bmask, ( amask ? fm.amask : 0 ) ); | ^~~~~~ surface.cpp:280:62: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 280 | surface = SDL_CreateRGBSurface( 0, width, height, fm.depth, fm.rmask, fm.gmask, fm.bmask, ( amask ? fm.amask : 0 ) ); | ~~~^~~~~ surface.cpp:286:75: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 286 | surface = SDL_CreateRGBSurfaceFrom( const_cast( pixels ), width, height, fm.depth, width * bytes_per_pixel, fm.rmask, fm.gmask, fm.bmask, | ^~~~~ surface.cpp:286:82: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 286 | surface = SDL_CreateRGBSurfaceFrom( const_cast( pixels ), width, height, fm.depth, width * bytes_per_pixel, fm.rmask, fm.gmask, fm.bmask, | ^~~~~~ surface.cpp:286:93: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 286 | surface = SDL_CreateRGBSurfaceFrom( const_cast( pixels ), width, height, fm.depth, width * bytes_per_pixel, fm.rmask, fm.gmask, fm.bmask, | ~~~^~~~~ surface.cpp:286:106: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 286 | surface = SDL_CreateRGBSurfaceFrom( const_cast( pixels ), width, height, fm.depth, width * bytes_per_pixel, fm.rmask, fm.gmask, fm.bmask, | ~~~~~~^~~~~~~~~~~~~~~~~ surface.cpp: In member function 'void Surface::Set(u32, u32, const SurfaceFormat&)': surface.cpp:376:40: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 376 | surface = SDL_CreateRGBSurface( 0, sw, sh, fm.depth, fm.rmask, fm.gmask, fm.bmask, fm.amask ); | ^~ surface.cpp:376:44: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 376 | surface = SDL_CreateRGBSurface( 0, sw, sh, fm.depth, fm.rmask, fm.gmask, fm.bmask, fm.amask ); | ^~ surface.cpp:376:51: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 376 | surface = SDL_CreateRGBSurface( 0, sw, sh, fm.depth, fm.rmask, fm.gmask, fm.bmask, fm.amask ); | ~~~^~~~~ surface.cpp: In static member function 'static void Surface::SetDefaultPalette(SDL_Color*, int)': surface.cpp:421:16: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 421 | pal_nums = num; | ^~~ surface.cpp: In member function 'u32 Surface::MapRGB(const RGBA&) const': surface.cpp:513:59: warning: conversion from 'int' to 'Uint8' {aka 'unsigned char'} may change value [-Wconversion] 513 | return amask() ? SDL_MapRGBA( surface->format, color.r(), color.g(), color.b(), color.a() ) : SDL_MapRGB( surface->format, color.r(), color.g(), color.b() ); | ~~~~~~~^~ surface.cpp:513:70: warning: conversion from 'int' to 'Uint8' {aka 'unsigned char'} may change value [-Wconversion] 513 | return amask() ? SDL_MapRGBA( surface->format, color.r(), color.g(), color.b(), color.a() ) : SDL_MapRGB( surface->format, color.r(), color.g(), color.b() ); | ~~~~~~~^~ surface.cpp:513:81: warning: conversion from 'int' to 'Uint8' {aka 'unsigned char'} may change value [-Wconversion] 513 | return amask() ? SDL_MapRGBA( surface->format, color.r(), color.g(), color.b(), color.a() ) : SDL_MapRGB( surface->format, color.r(), color.g(), color.b() ); | ~~~~~~~^~ surface.cpp:513:92: warning: conversion from 'int' to 'Uint8' {aka 'unsigned char'} may change value [-Wconversion] 513 | return amask() ? SDL_MapRGBA( surface->format, color.r(), color.g(), color.b(), color.a() ) : SDL_MapRGB( surface->format, color.r(), color.g(), color.b() ); | ~~~~~~~^~ surface.cpp:513:135: warning: conversion from 'int' to 'Uint8' {aka 'unsigned char'} may change value [-Wconversion] 513 | return amask() ? SDL_MapRGBA( surface->format, color.r(), color.g(), color.b(), color.a() ) : SDL_MapRGB( surface->format, color.r(), color.g(), color.b() ); | ~~~~~~~^~ surface.cpp:513:146: warning: conversion from 'int' to 'Uint8' {aka 'unsigned char'} may change value [-Wconversion] 513 | return amask() ? SDL_MapRGBA( surface->format, color.r(), color.g(), color.b(), color.a() ) : SDL_MapRGB( surface->format, color.r(), color.g(), color.b() ); | ~~~~~~~^~ surface.cpp:513:157: warning: conversion from 'int' to 'Uint8' {aka 'unsigned char'} may change value [-Wconversion] 513 | return amask() ? SDL_MapRGBA( surface->format, color.r(), color.g(), color.b(), color.a() ) : SDL_MapRGB( surface->format, color.r(), color.g(), color.b() ); | ~~~~~~~^~ surface.cpp: In member function 'void Surface::SetPalette()': surface.cpp:520:134: warning: comparison of integer expressions of different signedness: 'int' and 'u32' {aka 'unsigned int'} [-Wsign-compare] 520 | if ( surface->format->palette->colors && pal_colors != surface->format->palette->colors && surface->format->palette->ncolors != pal_nums ) { | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ surface.cpp:522:49: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 522 | surface->format->palette->ncolors = pal_nums; | ^~~~~~~~ surface.cpp: In member function 'void Surface::Fill(const RGBA&)': surface.cpp:581:28: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 581 | FillRect( Rect( 0, 0, w(), h() ), col ); | ~^~ surface.cpp:581:33: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 581 | FillRect( Rect( 0, 0, w(), h() ), col ); | ~^~ surface.cpp: At global scope: surface.cpp:53:14: warning: 'SDL_Rect {anonymous}::SDLRect(s32, s32, u32, u32)' defined but not used [-Wunused-function] 53 | SDL_Rect SDLRect( s32 x, s32 y, u32 w, u32 h ) | ^~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' g++ -c -MD thread.cpp -I/usr/include/SDL2 -D_REENTRANT -std=c++11 -O3 -fsigned-char -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -DWITH_MIXER -DWITH_IMAGE -I/usr/include/libpng16 -DWITH_ZLIB -DWITH_TTF -DWITH_XML -DWITH_ZLIB -DWITH_ICONV -I../thirdparty/libsmacker make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' g++ -c -MD system.cpp -I/usr/include/SDL2 -D_REENTRANT -std=c++11 -O3 -fsigned-char -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -DWITH_MIXER -DWITH_IMAGE -I/usr/include/libpng16 -DWITH_ZLIB -DWITH_TTF -DWITH_XML -DWITH_ZLIB -DWITH_ICONV -I../thirdparty/libsmacker system.cpp: In function 'size_t System::GetMemoryUsage()': system.cpp:307:30: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 307 | return size * getpagesize(); | ~~~~~~~~~~~^~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' g++ -c -MD tinyconfig.cpp -I/usr/include/SDL2 -D_REENTRANT -std=c++11 -O3 -fsigned-char -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -DWITH_MIXER -DWITH_IMAGE -I/usr/include/libpng16 -DWITH_ZLIB -DWITH_TTF -DWITH_XML -DWITH_ZLIB -DWITH_ICONV -I../thirdparty/libsmacker tinyconfig.cpp: In function 'std::string ModifyKey(const string&)': tinyconfig.cpp:43:20: warning: conversion to 'std::__cxx11::basic_string::size_type' {aka 'unsigned int'} from '__gnu_cxx::__normal_iterator >::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 43 | key.resize( it - key.begin() ); | ~~~^~~~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' g++ -c -MD translations.cpp -I/usr/include/SDL2 -D_REENTRANT -std=c++11 -O3 -fsigned-char -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -DWITH_MIXER -DWITH_IMAGE -I/usr/include/libpng16 -DWITH_ZLIB -DWITH_TTF -DWITH_XML -DWITH_ZLIB -DWITH_ICONV -I../thirdparty/libsmacker In file included from translations.cpp:28: translations.cpp: In member function 'bool mofile::open(const string&)': translations.cpp:124:61: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 124 | ERROR( "incorrect mo id: " << GetHexString( id ) ); | ^~ system.h:49:22: note: in definition of macro 'COUT' 49 | std::cerr << x << std::endl; \ | ^ translations.cpp:124:17: note: in expansion of macro 'ERROR' 124 | ERROR( "incorrect mo id: " << GetHexString( id ) ); | ^~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' g++ -c -MD zzlib.cpp -I/usr/include/SDL2 -D_REENTRANT -std=c++11 -O3 -fsigned-char -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -DWITH_MIXER -DWITH_IMAGE -I/usr/include/libpng16 -DWITH_ZLIB -DWITH_TTF -DWITH_XML -DWITH_ZLIB -DWITH_ICONV -I../thirdparty/libsmacker zzlib.cpp: In function 'fheroes2::Image CreateImageFromZlib(int32_t, int32_t, const uint8_t*, size_t)': zzlib.cpp:161:25: warning: comparison of integer expressions of different signedness: 'int32_t' {aka 'int'} and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 161 | if ( width * height != uncompressedData.size() ) | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~ zzlib.cpp: In function 'fheroes2::Image CreateImageFromZlib(int32_t, int32_t, const uint8_t*, size_t, const uint8_t*, size_t)': zzlib.cpp:178:25: warning: comparison of integer expressions of different signedness: 'int32_t' {aka 'int'} and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 178 | if ( width * height != uncompressedImageData.size() || uncompressedImageData.size() != uncompressedTransformData.size() ) | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' g++ -c -MD tools.cpp -I/usr/include/SDL2 -D_REENTRANT -std=c++11 -O3 -fsigned-char -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -DWITH_MIXER -DWITH_IMAGE -I/usr/include/libpng16 -DWITH_ZLIB -DWITH_TTF -DWITH_XML -DWITH_ZLIB -DWITH_ICONV -I../thirdparty/libsmacker tools.cpp: In function 'std::vector StringUTF8_to_UNICODE(const string&)': tools.cpp:265:55: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 265 | ch = static_cast( *it++ & 0x07 ) << 18; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ tools.cpp:266:59: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 266 | ch |= static_cast( *it++ & 0x3F ) << 12; | ^~ tools.cpp:267:59: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 267 | ch |= static_cast( *it++ & 0x3F ) << 6; | ^ tools.cpp:275:55: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 275 | ch = static_cast( *it++ & 0x0F ) << 12; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ tools.cpp:276:59: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 276 | ch |= static_cast( *it++ & 0x3F ) << 6; | ^ tools.cpp: In function 'std::vector LoadFileToMem(const string&)': tools.cpp:706:22: warning: conversion from 'Sint64' {aka 'long long int'} to 'std::vector::size_type' {aka 'unsigned int'} may change value [-Wconversion] 706 | data.resize( length ); | ^~~~~~ tools.cpp: In function 'std::string EncodeString(const string&, const char*)': tools.cpp:816:45: warning: conversion to 'std::__cxx11::basic_string::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 816 | res = std::string( outbuf2, outbuf1 - outbuf2 ); | ~~~~~~~~^~~~~~~~~ tools.cpp: In function 'Points GetEuclideanLine(const Point&, const Point&, u16)': tools.cpp:884:32: warning: conversion from '__gnu_cxx::__promote_2::__type' {aka 'double'} to 'uint32_t' {aka 'unsigned int'} may change value [-Wfloat-conversion] 884 | const uint32_t dist = hypot( std::abs( dx ), std::abs( dy ) ); | ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ tools.cpp:894:32: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 894 | line.push_back( Point( static_cast( pt1.x + i * moveX ), static_cast( pt1.y + i * moveY ) ) ); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ tools.cpp:894:71: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 894 | line.push_back( Point( static_cast( pt1.x + i * moveX ), static_cast( pt1.y + i * moveY ) ) ); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ tools.cpp: In function 'Points GetLinePoints(const Point&, const Point&, u16)': tools.cpp:905:28: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 905 | const u16 dx = std::abs( pt2.x - pt1.x ); | ~~~~~~~~^~~~~~~~~~~~~~~~~ tools.cpp:906:28: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 906 | const u16 dy = std::abs( pt2.y - pt1.y ); | ~~~~~~~~^~~~~~~~~~~~~~~~~ tools.cpp:908:51: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 908 | s16 ns = std::div( ( dx > dy ? dx : dy ), 2 ).quot; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~ tools.cpp:914:16: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 914 | ns -= dy; | ~~~^~~~~ tools.cpp:918:16: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 918 | ns -= dx; | ~~~^~~~~ tools.cpp:924:20: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 924 | ns += dx; | ~~~^~~~~ tools.cpp:928:20: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 928 | ns += dy; | ~~~^~~~~ tools.cpp: In function 'Points GetArcPoints(const Point&, const Point&, const Point&, u16)': tools.cpp:945:25: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 945 | pt2 = Point( from.x + std::abs( max.x - from.x ) / 2, from.y - std::abs( max.y - from.y ) * 3 / 4 ); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ tools.cpp:945:66: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 945 | pt2 = Point( from.x + std::abs( max.x - from.x ) / 2, from.y - std::abs( max.y - from.y ) * 3 / 4 ); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ tools.cpp:955:24: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 955 | pt2 = Point( max.x + std::abs( to.x - max.x ) / 2, to.y - std::abs( to.y - max.y ) * 3 / 4 ); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ tools.cpp:955:61: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 955 | pt2 = Point( max.x + std::abs( to.x - max.x ) / 2, to.y - std::abs( to.y - max.y ) * 3 / 4 ); | ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ tools.cpp: In function 'u32 decodeChar(int)': tools.cpp:970:18: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 970 | return v - 'A'; | ~~^~~~~ tools.cpp:973:24: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 973 | return v - 'a' + 26; | ~~~~~~~~^~~~ tools.cpp:976:24: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 976 | return v - '0' + 52; | ~~~~~~~~^~~~ tools.cpp: In function 'int CheckSum(const std::vector&)': tools.cpp:1035:12: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1035 | return ret; | ^~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' g++ -c -MD xmi2mid.cpp -I/usr/include/SDL2 -D_REENTRANT -std=c++11 -O3 -fsigned-char -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -DWITH_MIXER -DWITH_IMAGE -I/usr/include/libpng16 -DWITH_ZLIB -DWITH_TTF -DWITH_XML -DWITH_ZLIB -DWITH_ICONV -I../thirdparty/libsmacker xmi2mid.cpp: In function 'XMI_Time readXMITime(const uint8_t*)': xmi2mid.cpp:70:27: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 70 | res.second = p - data + 1; | ~~~~~~~~~^~~ xmi2mid.cpp: In constructor 'MidiEvents::MidiEvents(const XMITrack&)': xmi2mid.cpp:373:84: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 373 | trackTempo = ( ( ( *ptr << 8 ) | *( ptr + 1 ) ) << 8 ) | *( ptr + 2 ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ xmi2mid.cpp: In constructor 'MidData::MidData(const XMITracks&)': xmi2mid.cpp:513:59: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 513 | ppqn = ( tracks.front().events.trackTempo * 3 / 25000 ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~ xmi2mid.cpp: In function 'StreamBuf& operator<<(StreamBuf&, const MidData&)': xmi2mid.cpp:521:20: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 521 | sb.putBE16( st.format ); | ~~~^~~~~~ xmi2mid.cpp:522:32: warning: conversion from 'size_t' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 522 | sb.putBE16( st.tracks.count() ); | ~~~~~~~~~~~~~~~^~ xmi2mid.cpp:523:20: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 523 | sb.putBE16( st.ppqn ); | ~~~^~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' ar crvs libengine.a IMG_savepng.o audio.o audio_cdrom.o audio_mixer.o audio_music.o dir.o engine.o error.o font.o image.o image_tool.o localevent.o pal.o rand.o rect.o screen.o sdlnet.o serialize.o smk_decoder.o surface.o system.o thread.o tinyconfig.o tools.o translations.o xmi2mid.o zzlib.o a - IMG_savepng.o a - audio.o a - audio_cdrom.o a - audio_mixer.o a - audio_music.o a - dir.o a - engine.o a - error.o a - font.o a - image.o a - image_tool.o a - localevent.o a - pal.o a - rand.o a - rect.o a - screen.o a - sdlnet.o a - serialize.o a - smk_decoder.o a - surface.o a - system.o a - thread.o a - tinyconfig.o a - tools.o a - translations.o a - xmi2mid.o a - zzlib.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/engine' make -C dist make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: til.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: m82.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: ai_common.o ../fheroes2/ai/ai_common.cpp: In function 'AI::Base& AI::Get(AI::AI_TYPE)': ../fheroes2/ai/ai_common.cpp:29:25: warning: unused parameter 'type' [-Wunused-parameter] 29 | Base & Get( AI_TYPE type ) | ~~~~~~~~^~~~ ../fheroes2/ai/ai_common.cpp: In function 'bool AI::BuildIfAvailable(Castle&, int)': ../fheroes2/ai/ai_common.cpp:37:31: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 37 | if ( !castle.isBuild( building ) ) | ^~~~~~~~ ../fheroes2/ai/ai_common.cpp:38:40: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 38 | return castle.BuyBuilding( building ); | ^~~~~~~~ ../fheroes2/ai/ai_common.cpp: In function 'bool AI::BuildIfEnoughResources(Castle&, int, uint32_t)': ../fheroes2/ai/ai_common.cpp:48:86: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 48 | if ( kingdom.GetFunds() >= PaymentConditions::BuyBuilding( castle.GetRace(), building ) * minimumMultiplicator ) | ^~~~~~~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/ai/normal/ai_normal.h:26, from ../fheroes2/ai/ai_common.cpp:24: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: xmi.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: bin_info.o ../fheroes2/agg/bin_info.cpp: In constructor 'Bin_Info::MonsterAnimInfo::MonsterAnimInfo(int, const std::vector&)': ../fheroes2/agg/bin_info.cpp:245:25: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 245 | speedDiff = static_cast( Monster( monsterID ).GetSpeed() ) - Monster( monsterID - 1 ).GetSpeed(); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/agg/bin_info.cpp:245:77: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 245 | speedDiff = static_cast( Monster( monsterID ).GetSpeed() ) - Monster( monsterID - 1 ).GetSpeed(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/agg/bin_info.cpp:250:25: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 250 | speedDiff = static_cast( Monster( monsterID ).GetSpeed() ) - Monster( Monster::FIRE_ELEMENT ).GetSpeed(); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/agg/bin_info.cpp:250:77: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 250 | speedDiff = static_cast( Monster( monsterID ).GetSpeed() ) - Monster( Monster::FIRE_ELEMENT ).GetSpeed(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/agg/bin_info.cpp:271:26: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 271 | frameXOffset[idx].resize( animationFrames[idx].size(), 0 ); | ^~~ ../fheroes2/agg/bin_info.cpp:271:55: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 271 | frameXOffset[idx].resize( animationFrames[idx].size(), 0 ); | ^~~ ../fheroes2/agg/bin_info.cpp: In member function 'bool Bin_Info::MonsterAnimInfo::isValid() const': ../fheroes2/agg/bin_info.cpp:333:59: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 333 | if ( animationFrames.at( essentialAnimations[i] ).empty() ) | ~~~~~~~~~~~~~~~~~~~~~^ ../fheroes2/agg/bin_info.cpp: In member function 'bool Bin_Info::MonsterAnimInfo::hasAnim(int) const': ../fheroes2/agg/bin_info.cpp:345:81: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 345 | return animationFrames.size() == SHOOT3_END + 1 && !animationFrames.at( animID ).empty(); | ^~~~~~ ../fheroes2/agg/bin_info.cpp: In member function 'AnimationSequence Bin_Info::MonsterAnimCache::createSequence(const Bin_Info::MonsterAnimInfo&, int)': ../fheroes2/agg/bin_info.cpp:363:60: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 363 | return AnimationSequence( info.animationFrames.at( animID ) ); | ^~~~~~ ../fheroes2/agg/bin_info.cpp: In function 'Bin_Info::MonsterAnimInfo Bin_Info::GetMonsterInfo(uint32_t)': ../fheroes2/agg/bin_info.cpp:373:40: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 373 | return _infoCache.getAnimInfo( monsterID ); | ^~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: mus.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: ai_base.o ../fheroes2/ai/ai_base.cpp: In member function 'virtual void AI::Base::BattleTurn(Battle::Arena&, const Battle::Unit&, Battle::Actions&)': ../fheroes2/ai/ai_base.cpp:196:92: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 196 | actions.push_back( Battle::Command( Battle::MSG_BATTLE_END_TURN, currentUnit.GetUID() ) ); | ~~~~~~~~~~~~~~~~~~^~ In file included from ../fheroes2/gui/interface_icons.h:27, from ../fheroes2/game/game_interface.h:31, from ../fheroes2/ai/ai_base.cpp:28: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Castle*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Heroes*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: icn.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: army_troop.o ../fheroes2/army/army_troop.cpp: In member function 'virtual double Troop::GetStrengthWithBonus(int, int) const': ../fheroes2/army/army_troop.cpp:122:64: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 122 | return Monster::GetMonsterStrength( Monster::GetAttack() + bonusAttack, Monster::GetDefense() + bonusDefense ) * count; | ^~~~~~~~~~~ ../fheroes2/army/army_troop.cpp:122:101: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 122 | return Monster::GetMonsterStrength( Monster::GetAttack() + bonusAttack, Monster::GetDefense() + bonusDefense ) * count; | ^~~~~~~~~~~~ ../fheroes2/army/army_troop.cpp:122:62: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 122 | return Monster::GetMonsterStrength( Monster::GetAttack() + bonusAttack, Monster::GetDefense() + bonusDefense ) * count; | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ ../fheroes2/army/army_troop.cpp:122:99: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 122 | return Monster::GetMonsterStrength( Monster::GetAttack() + bonusAttack, Monster::GetDefense() + bonusDefense ) * count; | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ ../fheroes2/army/army_troop.cpp: In member function 'virtual std::string Troop::GetAttackString() const': ../fheroes2/army/army_troop.cpp:157:32: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 157 | return GetString( GetAttack() ); | ~~~~~~~~~^~ ../fheroes2/army/army_troop.cpp: In member function 'virtual std::string Troop::GetDefenseString() const': ../fheroes2/army/army_troop.cpp:162:33: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 162 | return GetString( GetDefense() ); | ~~~~~~~~~~^~ ../fheroes2/army/army_troop.cpp: In member function 'virtual std::string Troop::GetShotString() const': ../fheroes2/army/army_troop.cpp:167:31: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 167 | return GetString( GetShots() ); | ~~~~~~~~^~ ../fheroes2/army/army_troop.cpp: In member function 'virtual std::string Troop::GetSpeedString() const': ../fheroes2/army/army_troop.cpp:172:35: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 172 | return Speed::String( GetSpeed() ); | ~~~~~~~~^~ ../fheroes2/army/army_troop.cpp: In member function 'virtual u32 ArmyTroop::GetAttack() const': ../fheroes2/army/army_troop.cpp:208:64: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 208 | return Troop::GetAttack() + ( army && army->GetCommander() ? army->GetCommander()->GetAttack() : 0 ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/army/army_troop.cpp: In member function 'virtual u32 ArmyTroop::GetDefense() const': ../fheroes2/army/army_troop.cpp:213:65: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 213 | return Troop::GetDefense() + ( army && army->GetCommander() ? army->GetCommander()->GetDefense() : 0 ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/army/army_troop.cpp: In member function 'virtual std::string ArmyTroop::GetAttackString() const': ../fheroes2/army/army_troop.cpp:244:43: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 244 | return GetString( Troop::GetAttack() ); | ~~~~~~~~~~~~~~~~^~ ../fheroes2/army/army_troop.cpp: In member function 'virtual std::string ArmyTroop::GetDefenseString() const': ../fheroes2/army/army_troop.cpp:254:44: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 254 | return GetString( Troop::GetDefense() ); | ~~~~~~~~~~~~~~~~~^~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: ai_hero_action.o ../fheroes2/ai/ai_hero_action.cpp: In function 'void AI::AIBattleLose(Heroes&, const Battle::Result&, bool, int)': ../fheroes2/ai/ai_hero_action.cpp:178:49: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 178 | StringReplace( msg, "%{count}", exp ); | ^~~ ../fheroes2/ai/ai_hero_action.cpp:189:26: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 189 | hero.SetFreeman( reason ); | ^~~~~~ ../fheroes2/ai/ai_hero_action.cpp: In function 'void AI::HeroesAction(Heroes&, s32)': ../fheroes2/ai/ai_hero_action.cpp:210:32: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 210 | AIToMonster( hero, object, dst_index ); | ^~~~~~ ../fheroes2/ai/ai_hero_action.cpp:223:39: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 223 | AIToPickupResource( hero, object, dst_index ); | ^~~~~~ ../fheroes2/ai/ai_hero_action.cpp:228:38: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 228 | AIToTreasureChest( hero, object, dst_index ); | ^~~~~~ ../fheroes2/ai/ai_hero_action.cpp:231:33: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 231 | AIToArtifact( hero, object, dst_index ); | ^~~~~~ ../fheroes2/ai/ai_hero_action.cpp:238:39: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 238 | AIToObjectResource( hero, object, dst_index ); | ^~~~~~ ../fheroes2/ai/ai_hero_action.cpp:245:33: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 245 | AIToSkeleton( hero, object, dst_index ); | ^~~~~~ ../fheroes2/ai/ai_hero_action.cpp:255:38: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 255 | AIToCaptureObject( hero, object, dst_index ); | ^~~~~~ ../fheroes2/ai/ai_hero_action.cpp:258:37: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 258 | AIToAbandoneMine( hero, object, dst_index ); | ^~~~~~ ../fheroes2/ai/ai_hero_action.cpp:262:42: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 262 | AIToShipwreckSurvivor( hero, object, dst_index ); | ^~~~~~ ../fheroes2/ai/ai_hero_action.cpp:295:43: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 295 | AIToPrimarySkillObject( hero, object, dst_index ); | ^~~~~~ ../fheroes2/ai/ai_hero_action.cpp:300:41: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 300 | AIToExperienceObject( hero, object, dst_index ); | ^~~~~~ ../fheroes2/ai/ai_hero_action.cpp:320:39: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 320 | AIToGoodLuckObject( hero, object, dst_index ); | ^~~~~~ ../fheroes2/ai/ai_hero_action.cpp:328:41: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 328 | AIToGoodMoraleObject( hero, object, dst_index ); | ^~~~~~ ../fheroes2/ai/ai_hero_action.cpp:337:39: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 337 | AIToArtesianSpring( hero, object, dst_index ); | ^~~~~~ ../fheroes2/ai/ai_hero_action.cpp:350:42: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 350 | AIToUpgradeArmyObject( hero, object, dst_index ); | ^~~~~~ ../fheroes2/ai/ai_hero_action.cpp:356:41: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 356 | AIToPoorMoraleObject( hero, object, dst_index ); | ^~~~~~ ../fheroes2/ai/ai_hero_action.cpp:395:47: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 395 | AIToDwellingRecruitMonster( hero, object, dst_index ); | ^~~~~~ ../fheroes2/ai/ai_hero_action.cpp:402:47: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 402 | AIToDwellingRecruitMonster( hero, object, dst_index ); | ^~~~~~ ../fheroes2/ai/ai_hero_action.cpp:407:47: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 407 | AIToDwellingRecruitMonster( hero, object, dst_index ); | ^~~~~~ ../fheroes2/ai/ai_hero_action.cpp:411:32: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 411 | AIToStables( hero, object, dst_index ); | ^~~~~~ ../fheroes2/ai/ai_hero_action.cpp:414:43: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 414 | AIToPrimarySkillObject( hero, object, dst_index ); | ^~~~~~ ../fheroes2/ai/ai_hero_action.cpp: In function 'void AI::AIToMonster(Heroes&, u32, s32)': ../fheroes2/ai/ai_hero_action.cpp:575:31: warning: comparison of integer expressions of different signedness: 'int' and 'u32' {aka 'unsigned int'} [-Wsign-compare] 575 | if ( tile.GetObject() == obj ) { | ~~~~~~~~~~~~~~~~~^~~~~~ ../fheroes2/ai/ai_hero_action.cpp:598:44: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 598 | u32 gold = troop.GetCost().gold; | ~~~~~~~~~~~~~~~~^~~~ ../fheroes2/ai/ai_hero_action.cpp:628:61: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 628 | map_troop->count = army.GetCountMonsters( troop() ); | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../fheroes2/ai/ai_hero_action.cpp: In function 'void AI::AIToPickupResource(Heroes&, u32, s32)': ../fheroes2/ai/ai_hero_action.cpp:652:31: warning: comparison of integer expressions of different signedness: 'int' and 'u32' {aka 'unsigned int'} [-Wsign-compare] 652 | if ( tile.GetObject() == obj ) { | ~~~~~~~~~~~~~~~~~^~~~~~ ../fheroes2/ai/ai_hero_action.cpp: In function 'void AI::AIToTreasureChest(Heroes&, u32, s32)': ../fheroes2/ai/ai_hero_action.cpp:678:49: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 678 | gold = GoldInsteadArtifact( obj ); | ^~~ ../fheroes2/ai/ai_hero_action.cpp:693:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 693 | gold = GoldInsteadArtifact( obj ); | ^~~ ../fheroes2/ai/ai_hero_action.cpp: In function 'void AI::AIToObjectResource(Heroes&, u32, s32)': ../fheroes2/ai/ai_hero_action.cpp:713:36: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 713 | if ( MP2::isCaptureObject( obj ) ) | ^~~ ../fheroes2/ai/ai_hero_action.cpp: In function 'void AI::AIToSkeleton(Heroes&, u32, s32)': ../fheroes2/ai/ai_hero_action.cpp:731:49: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 731 | u32 gold = GoldInsteadArtifact( obj ); | ^~~ ../fheroes2/ai/ai_hero_action.cpp:738:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 738 | hero.SetVisitedWideTile( dst_index, obj, Visit::GLOBAL ); | ^~~ ../fheroes2/ai/ai_hero_action.cpp: In function 'void AI::AIToObservationTower(Heroes&, s32)': ../fheroes2/ai/ai_hero_action.cpp:822:57: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 822 | Maps::ClearFog( dst_index, Game::GetViewDistance( Game::VIEW_OBSERVATION_TOWER ), hero.GetColor() ); | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/ai/ai_hero_action.cpp: In function 'void AI::AIToPrimarySkillObject(Heroes&, u32, s32)': ../fheroes2/ai/ai_hero_action.cpp:959:68: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 959 | if ( ( MP2::OBJ_ARENA == obj && !hero.isObjectTypeVisited( obj ) ) || !hero.isVisited( tile ) ) { | ^~~ ../fheroes2/ai/ai_hero_action.cpp:965:49: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 965 | hero.SetVisitedWideTile( dst_index, obj ); | ^~~ ../fheroes2/ai/ai_hero_action.cpp: In function 'void AI::AIToShrine(Heroes&, s32)': ../fheroes2/ai/ai_hero_action.cpp:1009:44: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1009 | const u32 spell_level = spell.Level(); | ~~~~~~~~~~~^~ ../fheroes2/ai/ai_hero_action.cpp: In function 'void AI::AIToGoodLuckObject(Heroes&, u32, s32)': ../fheroes2/ai/ai_hero_action.cpp:1027:41: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1027 | if ( !hero.isObjectTypeVisited( obj ) ) | ^~~ ../fheroes2/ai/ai_hero_action.cpp: In function 'void AI::AIToGoodMoraleObject(Heroes&, u32, s32)': ../fheroes2/ai/ai_hero_action.cpp:1048:41: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1048 | if ( !hero.isObjectTypeVisited( obj ) ) { | ^~~ ../fheroes2/ai/ai_hero_action.cpp:1055:49: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1055 | hero.SetVisitedWideTile( dst_index, obj ); | ^~~ ../fheroes2/ai/ai_hero_action.cpp: In function 'void AI::AIToArtesianSpring(Heroes&, u32, s32)': ../fheroes2/ai/ai_hero_action.cpp:1086:53: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1086 | hero.SetVisitedWideTile( dst_index, obj, Visit::LOCAL ); | ^~~ ../fheroes2/ai/ai_hero_action.cpp: In function 'void AI::AIToXanadu(Heroes&, s32)': ../fheroes2/ai/ai_hero_action.cpp:1095:46: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1095 | const u32 level1 = hero.GetLevelSkill( Skill::Secondary::DIPLOMACY ); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/ai/ai_hero_action.cpp:1096:41: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1096 | const u32 level2 = hero.GetLevel(); | ~~~~~~~~~~~~~^~ ../fheroes2/ai/ai_hero_action.cpp: In function 'void AI::AIToPoorMoraleObject(Heroes&, u32, s32)': ../fheroes2/ai/ai_hero_action.cpp:1176:49: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1176 | gold = GoldInsteadArtifact( obj ); | ^~~ ../fheroes2/ai/ai_hero_action.cpp:1187:59: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1187 | else if ( 0 == gold && !hero.isObjectTypeVisited( obj ) ) { | ^~~ ../fheroes2/ai/ai_hero_action.cpp: In function 'void AI::AIToStables(Heroes&, u32, s32)': ../fheroes2/ai/ai_hero_action.cpp:1321:41: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1321 | if ( !hero.isObjectTypeVisited( obj ) ) { | ^~~ ../fheroes2/ai/ai_hero_action.cpp: In function 'void AI::AIToShipwreckSurvivor(Heroes&, u32, s32)': ../fheroes2/ai/ai_hero_action.cpp:1365:93: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1365 | hero.GetKingdom().AddFundsResource( Funds( Resource::GOLD, GoldInsteadArtifact( obj ) ) ); | ^~~ ../fheroes2/ai/ai_hero_action.cpp: In function 'void AI::AIToArtifact(Heroes&, u32, s32)': ../fheroes2/ai/ai_hero_action.cpp:1379:31: warning: comparison of integer expressions of different signedness: 'int' and 'u32' {aka 'unsigned int'} [-Wsign-compare] 1379 | if ( tile.GetObject() == obj ) { | ~~~~~~~~~~~~~~~~~^~~~~~ ../fheroes2/ai/ai_hero_action.cpp:1384:44: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1384 | u32 cond = tile.QuantityVariant(); | ~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/ai/ai_hero_action.cpp:1388:38: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1388 | cond = map_artifact->condition; | ~~~~~~~~~~~~~~^~~~~~~~~ ../fheroes2/ai/ai_hero_action.cpp: In function 'void AI::AIToBoat(Heroes&, s32)': ../fheroes2/ai/ai_hero_action.cpp:1458:43: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 1458 | hero.FadeOut( Point( offset.x * Game::AIHeroAnimSkip(), offset.y * Game::AIHeroAnimSkip() ) ); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/ai/ai_hero_action.cpp:1458:78: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 1458 | hero.FadeOut( Point( offset.x * Game::AIHeroAnimSkip(), offset.y * Game::AIHeroAnimSkip() ) ); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/ai/ai_hero_action.cpp: In function 'void AI::AIToCoast(Heroes&, s32)': ../fheroes2/ai/ai_hero_action.cpp:1496:42: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 1496 | hero.FadeIn( Point( offset.x * Game::AIHeroAnimSkip(), offset.y * Game::AIHeroAnimSkip() ) ); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/ai/ai_hero_action.cpp:1496:77: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 1496 | hero.FadeIn( Point( offset.x * Game::AIHeroAnimSkip(), offset.y * Game::AIHeroAnimSkip() ) ); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/ai/ai_hero_action.cpp: In function 'bool AI::HeroesValidObject(const Heroes&, s32)': ../fheroes2/ai/ai_hero_action.cpp:1530:39: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1530 | const u32 obj = tile.GetObject(); | ~~~~~~~~~~~~~~^~ ../fheroes2/ai/ai_hero_action.cpp:1546:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1546 | if ( !hero.isObjectTypeVisited( obj ) && Morale::BLOOD > hero.GetMorale() ) | ^~~ ../fheroes2/ai/ai_hero_action.cpp:1551:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1551 | if ( !hero.isObjectTypeVisited( obj ) && Luck::IRISH > hero.GetLuck() ) | ^~~ ../fheroes2/ai/ai_hero_action.cpp:1613:54: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1613 | const u32 variants = tile.QuantityVariant(); | ~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/ai/ai_hero_action.cpp:1704:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1704 | if ( !hero.isObjectTypeVisited( obj ) && Luck::IRISH > hero.GetLuck() ) | ^~~ ../fheroes2/ai/ai_hero_action.cpp:1712:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1712 | if ( !hero.isObjectTypeVisited( obj ) && Morale::BLOOD > hero.GetMorale() ) | ^~~ ../fheroes2/ai/ai_hero_action.cpp:1727:50: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1727 | const u32 level1 = hero.GetLevelSkill( Skill::Secondary::DIPLOMACY ); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/ai/ai_hero_action.cpp:1728:45: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1728 | const u32 level2 = hero.GetLevel(); | ~~~~~~~~~~~~~^~ ../fheroes2/ai/ai_hero_action.cpp: In function 'uint32_t AI::AIGetAllianceColors()': ../fheroes2/ai/ai_hero_action.cpp:1904:50: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1904 | colors |= player->GetFriends(); | ^ ../fheroes2/ai/ai_hero_action.cpp:1910:44: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1910 | colors = player->GetFriends(); | ~~~~~~~~~~~~~~~~~~^~ ../fheroes2/ai/ai_hero_action.cpp: In function 'bool AI::AIHeroesShowAnimation(const Heroes&, uint32_t)': ../fheroes2/ai/ai_hero_action.cpp:1925:50: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1925 | if ( !world.GetTiles( indexFrom ).isFog( colors ) ) | ^~~~~~ ../fheroes2/ai/ai_hero_action.cpp:1929:92: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1929 | if ( path.isValid() && world.GetTiles( path.front().GetIndex() ).GetFogDirections( colors ) != DIRECTION_ALL ) | ^~~~~~ ../fheroes2/ai/ai_hero_action.cpp: In function 'void AI::HeroesMove(Heroes&)': ../fheroes2/ai/ai_hero_action.cpp:1974:76: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 1974 | gameArea.ShiftCenter( Point( heroAnimationOffset.x * Game::AIHeroAnimSkip(), heroAnimationOffset.y * Game::AIHeroAnimSkip() ) ); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/ai/ai_hero_action.cpp:1974:124: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 1974 | gameArea.ShiftCenter( Point( heroAnimationOffset.x * Game::AIHeroAnimSkip(), heroAnimationOffset.y * Game::AIHeroAnimSkip() ) ); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/ai/ai_hero_action.cpp:46: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ In file included from ../fheroes2/gui/interface_icons.h:27, from ../fheroes2/game/game_interface.h:31, from ../fheroes2/ai/ai_hero_action.cpp:35: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Castle*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Heroes*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: agg.o ../fheroes2/agg/agg.cpp: In function 'StreamBuf& operator>>(StreamBuf&, ICNHeader&)': ../fheroes2/agg/agg.cpp:293:33: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 293 | icn.animationFrames = st.get(); | ~~~~~~^~ ../fheroes2/agg/agg.cpp: In function 'void AGG::LoadLOOPXXSounds(const std::vector&)': ../fheroes2/agg/agg.cpp:430:98: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 430 | Mixer::Volume( ( *itl ).channel, Mixer::MaxVolume() * conf.SoundVolume() / 10 ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~ ../fheroes2/agg/agg.cpp:438:79: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 438 | Mixer::Volume( ( *itl ).channel, vol * conf.SoundVolume() / 10 ); | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~ ../fheroes2/agg/agg.cpp:450:65: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 450 | Mixer::Volume( ch, vol * conf.SoundVolume() / 10 ); | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~ ../fheroes2/agg/agg.cpp: In function 'void AGG::PlaySound(int)': ../fheroes2/agg/agg.cpp:480:68: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 480 | Mixer::Volume( ch, Mixer::MaxVolume() * conf.SoundVolume() / 10 ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~ ../fheroes2/agg/agg.cpp: In function 'void AGG::LoadTTFChar(u32)': ../fheroes2/agg/agg.cpp:575:56: warning: conversion from 'u32' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 575 | fnt_cache[ch].sfs[0] = fonts[0].RenderUnicodeChar( ch, white, !conf.FontSmallRenderBlended() ); | ^~ ../fheroes2/agg/agg.cpp:576:56: warning: conversion from 'u32' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 576 | fnt_cache[ch].sfs[1] = fonts[0].RenderUnicodeChar( ch, yellow, !conf.FontSmallRenderBlended() ); | ^~ ../fheroes2/agg/agg.cpp:580:60: warning: conversion from 'u32' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 580 | fnt_cache[ch].sfs[2] = fonts[1].RenderUnicodeChar( ch, white, !conf.FontNormalRenderBlended() ); | ^~ ../fheroes2/agg/agg.cpp:581:60: warning: conversion from 'u32' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 581 | fnt_cache[ch].sfs[3] = fonts[1].RenderUnicodeChar( ch, yellow, !conf.FontNormalRenderBlended() ); | ^~ ../fheroes2/agg/agg.cpp: In function 'u32 AGG::GetFontHeight(bool)': ../fheroes2/agg/agg.cpp:614:18: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 614 | return small ? fonts[0].Height() : fonts[1].Height(); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/agg/agg.cpp: In function 'void fheroes2::AGG::LoadOriginalICN(int)': ../fheroes2/agg/agg.cpp:772:26: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 772 | _icnVsSprite[id].resize( count ); | ^~ ../fheroes2/agg/agg.cpp:790:48: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 790 | Sprite & sprite = _icnVsSprite[id][i]; | ^~ ../fheroes2/agg/agg.cpp:800:52: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 800 | const uint32_t width = sprite.width(); | ~~~~~~~~~~~~^~ ../fheroes2/agg/agg.cpp: In function 'void fheroes2::AGG::CopyICNWithPalette(int, int, int)': ../fheroes2/agg/agg.cpp:883:26: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 883 | _icnVsSprite[icnId] = _icnVsSprite[originalIcnId]; | ^~~~~ ../fheroes2/agg/agg.cpp:883:48: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 883 | _icnVsSprite[icnId] = _icnVsSprite[originalIcnId]; | ^~~~~~~~~~~~~ ../fheroes2/agg/agg.cpp:885:50: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 885 | for ( size_t i = 0; i < _icnVsSprite[icnId].size(); ++i ) { | ^~~~~ ../fheroes2/agg/agg.cpp:886:44: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 886 | ApplyPalette( _icnVsSprite[icnId][i], palette ); | ^~~~~ ../fheroes2/agg/agg.cpp: In function 'bool fheroes2::AGG::LoadModifiedICN(int)': ../fheroes2/agg/agg.cpp:899:54: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 899 | for ( size_t i = 0; i < _icnVsSprite[id].size(); ++i ) { | ^~ ../fheroes2/agg/agg.cpp:900:63: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 900 | ReplaceColorIdByTransformId( _icnVsSprite[id][i], 50, 2 ); | ^~ ../fheroes2/agg/agg.cpp:916:30: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 916 | _icnVsSprite[id].resize( 2 ); | ^~ ../fheroes2/agg/agg.cpp:917:79: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 917 | for ( uint32_t i = 0; i < static_cast( _icnVsSprite[id].size() ); ++i ) { | ^~ ../fheroes2/agg/agg.cpp:918:49: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 918 | Sprite & out = _icnVsSprite[id][i]; | ^~ ../fheroes2/agg/agg.cpp:925:58: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 925 | Blit( GetICN( ICN::BTNCMPGN, i ), 41 - i, 28, out, 30 - i, 13, 28, 14 ); | ~~~^~~ ../fheroes2/agg/agg.cpp:925:75: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 925 | Blit( GetICN( ICN::BTNCMPGN, i ), 41 - i, 28, out, 30 - i, 13, 28, 14 ); | ~~~^~~ ../fheroes2/agg/agg.cpp:927:58: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 927 | Blit( GetICN( ICN::BTNNEWGM, i ), 25 - i, 13, out, 57 - i, 13, 13, 14 ); | ~~~^~~ ../fheroes2/agg/agg.cpp:927:75: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 927 | Blit( GetICN( ICN::BTNNEWGM, i ), 25 - i, 13, out, 57 - i, 13, 13, 14 ); | ~~~^~~ ../fheroes2/agg/agg.cpp:928:58: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 928 | Blit( GetICN( ICN::BTNNEWGM, i ), 25 - i, 13, out, 70 - i, 13, 13, 14 ); | ~~~^~~ ../fheroes2/agg/agg.cpp:928:75: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 928 | Blit( GetICN( ICN::BTNNEWGM, i ), 25 - i, 13, out, 70 - i, 13, 13, 14 ); | ~~~^~~ ../fheroes2/agg/agg.cpp:930:62: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 930 | Blit( GetICN( ICN::BTNNEWGM, 6 + i ), 97 - i, 21, out, 83 - i, 13, 13, 14 ); | ~~~^~~ ../fheroes2/agg/agg.cpp:930:79: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 930 | Blit( GetICN( ICN::BTNNEWGM, 6 + i ), 97 - i, 21, out, 83 - i, 13, 13, 14 ); | ~~~^~~ ../fheroes2/agg/agg.cpp:931:62: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 931 | Blit( GetICN( ICN::BTNNEWGM, 6 + i ), 86 - i, 21, out, 96 - i, 13, 13, 14 ); | ~~~^~~ ../fheroes2/agg/agg.cpp:931:79: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 931 | Blit( GetICN( ICN::BTNNEWGM, 6 + i ), 86 - i, 21, out, 96 - i, 13, 13, 14 ); | ~~~^~~ ../fheroes2/agg/agg.cpp:933:62: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 933 | Blit( GetICN( ICN::BTNDCCFG, 4 + i ), 44 - i, 21, out, 40 - i, 28, 31, 14 ); | ~~~^~~ ../fheroes2/agg/agg.cpp:933:79: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 933 | Blit( GetICN( ICN::BTNDCCFG, 4 + i ), 44 - i, 21, out, 40 - i, 28, 31, 14 ); | ~~~^~~ ../fheroes2/agg/agg.cpp:935:58: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 935 | Blit( GetICN( ICN::BTNHOTST, i ), 47 - i, 21, out, 71 - i, 28, 12, 13 ); | ~~~^~~ ../fheroes2/agg/agg.cpp:935:75: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 935 | Blit( GetICN( ICN::BTNHOTST, i ), 47 - i, 21, out, 71 - i, 28, 12, 13 ); | ~~~^~~ ../fheroes2/agg/agg.cpp:936:58: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 936 | Blit( GetICN( ICN::BTNHOTST, i ), 72 - i, 21, out, 84 - i, 28, 13, 13 ); | ~~~^~~ ../fheroes2/agg/agg.cpp:936:75: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 936 | Blit( GetICN( ICN::BTNHOTST, i ), 72 - i, 21, out, 84 - i, 28, 13, 13 ); | ~~~^~~ ../fheroes2/agg/agg.cpp:940:30: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 940 | _icnVsSprite[id].resize( 2 ); | ^~ ../fheroes2/agg/agg.cpp:941:79: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 941 | for ( uint32_t i = 0; i < static_cast( _icnVsSprite[id].size() ); ++i ) { | ^~ ../fheroes2/agg/agg.cpp:942:49: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 942 | Sprite & out = _icnVsSprite[id][i]; | ^~ ../fheroes2/agg/agg.cpp:952:30: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 952 | _icnVsSprite[id].resize( 66 ); | ^~ ../fheroes2/agg/agg.cpp:968:65: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 968 | const Sprite & originalImage = _icnVsSprite[id][originalIndex]; | ^~ ../fheroes2/agg/agg.cpp:968:69: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 968 | const Sprite & originalImage = _icnVsSprite[id][originalIndex]; | ^~~~~~~~~~~~~ ../fheroes2/agg/agg.cpp:969:51: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 969 | Sprite & image = _icnVsSprite[id][i]; | ^~ ../fheroes2/agg/agg.cpp:983:30: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 983 | _icnVsSprite[id].resize( 3 ); | ^~ ../fheroes2/agg/agg.cpp:985:34: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 985 | _icnVsSprite[id][i] = GetICN( ICN::LOCATORS, 24 ); | ^~ ../fheroes2/agg/agg.cpp:987:54: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 987 | ReplaceColorId( _icnVsSprite[id][i], 0x0A, 0xD6 ); | ^~ ../fheroes2/agg/agg.cpp:990:54: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 990 | ReplaceColorId( _icnVsSprite[id][i], 0x0A, 0xDE ); | ^~ ../fheroes2/agg/agg.cpp:995:30: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 995 | _icnVsSprite[id].resize( 2 ); | ^~ ../fheroes2/agg/agg.cpp:997:49: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 997 | Sprite & out = _icnVsSprite[id][i]; | ^~ ../fheroes2/agg/agg.cpp:1008:30: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1008 | _icnVsSprite[id].resize( 2 ); | ^~ ../fheroes2/agg/agg.cpp:1010:49: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1010 | Sprite & out = _icnVsSprite[id][i]; | ^~ ../fheroes2/agg/agg.cpp:1025:30: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1025 | _icnVsSprite[id].resize( 2 ); | ^~ ../fheroes2/agg/agg.cpp:1027:49: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1027 | Sprite & out = _icnVsSprite[id][i]; | ^~ ../fheroes2/agg/agg.cpp:1038:30: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1038 | _icnVsSprite[id].resize( 2 ); | ^~ ../fheroes2/agg/agg.cpp:1040:49: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1040 | Sprite & out = _icnVsSprite[id][i]; | ^~ ../fheroes2/agg/agg.cpp:1047:56: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1047 | Blit( GetICN( ICN::CPANEL, i ), 18 - i, 27, out, 20 - i, 4, 15, 15 ); | ~~~^~~ ../fheroes2/agg/agg.cpp:1047:73: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1047 | Blit( GetICN( ICN::CPANEL, i ), 18 - i, 27, out, 20 - i, 4, 15, 15 ); | ~~~^~~ ../fheroes2/agg/agg.cpp:1050:60: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1050 | Blit( GetICN( ICN::APANEL, 4 + i ), 22 - i, 20, out, 36 - i, 4, 9, 15 ); | ~~~^~~ ../fheroes2/agg/agg.cpp:1050:77: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1050 | Blit( GetICN( ICN::APANEL, 4 + i ), 22 - i, 20, out, 36 - i, 4, 9, 15 ); | ~~~^~~ ../fheroes2/agg/agg.cpp:1053:60: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1053 | Blit( GetICN( ICN::APANEL, 4 + i ), 48 - i, 20, out, 46 - i, 4, 13, 15 ); | ~~~^~~ ../fheroes2/agg/agg.cpp:1053:77: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1053 | Blit( GetICN( ICN::APANEL, 4 + i ), 48 - i, 20, out, 46 - i, 4, 13, 15 ); | ~~~^~~ ../fheroes2/agg/agg.cpp:1056:60: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1056 | Blit( GetICN( ICN::CPANEL, 6 + i ), 59 - i, 21, out, 60 - i, 5, 14, 14 ); | ~~~^~~ ../fheroes2/agg/agg.cpp:1056:77: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1056 | Blit( GetICN( ICN::CPANEL, 6 + i ), 59 - i, 21, out, 60 - i, 5, 14, 14 ); | ~~~^~~ ../fheroes2/agg/agg.cpp:1060:30: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1060 | _icnVsSprite[id].resize( 2 ); | ^~ ../fheroes2/agg/agg.cpp:1062:49: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1062 | Sprite & out = _icnVsSprite[id][i]; | ^~ ../fheroes2/agg/agg.cpp:1069:57: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1069 | Blit( GetICN( ICN::CPANELE, i ), 18 - i, 27, out, 20 - i, 4, 15, 15 ); | ~~~^~~ ../fheroes2/agg/agg.cpp:1069:74: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1069 | Blit( GetICN( ICN::CPANELE, i ), 18 - i, 27, out, 20 - i, 4, 15, 15 ); | ~~~^~~ ../fheroes2/agg/agg.cpp:1072:61: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1072 | Blit( GetICN( ICN::APANELE, 4 + i ), 22 - i, 20, out, 36 - i, 4, 9, 15 ); | ~~~^~~ ../fheroes2/agg/agg.cpp:1072:78: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1072 | Blit( GetICN( ICN::APANELE, 4 + i ), 22 - i, 20, out, 36 - i, 4, 9, 15 ); | ~~~^~~ ../fheroes2/agg/agg.cpp:1075:61: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1075 | Blit( GetICN( ICN::APANELE, 4 + i ), 48 - i, 20, out, 46 - i, 4, 13, 15 ); | ~~~^~~ ../fheroes2/agg/agg.cpp:1075:78: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1075 | Blit( GetICN( ICN::APANELE, 4 + i ), 48 - i, 20, out, 46 - i, 4, 13, 15 ); | ~~~^~~ ../fheroes2/agg/agg.cpp:1078:61: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1078 | Blit( GetICN( ICN::CPANELE, 6 + i ), 59 - i, 21, out, 60 - i, 5, 14, 14 ); | ~~~^~~ ../fheroes2/agg/agg.cpp:1078:78: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1078 | Blit( GetICN( ICN::CPANELE, 6 + i ), 59 - i, 21, out, 60 - i, 5, 14, 14 ); | ~~~^~~ ../fheroes2/agg/agg.cpp:1082:30: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1082 | _icnVsSprite[id].resize( 2 ); | ^~ ../fheroes2/agg/agg.cpp:1084:49: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1084 | Sprite & out = _icnVsSprite[id][i]; | ^~ ../fheroes2/agg/agg.cpp:1088:62: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1088 | Blit( GetICN( ICN::BTNDCCFG, 4 + i ), 31 - i, 20, out, 10 - i, 4, 77, 16 ); | ~~~^~~ ../fheroes2/agg/agg.cpp:1088:79: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1088 | Blit( GetICN( ICN::BTNDCCFG, 4 + i ), 31 - i, 20, out, 10 - i, 4, 77, 16 ); | ~~~^~~ ../fheroes2/agg/agg.cpp:1094:35: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1094 | if ( _icnVsSprite[id].size() >= 32 ) { | ^~ ../fheroes2/agg/agg.cpp:1095:54: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1095 | const Sprite & in = _icnVsSprite[id][32]; | ^~ ../fheroes2/agg/agg.cpp:1096:52: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1096 | Copy( in, 60, 73, _icnVsSprite[id][1], 60, 73, 14, 13 ); | ^~ ../fheroes2/agg/agg.cpp:1097:52: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1097 | Copy( in, 56, 72, _icnVsSprite[id][30], 56, 72, 18, 9 ); | ^~ ../fheroes2/agg/agg.cpp:1102:35: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1102 | if ( _icnVsSprite[id].size() == 1 ) { | ^~ ../fheroes2/agg/agg.cpp:1104:62: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1104 | Copy( correctFrame, 60, 73, _icnVsSprite[id][0], 58, 70, 14, 13 ); | ^~ ../fheroes2/agg/agg.cpp:1110:35: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1110 | if ( _icnVsSprite[id].size() >= 23 ) { | ^~ ../fheroes2/agg/agg.cpp:1111:49: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1111 | Sprite & out = _icnVsSprite[id][23]; | ^~ ../fheroes2/agg/agg.cpp:1128:35: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1128 | if ( _icnVsSprite[id].size() == 1 ) { | ^~ ../fheroes2/agg/agg.cpp:1129:49: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1129 | Sprite & out = _icnVsSprite[id][0]; | ^~ ../fheroes2/agg/agg.cpp:1143:34: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1143 | _icnVsSprite[id].resize( 1 ); | ^~ ../fheroes2/agg/agg.cpp:1145:49: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1145 | Sprite & out = _icnVsSprite[id][0]; | ^~ ../fheroes2/agg/agg.cpp:1188:35: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1188 | if ( _icnVsSprite[id].size() > 15 ) { | ^~ ../fheroes2/agg/agg.cpp:1189:39: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1189 | if ( _icnVsSprite[id][12].width() == 47 ) { | ^~ ../fheroes2/agg/agg.cpp:1190:53: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1190 | Sprite & out = _icnVsSprite[id][12]; | ^~ ../fheroes2/agg/agg.cpp:1193:39: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1193 | if ( _icnVsSprite[id][15].width() == 47 ) { | ^~ ../fheroes2/agg/agg.cpp:1194:53: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1194 | Sprite & out = _icnVsSprite[id][15]; | ^~ ../fheroes2/agg/agg.cpp: In function 'size_t fheroes2::AGG::GetMaximumICNIndex(int)': ../fheroes2/agg/agg.cpp:1208:31: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1208 | if ( _icnVsSprite[id].empty() ) { | ^~ ../fheroes2/agg/agg.cpp:1214:33: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1214 | return _icnVsSprite[id].size(); | ^~ ../fheroes2/agg/agg.cpp: In function 'size_t fheroes2::AGG::GetMaximumTILIndex(int)': ../fheroes2/agg/agg.cpp:1219:30: warning: conversion to 'std::vector > >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1219 | if ( _tilVsImage[id].empty() ) { | ^~ ../fheroes2/agg/agg.cpp:1220:29: warning: conversion to 'std::vector > >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1220 | _tilVsImage[id].resize( 4 ); // 4 possible sides | ^~ ../fheroes2/agg/agg.cpp:1237:64: warning: conversion to 'std::vector > >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1237 | std::vector & originalTIL = _tilVsImage[id][0]; | ^~ ../fheroes2/agg/agg.cpp:1242:38: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1242 | tilImage.resize( width, height ); | ^~~~~ ../fheroes2/agg/agg.cpp:1242:45: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1242 | tilImage.resize( width, height ); | ^~~~~~ ../fheroes2/agg/agg.cpp:1248:67: warning: conversion to 'std::vector > >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1248 | std::vector & currentTIL = _tilVsImage[id][shapeId]; | ^~ ../fheroes2/agg/agg.cpp:1260:32: warning: conversion to 'std::vector > >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1260 | return _tilVsImage[id][0].size(); | ^~ ../fheroes2/agg/agg.cpp: In function 'const fheroes2::Sprite& fheroes2::AGG::GetScaledICN(int, uint32_t)': ../fheroes2/agg/agg.cpp:1271:55: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1271 | const Sprite & originalIcn = _icnVsSprite[icnId][index]; | ^~~~~ ../fheroes2/agg/agg.cpp:1278:64: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1278 | _icnVsScaledSprite[icnId].resize( _icnVsSprite[icnId].size() ); | ^~~~~ ../fheroes2/agg/agg.cpp: In function 'const fheroes2::Sprite& fheroes2::AGG::GetICN(int, uint32_t)': ../fheroes2/agg/agg.cpp:1312:33: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1312 | return _icnVsSprite[icnId][index]; | ^~~~~ ../fheroes2/agg/agg.cpp: In function 'const fheroes2::Image& fheroes2::AGG::GetTIL(int, uint32_t, uint32_t)': ../fheroes2/agg/agg.cpp:1339:32: warning: conversion to 'std::vector > >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1339 | return _tilVsImage[tilId][shapeId][index]; | ^~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: battle_action.o ../fheroes2/battle/battle_action.cpp: In member function 'void Battle::Arena::BattleProcess(Battle::Unit&, Battle::Unit&, s32, int)': ../fheroes2/battle/battle_action.cpp:46:49: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 46 | attacker.UpdateDirection( board[dst].GetPos() ); | ^~~ ../fheroes2/battle/battle_action.cpp:48:70: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 48 | defender.UpdateDirection( board[attacker.GetHeadIndex()].GetPos() ); | ~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_action.cpp:51:45: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 51 | attacker.UpdateDirection( board[dst].GetPos() ); | ^~~ ../fheroes2/battle/battle_action.cpp:53:70: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 53 | defender.UpdateDirection( board[attacker.GetHeadIndex()].GetPos() ); | ~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_action.cpp:57:41: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 57 | attacker.UpdateDirection( board[dst].GetPos() ); | ^~~ ../fheroes2/battle/battle_action.cpp:65:41: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 65 | attacker.UpdateDirection( board[dst].GetPos() ); | ^~~ ../fheroes2/battle/battle_action.cpp: In member function 'void Battle::Arena::ApplyActionAttack(Battle::Command&)': ../fheroes2/battle/battle_action.cpp:203:28: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 203 | u32 uid1 = cmd.GetValue(); | ~~~~~~~~~~~~^~ ../fheroes2/battle/battle_action.cpp:204:28: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 204 | u32 uid2 = cmd.GetValue(); | ~~~~~~~~~~~~^~ ../fheroes2/battle/battle_action.cpp:254:90: warning: suggest braces around empty body in an 'else' statement [-Wempty-body] 254 | << "0x" << std::setw( 8 ) << std::setfill( '0' ) << std::hex << uid2 ); | ^ ../fheroes2/battle/battle_action.cpp: In member function 'void Battle::Arena::ApplyActionMove(Battle::Command&)': ../fheroes2/battle/battle_action.cpp:259:27: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 259 | u32 uid = cmd.GetValue(); | ~~~~~~~~~~~~^~ ../fheroes2/battle/battle_action.cpp:288:58: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 288 | cmd = Command( MSG_BATTLE_MOVE, b->GetUID(), dst, path ); | ~~~~~~~~~^~ ../fheroes2/battle/battle_action.cpp: In member function 'void Battle::Arena::ApplyActionSkip(Battle::Command&)': ../fheroes2/battle/battle_action.cpp:352:27: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 352 | u32 uid = cmd.GetValue(); | ~~~~~~~~~~~~^~ ../fheroes2/battle/battle_action.cpp:381:39: warning: suggest braces around empty body in an 'else' statement [-Wempty-body] 381 | << "uid: " << uid ); | ^ ../fheroes2/battle/battle_action.cpp: In member function 'void Battle::Arena::ApplyActionEnd(Battle::Command&)': ../fheroes2/battle/battle_action.cpp:386:27: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 386 | u32 uid = cmd.GetValue(); | ~~~~~~~~~~~~^~ ../fheroes2/battle/battle_action.cpp:408:89: warning: suggest braces around empty body in an 'else' statement [-Wempty-body] 408 | << "0x" << std::setw( 8 ) << std::setfill( '0' ) << std::hex << uid ); | ^ ../fheroes2/battle/battle_action.cpp: In member function 'void Battle::Arena::ApplyActionMorale(Battle::Command&)': ../fheroes2/battle/battle_action.cpp:413:27: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 413 | u32 uid = cmd.GetValue(); | ~~~~~~~~~~~~^~ ../fheroes2/battle/battle_action.cpp:442:89: warning: suggest braces around empty body in an 'else' statement [-Wempty-body] 442 | << "0x" << std::setw( 8 ) << std::setfill( '0' ) << std::hex << uid ); | ^ ../fheroes2/battle/battle_action.cpp: In member function 'void Battle::Arena::ApplyActionRetreat(Battle::Command&)': ../fheroes2/battle/battle_action.cpp:457:73: warning: suggest braces around empty body in an 'else' statement [-Wempty-body] 457 | DEBUG( DBG_BATTLE, DBG_WARN, "CanRetreatOpponent check failed" ); | ^ ../fheroes2/battle/battle_action.cpp:445:51: warning: unused parameter 'cmd' [-Wunused-parameter] 445 | void Battle::Arena::ApplyActionRetreat( Command & cmd ) | ~~~~~~~~~~^~~ ../fheroes2/battle/battle_action.cpp: In member function 'void Battle::Arena::ApplyActionSurrender(Battle::Command&)': ../fheroes2/battle/battle_action.cpp:466:48: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 466 | cost.gold = army1->GetSurrenderCost(); | ~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_action.cpp:468:48: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 468 | cost.gold = army2->GetSurrenderCost(); | ~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_action.cpp:485:57: warning: suggest braces around empty body in an 'else' statement [-Wempty-body] 485 | DEBUG( DBG_BATTLE, DBG_WARN, "incorrect param" ); | ^ ../fheroes2/battle/battle_action.cpp:460:53: warning: unused parameter 'cmd' [-Wunused-parameter] 460 | void Battle::Arena::ApplyActionSurrender( Command & cmd ) | ~~~~~~~~~~^~~ ../fheroes2/battle/battle_action.cpp: In member function 'void Battle::Arena::TargetsApplyDamage(Battle::Unit&, Battle::Unit&, Battle::TargetsInfo&)': ../fheroes2/battle/battle_action.cpp:488:65: warning: unused parameter 'defender' [-Wunused-parameter] 488 | void Battle::Arena::TargetsApplyDamage( Unit & attacker, Unit & defender, TargetsInfo & targets ) | ~~~~~~~^~~~~~~~ ../fheroes2/battle/battle_action.cpp: In member function 'Battle::TargetsInfo Battle::Arena::GetTargetsForSpells(const HeroBase*, const Spell&, s32)': ../fheroes2/battle/battle_action.cpp:621:42: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 621 | uint32_t currentMonsterPos = dst; | ^~~ ../fheroes2/battle/battle_action.cpp:625:30: warning: conversion to 'std::vector::value_type' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 625 | trgts.push_back( currentMonsterPos ); | ^~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_action.cpp:628:39: warning: conversion to 'std::vector::value_type' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 628 | ignoredMonster.push_back( currentMonsterPos ); | ^~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_action.cpp:632:77: warning: conversion to 's32' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 632 | const Indexes nearestPosIds = board.GetNearestTroopIndexes( currentMonsterPos, &ignoredMonster ); | ^~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_action.cpp:640:82: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 640 | if ( target != NULL && ( target->GetMagicResist( spell, hero ? hero->GetPower() : 0 ) < 100 ) ) { | ~~~~~^~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_action.cpp:650:72: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 650 | const uint32_t chosenMonsterPos = sortedIds.size() > 1 ? *Rand::Get( sortedIds ) : sortedIds.front(); | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_action.cpp:651:34: warning: conversion to 'std::vector::value_type' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 651 | trgts.push_back( chosenMonsterPos ); | ^~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_action.cpp:662:47: warning: conversion to 'u32' {aka 'unsigned int'} from 'std::__iterator_traits<__gnu_cxx::__normal_iterator >, void>::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 662 | res.damage = std::distance( trgts.begin(), it ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_action.cpp:684:42: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'std::__iterator_traits<__gnu_cxx::__normal_iterator >, void>::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 684 | targets.resize( std::distance( targets.begin(), std::unique( targets.begin(), targets.end() ) ) ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_action.cpp:710:42: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'std::__iterator_traits<__gnu_cxx::__normal_iterator >, void>::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 710 | targets.resize( std::distance( targets.begin(), std::unique( targets.begin(), targets.end() ) ) ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_action.cpp:720:74: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 720 | const u32 resist = ( *it ).defender->GetMagicResist( spell, hero ? hero->GetPower() : 0 ); | ~~~~~^~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_action.cpp: In member function 'void Battle::Arena::ApplyActionTower(Battle::Command&)': ../fheroes2/battle/battle_action.cpp:737:28: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 737 | u32 type = cmd.GetValue(); | ~~~~~~~~~~~~^~ ../fheroes2/battle/battle_action.cpp:738:27: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 738 | u32 uid = cmd.GetValue(); | ~~~~~~~~~~~~^~ ../fheroes2/battle/battle_action.cpp:740:31: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 740 | Tower * tower = GetTower( type ); | ^~~~ ../fheroes2/battle/battle_action.cpp:764:89: warning: suggest braces around empty body in an 'else' statement [-Wempty-body] 764 | << "0x" << std::setw( 8 ) << std::setfill( '0' ) << std::hex << uid ); | ^ ../fheroes2/battle/battle_action.cpp: In member function 'void Battle::Arena::ApplyActionCatapult(Battle::Command&)': ../fheroes2/battle/battle_action.cpp:770:33: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 770 | u32 shots = cmd.GetValue(); | ~~~~~~~~~~~~^~ ../fheroes2/battle/battle_action.cpp:773:38: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 773 | u32 target = cmd.GetValue(); | ~~~~~~~~~~~~^~ ../fheroes2/battle/battle_action.cpp:774:38: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 774 | u32 damage = cmd.GetValue(); | ~~~~~~~~~~~~^~ ../fheroes2/battle/battle_action.cpp:778:54: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 778 | interface->RedrawActionCatapult( target ); | ^~~~~~ ../fheroes2/battle/battle_action.cpp:779:69: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 779 | SetCastleTargetValue( target, GetCastleTargetValue( target ) - damage ); | ^~~~~~ ../fheroes2/battle/battle_action.cpp:779:39: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 779 | SetCastleTargetValue( target, GetCastleTargetValue( target ) - damage ); | ^~~~~~ ../fheroes2/battle/battle_action.cpp:785:57: warning: suggest braces around empty body in an 'else' statement [-Wempty-body] 785 | DEBUG( DBG_BATTLE, DBG_WARN, "incorrect param" ); | ^ ../fheroes2/battle/battle_action.cpp: In member function 'void Battle::Arena::ApplyActionAutoBattle(Battle::Command&)': ../fheroes2/battle/battle_action.cpp:805:57: warning: suggest braces around empty body in an 'else' statement [-Wempty-body] 805 | DEBUG( DBG_BATTLE, DBG_WARN, "incorrect param" ); | ^ ../fheroes2/battle/battle_action.cpp: In member function 'void Battle::Arena::ApplyActionSpellSummonElemental(Battle::Command&, const Spell&)': ../fheroes2/battle/battle_action.cpp:808:64: warning: unused parameter 'cmd' [-Wunused-parameter] 808 | void Battle::Arena::ApplyActionSpellSummonElemental( Command & cmd, const Spell & spell ) | ~~~~~~~~~~^~~ ../fheroes2/battle/battle_action.cpp: In member function 'void Battle::Arena::ApplyActionSpellEarthQuake(Battle::Command&)': ../fheroes2/battle/battle_action.cpp:871:25: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 871 | if ( 0 != board[position].GetObject() ) { | ^~~~~~~~ ../fheroes2/battle/battle_action.cpp:872:19: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 872 | board[position].SetObject( Rand::Get( range.first, range.second ) ); | ^~~~~~~~ ../fheroes2/battle/battle_action.cpp:872:57: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 872 | board[position].SetObject( Rand::Get( range.first, range.second ) ); | ~~~~~~^~~~~ ../fheroes2/battle/battle_action.cpp:872:70: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 872 | board[position].SetObject( Rand::Get( range.first, range.second ) ); | ~~~~~~^~~~~~ ../fheroes2/battle/battle_action.cpp:872:49: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 872 | board[position].SetObject( Rand::Get( range.first, range.second ) ); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_action.cpp:860:59: warning: unused parameter 'cmd' [-Wunused-parameter] 860 | void Battle::Arena::ApplyActionSpellEarthQuake( Command & cmd ) | ~~~~~~~~~~^~~ In file included from ../fheroes2/battle/battle_pathfinding.h:24, from ../fheroes2/battle/battle_arena.h:31, from ../fheroes2/battle/battle_action.cpp:25: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: army.o ../fheroes2/army/army.cpp: In copy constructor 'Troops::Troops(const Troops&)': ../fheroes2/army/army.cpp:152:1: warning: base class 'class std::vector' should be explicitly initialized in the copy constructor [-Wextra] 152 | Troops::Troops( const Troops & troops ) | ^~~~~~ ../fheroes2/army/army.cpp: In member function 'void Troops::DrawMons32LineWithScoute(s32, s32, u32, u32, u32, u32, bool) const': ../fheroes2/army/army.cpp:759:23: warning: conversion to 'unsigned int' from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 759 | cx += chunk / 2; | ^ ../fheroes2/army/army.cpp:759:12: warning: conversion to 's32' {aka 'int'} from 'unsigned int' may change the sign of the result [-Wsign-conversion] 759 | cx += chunk / 2; | ~~~^~~~~~~~~~~~ ../fheroes2/army/army.cpp:773:71: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 773 | text.Set( Game::CountScoute( ( *it )->GetCount(), scoute, compact ) ); | ^~~~~~ ../fheroes2/army/army.cpp:779:27: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 779 | cx += chunk; | ^~~~~ ../fheroes2/army/army.cpp:779:24: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 779 | cx += chunk; | ~~~^~~~~~~~ ../fheroes2/army/army.cpp: In member function 'void Army::setFromTile(const Maps::Tiles&)': ../fheroes2/army/army.cpp:865:56: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 865 | at( 0 )->Set( Monster::GHOST, tile.GetQuantity2() ); | ~~~~~~~~~~~~~~~~~^~ ../fheroes2/army/army.cpp: In member function 'int Army::GetRace() const': ../fheroes2/army/army.cpp:1023:32: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'std::__iterator_traits<__gnu_cxx::__normal_iterator >, void>::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 1023 | races.resize( std::distance( races.begin(), std::unique( races.begin(), races.end() ) ) ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/army/army.cpp: In member function 'int Army::GetMoraleModificator(std::string*) const': ../fheroes2/army/army.cpp:1136:66: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1136 | StringReplace( str, "%{race}", Race::String( r ) ); | ^ ../fheroes2/army/army.cpp: In static member function 'static void Army::DrawMonsterLines(const Troops&, s32, s32, u32, u32, bool)': ../fheroes2/army/army.cpp:1400:35: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1400 | const int offsetX = lineWidth / 6; | ~~~~~~~~~~^~~ ../fheroes2/army/army.cpp: In static member function 'static JoinCount Army::GetJoinSolution(const Heroes&, const Maps::Tiles&, const Troop&)': ../fheroes2/army/army.cpp:1422:40: warning: conversion from 'double' to 'u32' {aka 'unsigned int'} may change value [-Wfloat-conversion] 1422 | const u32 ratios = troop.isValid() ? hero.GetArmy().GetStrength() / troop.GetStrength() : 0; | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/army/army.cpp:46: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: battle_bridge.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: army_bar.o ../fheroes2/army/army_bar.cpp: In function 'void RedistributeArmy(ArmyTroop&, ArmyTroop&)': ../fheroes2/army/army_bar.cpp:48:76: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 48 | const u32 slots = Dialog::ArmySplitTroop( ( free_slots > max_count ? max_count : free_slots ), max_count, redistr_count, save_last_troop ); | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/army/army_bar.cpp:48:49: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 48 | const u32 slots = Dialog::ArmySplitTroop( ( free_slots > max_count ? max_count : free_slots ), max_count, redistr_count, save_last_troop ); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/army/army_bar.cpp: In member function 'virtual void ArmyBar::RedrawItem(ArmyTroop&, const Rect&, bool, fheroes2::Image&)': ../fheroes2/army/army_bar.cpp:141:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 141 | Text text( GetString( troop.GetCount() ), ( use_mini_sprite ? Font::SMALL : Font::BIG ) ); | ~~~~~~~~~~~~~~^~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/army/army_bar.cpp:31: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: battle_command.o ../fheroes2/battle/battle_command.cpp: In constructor 'Battle::Command::Command(int, int, int, const Indexes&)': ../fheroes2/battle/battle_command.cpp:67:29: warning: conversion to 'int' from 'std::vector::size_type' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 67 | *this << param3.size() << param2 << param1; // path, dst, uid | ~~~~~~~~~~~^~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: battle_catapult.o ../fheroes2/battle/battle_catapult.cpp: In constructor 'Battle::Catapult::Catapult(const HeroBase&, bool)': ../fheroes2/battle/battle_catapult.cpp:30:57: warning: unused parameter 'fortification' [-Wunused-parameter] 30 | Battle::Catapult::Catapult( const HeroBase & hero, bool fortification ) | ~~~~~^~~~~~~~~~~~~ ../fheroes2/battle/battle_catapult.cpp: In member function 'int Battle::Catapult::GetTarget(const std::vector&) const': ../fheroes2/battle/battle_catapult.cpp:148:50: warning: enumerated and non-enumerated type in conditional expression [-Wextra] 148 | return canMiss && 6 > Rand::Get( 1, 20 ) ? CAT_MISS : ( 1 < targets.size() ? *Rand::Get( targets ) : targets.front() ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_catapult.cpp:148:50: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: battle_cell.o ../fheroes2/battle/battle_cell.cpp: In static member function 'static Battle::Position Battle::Position::GetCorrect(const Battle::Unit&, s32)': ../fheroes2/battle/battle_cell.cpp:91:99: warning: suggest braces around empty body in an 'else' statement [-Wempty-body] 91 | DEBUG( DBG_BATTLE, DBG_WARN, "NULL pointer, " << b.String() << ", dst: " << head ); | ^ ../fheroes2/battle/battle_cell.cpp: In member function 'void Battle::Cell::SetArea(const Rect&)': ../fheroes2/battle/battle_cell.cpp:133:74: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 133 | pos.x = area.x + 89 - ( ( ( index / ARENAW ) % 2 ) ? CELLW / 2 : 0 ) + ( CELLW ) * ( index % ARENAW ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_cell.cpp:134:25: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 134 | pos.y = area.y + 62 + ( ( ( CELLH - ( CELLH - CELLH_VER_SIDE ) / 2 ) ) * ( index / ARENAW ) ); | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_cell.cpp:140:36: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 140 | coord[0] = Point( INFL * pos.x + INFL * pos.w / 2, INFL * pos.y + INFL * pos.h / 2 ); | ^ ../fheroes2/battle/battle_cell.cpp:140:69: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 140 | coord[0] = Point( INFL * pos.x + INFL * pos.w / 2, INFL * pos.y + INFL * pos.h / 2 ); | ^ ../fheroes2/battle/battle_cell.cpp:142:50: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 142 | coord[1] = Point( INFL * pos.x, INFL * pos.y + INFL * ( pos.h - vertical_side_size ) / 2 ); | ^ ../fheroes2/battle/battle_cell.cpp:143:36: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 143 | coord[2] = Point( INFL * pos.x + INFL * pos.w / 2, INFL * pos.y ); | ^ ../fheroes2/battle/battle_cell.cpp:144:36: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 144 | coord[3] = Point( INFL * pos.x + INFL * pos.w, INFL * pos.y + INFL * ( pos.h - vertical_side_size ) / 2 ); | ^ ../fheroes2/battle/battle_cell.cpp:144:65: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 144 | coord[3] = Point( INFL * pos.x + INFL * pos.w, INFL * pos.y + INFL * ( pos.h - vertical_side_size ) / 2 ); | ^ ../fheroes2/battle/battle_cell.cpp:145:36: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 145 | coord[4] = Point( INFL * pos.x + INFL * pos.w, INFL * pos.y + INFL * pos.h - INFL * ( pos.h - vertical_side_size ) / 2 ); | ^ ../fheroes2/battle/battle_cell.cpp:145:80: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 145 | coord[4] = Point( INFL * pos.x + INFL * pos.w, INFL * pos.y + INFL * pos.h - INFL * ( pos.h - vertical_side_size ) / 2 ); | ^ ../fheroes2/battle/battle_cell.cpp:146:36: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 146 | coord[5] = Point( INFL * pos.x + INFL * pos.w / 2, INFL * pos.y + INFL * pos.h ); | ^ ../fheroes2/battle/battle_cell.cpp:146:69: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 146 | coord[5] = Point( INFL * pos.x + INFL * pos.w / 2, INFL * pos.y + INFL * pos.h ); | ^ ../fheroes2/battle/battle_cell.cpp:147:65: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 147 | coord[6] = Point( INFL * pos.x, INFL * pos.y + INFL * pos.h - INFL * ( pos.h - vertical_side_size ) / 2 ); | ^ ../fheroes2/battle/battle_cell.cpp: In member function 'void Battle::Cell::SetQuality(u32)': ../fheroes2/battle/battle_cell.cpp:199:15: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 199 | quality = val; | ^~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: battle_arena.o ../fheroes2/battle/battle_arena.cpp: In member function 'void Battle::Arena::TurnTroop(Battle::Unit*)': ../fheroes2/battle/battle_arena.cpp:347:81: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 347 | actions.push_back( Command( MSG_BATTLE_MORALE, current_troop->GetUID(), false ) ); | ~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_arena.cpp:386:85: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 386 | actions.push_back( Command( MSG_BATTLE_MORALE, current_troop->GetUID(), true ) ); | ~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_arena.cpp: In member function 'void Battle::Arena::TowerAction(const Battle::Tower&)': ../fheroes2/battle/battle_arena.cpp:523:51: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 523 | Command cmd( MSG_BATTLE_TOWER, twr.GetType(), enemy->GetUID() ); | ~~~~~~~~~~~^~ ../fheroes2/battle/battle_arena.cpp:523:68: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 523 | Command cmd( MSG_BATTLE_TOWER, twr.GetType(), enemy->GetUID() ); | ~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_arena.cpp: In member function 'void Battle::Arena::CatapultAction()': ../fheroes2/battle/battle_arena.cpp:547:66: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 547 | u32 damage = std::min( catapult->GetDamage(), values[target] ); | ^~~~~~ ../fheroes2/battle/battle_arena.cpp:548:20: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 548 | cmd << damage << target; | ^~~~~~ ../fheroes2/battle/battle_arena.cpp:549:20: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 549 | values[target] -= damage; | ^~~~~~ ../fheroes2/battle/battle_arena.cpp:552:34: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 552 | cmd << catapult->GetShots(); | ~~~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_arena.cpp: In member function 'Battle::Unit* Battle::Arena::GetTroopBoard(s32)': ../fheroes2/battle/battle_arena.cpp:617:49: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 617 | return Board::isValidIndex( index ) ? board[index].GetUnit() : NULL; | ^~~~~ ../fheroes2/battle/battle_arena.cpp: In member function 'const Battle::Unit* Battle::Arena::GetTroopBoard(s32) const': ../fheroes2/battle/battle_arena.cpp:622:49: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 622 | return Board::isValidIndex( index ) ? board[index].GetUnit() : NULL; | ^~~~~ ../fheroes2/battle/battle_arena.cpp: In member function 's32 Battle::Arena::GetFreePositionNearHero(int) const': ../fheroes2/battle/battle_arena.cpp:720:32: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 720 | if ( board[cells[ii]].isPassable1( true ) && NULL == board[cells[ii]].GetUnit() ) | ~~~~~~~~^ ../fheroes2/battle/battle_arena.cpp:720:80: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 720 | if ( board[cells[ii]].isPassable1( true ) && NULL == board[cells[ii]].GetUnit() ) | ~~~~~~~~^ ../fheroes2/battle/battle_arena.cpp: In member function 'void Battle::Arena::SetCastleTargetValue(int, u32)': ../fheroes2/battle/battle_arena.cpp:869:29: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 869 | board[8].SetObject( value ); | ^~~~~ ../fheroes2/battle/battle_arena.cpp:872:30: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 872 | board[29].SetObject( value ); | ^~~~~ ../fheroes2/battle/battle_arena.cpp:875:30: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 875 | board[73].SetObject( value ); | ^~~~~ ../fheroes2/battle/battle_arena.cpp:878:30: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 878 | board[96].SetObject( value ); | ^~~~~ ../fheroes2/battle/battle_arena.cpp: In member function 'u32 Battle::Arena::GetCastleTargetValue(int) const': ../fheroes2/battle/battle_arena.cpp:912:34: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 912 | return board[8].GetObject(); | ~~~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_arena.cpp:914:35: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 914 | return board[29].GetObject(); | ~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_arena.cpp:916:35: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 916 | return board[73].GetObject(); | ~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_arena.cpp:918:35: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 918 | return board[96].GetObject(); | ~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_arena.cpp: In member function 'Battle::Unit* Battle::Arena::CreateElemental(const Spell&)': ../fheroes2/battle/battle_arena.cpp:1072:52: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1072 | u32 count = spell.ExtraValue() * hero->GetPower(); | ~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_arena.cpp: In member function 'u32 Battle::Arena::GetObstaclesPenalty(const Battle::Unit&, const Battle::Unit&) const': ../fheroes2/battle/battle_arena.cpp:1165:42: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'std::__iterator_traits<__gnu_cxx::__normal_iterator >, void>::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 1165 | indexes.resize( std::distance( indexes.begin(), std::unique( indexes.begin(), indexes.end() ) ) ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_arena.cpp:1170:28: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1170 | switch ( board[*it].GetObject() ) { | ^~~ In file included from ../fheroes2/battle/battle_pathfinding.h:24, from ../fheroes2/battle/battle_arena.h:31, from ../fheroes2/battle/battle_arena.cpp:29: ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = Battle::ArenaNode]': ../fheroes2/battle/battle_arena.cpp:582:76: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = Battle::ArenaNode; uint32_t = unsigned int]': ../fheroes2/battle/battle_arena.cpp:602:78: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: battle_animation.o ../fheroes2/battle/battle_animation.cpp: In constructor 'AnimationReference::AnimationReference(int)': ../fheroes2/battle/battle_animation.cpp:200:46: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 200 | _monsterInfo = Bin_Info::GetMonsterInfo( monsterID ); | ^~~~~~~~~ ../fheroes2/battle/battle_animation.cpp:218:38: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 218 | if ( appendFrames( idleAnim, idx ) ) { | ^~~ ../fheroes2/battle/battle_animation.cpp: In member function 'bool AnimationReference::appendFrames(std::vector&, int)': ../fheroes2/battle/battle_animation.cpp:291:71: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 291 | target.insert( target.end(), _monsterInfo.animationFrames.at( animID ).begin(), _monsterInfo.animationFrames.at( animID ).end() ); | ^~~~~~ ../fheroes2/battle/battle_animation.cpp:291:122: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 291 | target.insert( target.end(), _monsterInfo.animationFrames.at( animID ).begin(), _monsterInfo.animationFrames.at( animID ).end() ); | ^~~~~~ ../fheroes2/battle/battle_animation.cpp: In member function 'const std::vector& AnimationReference::getAnimationVector(int) const': ../fheroes2/battle/battle_animation.cpp:308:30: warning: conversion to 's32' {aka 'int'} from 'size_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 308 | picker.Push( i, static_cast( _monsterInfo.idlePriority[i] * 100 ) ); | ^ ../fheroes2/battle/battle_animation.cpp: In member function 'int AnimationState::animationLength() const': ../fheroes2/battle/battle_animation.cpp:581:44: warning: conversion to 'int' from 'size_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 581 | return _currentSequence.animationLength(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: battle_board.o ../fheroes2/battle/battle_board.cpp: In function 'int Battle::GetObstaclePosition()': ../fheroes2/battle/battle_board.cpp:41:34: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 41 | return Rand::Get( 3, 6 ) + ( 11 * Rand::Get( 1, 7 ) ); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_board.cpp: In constructor 'Battle::Board::Board()': ../fheroes2/battle/battle_board.cpp:55:26: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 55 | push_back( Cell( ii ) ); | ^~ ../fheroes2/battle/battle_board.cpp: In member function 'void Battle::Board::SetPositionQuality(const Battle::Unit&)': ../fheroes2/battle/battle_board.cpp:108:52: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 108 | cell2->SetQuality( quality + unitStrength ); | ~~~~~~~~^~~~~~~~~~~~~~ ../fheroes2/battle/battle_board.cpp:110:44: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 110 | cell2->SetQuality( unitStrength ); | ^~~~~~~~~~~~ ../fheroes2/battle/battle_board.cpp: In member function 'void Battle::Board::SetEnemyQuality(const Battle::Unit&)': ../fheroes2/battle/battle_board.cpp:133:31: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 133 | cell->SetQuality( score ); | ^~~~~ ../fheroes2/battle/battle_board.cpp:136:63: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 136 | GetCell( enemy->GetTailIndex() )->SetQuality( score ); | ^~~~~ ../fheroes2/battle/battle_board.cpp: In member function 'void Battle::Board::SetScanPassability(const Battle::Unit&)': ../fheroes2/battle/battle_board.cpp:161:23: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 161 | at( b.GetHeadIndex() ).SetDirection( CENTER ); | ~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_board.cpp:170:38: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'std::__iterator_traits<__gnu_cxx::__normal_iterator >, void>::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 170 | indexes.resize( std::distance( indexes.begin(), std::remove_if( indexes.begin(), indexes.end(), isImpassableIndex ) ) ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_board.cpp: In member function 'Battle::Indexes Battle::Board::GetAStarPath(const Battle::Unit&, const Battle::Position&, bool)': ../fheroes2/battle/battle_board.cpp:212:35: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 212 | const Cell & center = at( cur ); | ^~~ ../fheroes2/battle/battle_board.cpp:217:31: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 217 | Cell & cell = at( *it ); | ^~~ ../fheroes2/battle/battle_board.cpp:292:45: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'std::__iterator_traits<__gnu_cxx::__normal_iterator >, void>::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 292 | result.resize( std::distance( result.begin(), ++moat ) ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_board.cpp: In member function 'Battle::Indexes Battle::Board::GetNearestTroopIndexes(s32, const Indexes*) const': ../fheroes2/battle/battle_board.cpp:384:79: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 384 | dists.push_back( IndexDistance( b->GetHeadIndex(), GetDistance( pos, b->GetHeadIndex() ) ) ); | ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_board.cpp:390:36: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'std::__iterator_traits<__gnu_cxx::__normal_iterator >, void>::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 390 | dists.resize( std::count_if( dists.begin(), dists.end(), std::bind2nd( IndexDistanceEqualDistance(), dists.front().second ) ) ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_board.cpp: In member function 'void Battle::Board::SetCobjObjects(const Maps::Tiles&)': ../fheroes2/battle/battle_board.cpp:686:21: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 686 | while ( at( dest ).GetObject() ) | ^~~~ ../fheroes2/battle/battle_board.cpp: In member function 'void Battle::Board::SetCobjObject(int, s32)': ../fheroes2/battle/battle_board.cpp:695:9: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 695 | at( dst ).SetObject( 0x80 + ( icn - ICN::COBJ0000 ) ); | ^~~ ../fheroes2/battle/battle_board.cpp:711:17: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 711 | at( dst + 1 ).SetObject( 0x40 ); | ~~~~^~~ ../fheroes2/battle/battle_board.cpp: In static member function 'static Battle::Cell* Battle::Board::GetCell(s32, int)': ../fheroes2/battle/battle_board.cpp:843:32: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 843 | return &board->at( position ); | ^~~~~~~~ ../fheroes2/battle/battle_board.cpp:845:49: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 845 | return &board->at( GetIndexDirection( position, dir ) ); | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_board.cpp: In static member function 'static Battle::Indexes Battle::Board::GetDistanceIndexes(s32, u32)': ../fheroes2/battle/battle_board.cpp:938:41: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'std::__iterator_traits<__gnu_cxx::__normal_iterator >, void>::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 938 | abroad.resize( std::distance( abroad.begin(), abroad_end ) ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from ../fheroes2/battle/battle_pathfinding.h:24, from ../fheroes2/battle/battle_arena.h:31, from ../fheroes2/battle/battle_board.cpp:28: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: battle_army.o ../fheroes2/battle/battle_army.cpp: In copy constructor 'Battle::Units::Units(const Battle::Units&, bool)': ../fheroes2/battle/battle_army.cpp:91:1: warning: base class 'class std::vector' should be explicitly initialized in the copy constructor [-Wextra] 91 | Battle::Units::Units( const Units & units, bool filter ) | ^~~~~~ ../fheroes2/battle/battle_army.cpp:96:30: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'std::__iterator_traits<__gnu_cxx::__normal_iterator >, void>::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 96 | resize( std::distance( begin(), std::remove_if( begin(), end(), []( const Unit * unit ) { return !unit->isValid(); } ) ) ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_army.cpp: In constructor 'Battle::Force::Force(Army&, bool)': ../fheroes2/battle/battle_army.cpp:199:53: warning: conversion to 's32' {aka 'int'} from 'unsigned int' may change the sign of the result [-Wsign-conversion] 199 | push_back( new Unit( *troop, ( opposite ? position + 10 : position ), opposite ) ); | ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_army.cpp: In member function 'u32 Battle::Force::GetSurrenderCost() const': ../fheroes2/battle/battle_army.cpp:246:28: warning: conversion from 's32' {aka 'int'} to 'float' may change value [-Wconversion] 246 | res += payment.gold; | ~~~~~~~~^~~~ ../fheroes2/battle/battle_army.cpp:274:40: warning: conversion from 'u32' {aka 'unsigned int'} to 'float' may change value [-Wconversion] 274 | res -= res * art.ExtraValue() / 100; | ~~~~~~~~~~~~~~^~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: battle_main.o ../fheroes2/battle/battle_main.cpp: In function 'void Battle::NecromancySkillAction(HeroBase&, u32, bool)': ../fheroes2/battle/battle_main.cpp:283:41: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 283 | StringReplace( msg, "%{count}", count ); | ^~~~~ ../fheroes2/battle/battle_main.cpp:290:31: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 290 | Text text( GetString( count ), Font::SMALL ); | ^~~~~ In file included from ../fheroes2/battle/battle_pathfinding.h:24, from ../fheroes2/battle/battle_arena.h:31, from ../fheroes2/battle/battle_main.cpp:29: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: battle_grave.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: battle_pathfinding.o ../fheroes2/battle/battle_pathfinding.cpp: In member function 'bool Battle::ArenaPathfinder::hexIsAccessible(int) const': ../fheroes2/battle/battle_pathfinding.cpp:109:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 109 | return _cache[targetCell]._from != -1; | ^~~~~~~~~~ ../fheroes2/battle/battle_pathfinding.cpp: In member function 'bool Battle::ArenaPathfinder::hexIsPassable(int) const': ../fheroes2/battle/battle_pathfinding.cpp:114:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 114 | return _cache[targetCell]._cost == 0 || ( _cache[targetCell]._isOpen && _cache[targetCell]._from != -1 ); | ^~~~~~~~~~ ../fheroes2/battle/battle_pathfinding.cpp:114:58: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 114 | return _cache[targetCell]._cost == 0 || ( _cache[targetCell]._isOpen && _cache[targetCell]._from != -1 ); | ^~~~~~~~~~ ../fheroes2/battle/battle_pathfinding.cpp:114:88: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 114 | return _cache[targetCell]._cost == 0 || ( _cache[targetCell]._isOpen && _cache[targetCell]._from != -1 ); | ^~~~~~~~~~ ../fheroes2/battle/battle_pathfinding.cpp: In member function 'virtual std::__cxx11::list Battle::ArenaPathfinder::buildPath(int) const': ../fheroes2/battle/battle_pathfinding.cpp:122:53: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 122 | while ( currentNode != targetCell && _cache[currentNode]._cost != 0 ) { | ^~~~~~~~~~~ ../fheroes2/battle/battle_pathfinding.cpp:123:45: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 123 | const ArenaNode & node = _cache[currentNode]; | ^~~~~~~~~~~ ../fheroes2/battle/battle_pathfinding.cpp: In member function 'void Battle::ArenaPathfinder::calculate(const Battle::Unit&)': ../fheroes2/battle/battle_pathfinding.cpp:145:16: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 145 | _cache[headIdx]._cost = 0; | ^~~~~~~ ../fheroes2/battle/battle_pathfinding.cpp:146:16: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 146 | _cache[headIdx]._isOpen = false; | ^~~~~~~ ../fheroes2/battle/battle_pathfinding.cpp:151:20: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 151 | _cache[tailIdx]._cost = 0; | ^~~~~~~ ../fheroes2/battle/battle_pathfinding.cpp:152:20: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 152 | _cache[tailIdx]._isOpen = false; | ^~~~~~~ ../fheroes2/battle/battle_pathfinding.cpp:160:43: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 160 | ArenaNode & node = _cache[idx]; | ^~~ ../fheroes2/battle/battle_pathfinding.cpp:165:51: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 165 | node._cost = board.GetDistance( headIdx, idx ); | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_pathfinding.cpp:175:51: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | ArenaNode & unitNode = _cache[unitIdx]; | ^~~~~~~ ../fheroes2/battle/battle_pathfinding.cpp:180:68: warning: comparison of integer expressions of different signedness: 'const int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] 180 | if ( hexIsPassable( cell ) && ( flyingDist < unitNode._cost ) ) { | ~~~~~~~~~~~^~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_pathfinding.cpp:203:54: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 203 | const uint32_t cost = _cache[fromNode]._cost; | ^~~~~~~~ ../fheroes2/battle/battle_pathfinding.cpp:204:51: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 204 | ArenaNode & node = _cache[newNode]; | ^~~~~~~ In file included from ../fheroes2/battle/battle_pathfinding.h:24, from ../fheroes2/battle/battle_pathfinding.cpp:21: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = Battle::ArenaNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = Battle::ArenaNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: battle_only.o ../fheroes2/battle/battle_only.cpp: In function 'StreamBase& operator>>(StreamBase&, Battle::Only&)': ../fheroes2/battle/battle_only.cpp:116:53: warning: suggest braces around empty body in an 'else' statement [-Wempty-body] 116 | DEBUG( DBG_NETWORK, DBG_WARN, "unknown id" ); | ^ ../fheroes2/battle/battle_only.cpp:123:53: warning: suggest braces around empty body in an 'else' statement [-Wempty-body] 123 | DEBUG( DBG_NETWORK, DBG_WARN, "unknown id" ); | ^ ../fheroes2/battle/battle_only.cpp: In member function 'bool Battle::Only::ChangeSettings()': ../fheroes2/battle/battle_only.cpp:272:36: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 272 | u32 value = hero1->attack; | ~~~~~~~^~~~~~ ../fheroes2/battle/battle_only.cpp:274:37: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 274 | hero1->attack = value; | ^~~~~ ../fheroes2/battle/battle_only.cpp:279:36: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 279 | u32 value = hero1->defense; | ~~~~~~~^~~~~~~ ../fheroes2/battle/battle_only.cpp:281:38: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 281 | hero1->defense = value; | ^~~~~ ../fheroes2/battle/battle_only.cpp:286:36: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 286 | u32 value = hero1->power; | ~~~~~~~^~~~~ ../fheroes2/battle/battle_only.cpp:288:36: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 288 | hero1->power = value; | ^~~~~ ../fheroes2/battle/battle_only.cpp:293:36: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 293 | u32 value = hero1->knowledge; | ~~~~~~~^~~~~~~~~ ../fheroes2/battle/battle_only.cpp:295:40: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 295 | hero1->knowledge = value; | ^~~~~ ../fheroes2/battle/battle_only.cpp:303:36: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 303 | u32 value = hero2->attack; | ~~~~~~~^~~~~~ ../fheroes2/battle/battle_only.cpp:305:37: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 305 | hero2->attack = value; | ^~~~~ ../fheroes2/battle/battle_only.cpp:310:36: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 310 | u32 value = hero2->defense; | ~~~~~~~^~~~~~~ ../fheroes2/battle/battle_only.cpp:312:38: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 312 | hero2->defense = value; | ^~~~~ ../fheroes2/battle/battle_only.cpp:317:36: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 317 | u32 value = hero2->power; | ~~~~~~~^~~~~ ../fheroes2/battle/battle_only.cpp:319:36: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 319 | hero2->power = value; | ^~~~~ ../fheroes2/battle/battle_only.cpp:324:36: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 324 | u32 value = hero2->knowledge; | ~~~~~~~^~~~~~~~~ ../fheroes2/battle/battle_only.cpp:326:40: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 326 | hero2->knowledge = value; | ^~~~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/battle/battle_only.cpp:40: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: battle_dialogs.o ../fheroes2/battle/battle_dialogs.cpp: In function 'void Battle::GetSummaryParams(int, int, const HeroBase&, u32, {anonymous}::LoopedAnimationSequence&, std::string&)': ../fheroes2/battle/battle_dialogs.cpp:289:43: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 289 | StringReplace( msg, "%{exp}", exp ); | ^~~ ../fheroes2/battle/battle_dialogs.cpp: In member function 'void Battle::Arena::DialogBattleSummary(const Battle::Result&) const': ../fheroes2/battle/battle_dialogs.cpp:329:31: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 329 | GetSummaryParams( res.army1, res.army2, *army1->GetCommander(), res.exp1, sequence, msg ); | ~~~~^~~~~ ../fheroes2/battle/battle_dialogs.cpp:329:42: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 329 | GetSummaryParams( res.army1, res.army2, *army1->GetCommander(), res.exp1, sequence, msg ); | ~~~~^~~~~ ../fheroes2/battle/battle_dialogs.cpp:334:31: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 334 | GetSummaryParams( res.army2, res.army1, *army2->GetCommander(), res.exp2, sequence, msg ); | ~~~~^~~~~ ../fheroes2/battle/battle_dialogs.cpp:334:42: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 334 | GetSummaryParams( res.army2, res.army1, *army2->GetCommander(), res.exp2, sequence, msg ); | ~~~~^~~~~ ../fheroes2/battle/battle_dialogs.cpp:339:31: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 339 | GetSummaryParams( res.army1, res.army2, *army1->GetCommander(), res.exp1, sequence, msg ); | ~~~~^~~~~ ../fheroes2/battle/battle_dialogs.cpp:339:42: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 339 | GetSummaryParams( res.army1, res.army2, *army1->GetCommander(), res.exp1, sequence, msg ); | ~~~~^~~~~ ../fheroes2/battle/battle_dialogs.cpp:344:31: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 344 | GetSummaryParams( res.army2, res.army1, *army2->GetCommander(), res.exp2, sequence, msg ); | ~~~~^~~~~ ../fheroes2/battle/battle_dialogs.cpp:344:42: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 344 | GetSummaryParams( res.army2, res.army1, *army2->GetCommander(), res.exp2, sequence, msg ); | ~~~~^~~~~ ../fheroes2/battle/battle_dialogs.cpp: In member function 'int Battle::Arena::DialogBattleHero(const HeroBase&, bool) const': ../fheroes2/battle/battle_dialogs.cpp:472:58: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 472 | fheroes2::Blit( fheroes2::AGG::GetICN( ICN::VIEWGEN, col ), display, pos_rt.x + 133, pos_rt.y + 36 ); | ^~~ ../fheroes2/battle/battle_dialogs.cpp:516:85: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 516 | str = _( "Spell Points" ) + std::string( ": " ) + GetString( hero.GetSpellPoints() ) + "/" + GetString( hero.GetMaxSpellPoints() ); | ~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_dialogs.cpp:516:131: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 516 | str = _( "Spell Points" ) + std::string( ": " ) + GetString( hero.GetSpellPoints() ) + "/" + GetString( hero.GetMaxSpellPoints() ); | ~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_dialogs.cpp: In function 'bool Battle::DialogBattleSurrender(const HeroBase&, u32, const Kingdom&)': ../fheroes2/battle/battle_dialogs.cpp:625:73: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 625 | StringReplace( msg, "%{gold}", cost - kingdom.GetFunds().Get( Resource::GOLD ) ); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_dialogs.cpp:625:49: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 625 | StringReplace( msg, "%{gold}", cost - kingdom.GetFunds().Get( Resource::GOLD ) ); | ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_dialogs.cpp:645:37: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 645 | StringReplace( str, "%{price}", cost ); | ^~~~ In file included from ../fheroes2/battle/battle_pathfinding.h:24, from ../fheroes2/battle/battle_arena.h:31, from ../fheroes2/battle/battle_dialogs.cpp:28: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: captain.o ../fheroes2/castle/captain.cpp: In member function 'virtual u32 Captain::GetMaxSpellPoints() const': ../fheroes2/castle/captain.cpp:196:22: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 196 | return knowledge * 10; | ~~~~~~~~~~^~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: battle_tower.o ../fheroes2/battle/battle_tower.cpp: In constructor 'Battle::Tower::Tower(const Castle&, int)': ../fheroes2/battle/battle_tower.cpp:35:43: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 35 | count += castle.GetLevelMageGuild() - 1; | ^ ../fheroes2/battle/battle_tower.cpp:43:37: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 43 | bonus = castle.GetLevelMageGuild(); | ~~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_tower.cpp: In member function 'u32 Battle::Tower::GetType() const': ../fheroes2/battle/battle_tower.cpp:70:12: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 70 | return type; | ^~~~ ../fheroes2/battle/battle_tower.cpp: In static member function 'static std::string Battle::Tower::GetInfo(const Castle&)': ../fheroes2/battle/battle_tower.cpp:145:57: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 145 | StringReplace( msg, "%{count}", twr.GetCount() ); | ~~~~~~~~~~~~^~ ../fheroes2/battle/battle_tower.cpp:150:62: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 150 | StringReplace( msg, "%{attack}", twr.GetBonus() ); | ~~~~~~~~~~~~^~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: battle_troop.o ../fheroes2/battle/battle_troop.cpp: In member function 'virtual std::string Battle::Unit::GetShotString() const': ../fheroes2/battle/battle_troop.cpp:211:42: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 211 | return GetString( Troop::GetShots() ); | ~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_troop.cpp: In member function 'virtual std::string Battle::Unit::GetSpeedString() const': ../fheroes2/battle/battle_troop.cpp:221:34: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 221 | os << Speed::String( GetSpeed() ) << " (" << GetSpeed() << ")"; | ~~~~~~~~^~ ../fheroes2/battle/battle_troop.cpp: In member function 'void Battle::Unit::SetRandomMorale()': ../fheroes2/battle/battle_troop.cpp:293:43: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 's32' {aka 'int'} [-Wsign-compare] 293 | if ( morale > 0 && Rand::Get( 1, 24 ) <= morale ) { | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../fheroes2/battle/battle_troop.cpp:296:48: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 's32' {aka 'int'} [-Wsign-compare] 296 | else if ( morale < 0 && Rand::Get( 1, 12 ) <= -morale ) { | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ ../fheroes2/battle/battle_troop.cpp: In member function 'void Battle::Unit::SetRandomLuck()': ../fheroes2/battle/battle_troop.cpp:312:29: warning: comparison of integer expressions of different signedness: 'u32' {aka 'unsigned int'} and 's32' {aka 'int'} [-Wsign-compare] 312 | if ( luck > 0 && chance <= luck ) { | ~~~~~~~^~~~~~~ ../fheroes2/battle/battle_troop.cpp:315:34: warning: comparison of integer expressions of different signedness: 'u32' {aka 'unsigned int'} and 's32' {aka 'int'} [-Wsign-compare] 315 | else if ( luck < 0 && chance <= -luck ) { | ~~~~~~~^~~~~~~~ ../fheroes2/battle/battle_troop.cpp: In member function 'bool Battle::Unit::canReach(int) const': ../fheroes2/battle/battle_troop.cpp:352:46: warning: comparison of integer expressions of different signedness: 's32' {aka 'int'} and 'u32' {aka 'unsigned int'} [-Wsign-compare] 352 | return Board::GetDistance( from, index ) <= GetSpeed( true ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_troop.cpp: In member function 'u32 Battle::Unit::GetSpeed(bool) const': ../fheroes2/battle/battle_troop.cpp:452:90: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 452 | return spell.ExtraValue() ? speed + spell.ExtraValue() : Speed::GetOriginalFast( speed ); | ^~~~~ ../fheroes2/battle/battle_troop.cpp:452:88: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 452 | return spell.ExtraValue() ? speed + spell.ExtraValue() : Speed::GetOriginalFast( speed ); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../fheroes2/battle/battle_troop.cpp:456:90: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 456 | return spell.ExtraValue() ? speed - spell.ExtraValue() : Speed::GetOriginalSlow( speed ); | ^~~~~ ../fheroes2/battle/battle_troop.cpp:456:88: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 456 | return spell.ExtraValue() ? speed - spell.ExtraValue() : Speed::GetOriginalSlow( speed ); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../fheroes2/battle/battle_troop.cpp: In member function 'u32 Battle::Unit::CalculateMinDamage(const Battle::Unit&) const': ../fheroes2/battle/battle_troop.cpp:483:63: warning: conversion from 'u32' {aka 'unsigned int'} to 'float' may change value [-Wconversion] 483 | return CalculateDamageUnit( enemy, ArmyTroop::GetDamageMin() ); | ~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_troop.cpp: In member function 'u32 Battle::Unit::CalculateMaxDamage(const Battle::Unit&) const': ../fheroes2/battle/battle_troop.cpp:488:63: warning: conversion from 'u32' {aka 'unsigned int'} to 'float' may change value [-Wconversion] 488 | return CalculateDamageUnit( enemy, ArmyTroop::GetDamageMax() ); | ~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_troop.cpp: In member function 'u32 Battle::Unit::CalculateDamageUnit(const Battle::Unit&, float) const': ../fheroes2/battle/battle_troop.cpp:497:66: warning: conversion from 'u32' {aka 'unsigned int'} to 'float' may change value [-Wconversion] 497 | dmg += ( dmg * GetCommander()->GetSecondaryValues( Skill::Secondary::ARCHERY ) / 100 ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_troop.cpp:506:58: warning: conversion from 'u32' {aka 'unsigned int'} to 'float' may change value [-Wconversion] 506 | dmg /= Spell( Spell::SHIELD ).ExtraValue(); | ^ ../fheroes2/battle/battle_troop.cpp:548:25: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 548 | int r = GetAttack() - enemy.GetDefense(); | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_troop.cpp:550:54: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 550 | r += Spell( Spell::DRAGONSLAYER ).ExtraValue(); | ^ ../fheroes2/battle/battle_troop.cpp:550:54: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] ../fheroes2/battle/battle_troop.cpp:553:41: warning: conversion from 'int' to 'float' may change value [-Wconversion] 553 | dmg *= 1 + ( 0 < r ? 0.1f * std::min( r, 20 ) : 0.05f * std::max( r, -16 ) ); | ~~~~~~~~^~~~~~~~~ ../fheroes2/battle/battle_troop.cpp:553:69: warning: conversion from 'int' to 'float' may change value [-Wconversion] 553 | dmg *= 1 + ( 0 < r ? 0.1f * std::min( r, 20 ) : 0.05f * std::max( r, -16 ) ); | ~~~~~~~~^~~~~~~~~~ ../fheroes2/battle/battle_troop.cpp: In member function 'bool Battle::Unit::AllowApplySpell(const Spell&, const HeroBase*, std::string*, bool) const': ../fheroes2/battle/battle_troop.cpp:741:39: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 741 | if ( isMagicResist( spell, ( hero ? hero->GetPower() : 0 ) ) ) | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_troop.cpp: In member function 'bool Battle::Unit::ApplySpell(const Spell&, const HeroBase*, Battle::TargetInfo&)': ../fheroes2/battle/battle_troop.cpp:805:29: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 805 | const u32 spoint = hero ? hero->GetPower() : DEFAULT_SPELL_DURATION; ../fheroes2/battle/battle_troop.cpp: In member function 'std::string Battle::Unit::String(bool) const': ../fheroes2/battle/battle_troop.cpp:832:52: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 832 | << ", speed(" << Speed::String( GetSpeed() ) << ", " << static_cast( GetSpeed() ) << ")" | ~~~~~~~~^~ ../fheroes2/battle/battle_troop.cpp: In member function 'virtual u32 Battle::Unit::GetDefense() const': ../fheroes2/battle/battle_troop.cpp:982:59: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 982 | res -= GameStatic::GetBattleMoatReduceDefense(); | ^ ../fheroes2/battle/battle_troop.cpp: In member function 's32 Battle::Unit::GetScoreQuality(const Battle::Unit&) const': ../fheroes2/battle/battle_troop.cpp:995:144: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] 995 | const double defendersDamage = CalculateDamageUnit( attacker, ( static_cast( defender.GetDamageMin() ) + defender.GetDamageMax() ) / 2.0 ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ ../fheroes2/battle/battle_troop.cpp:999:119: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] 999 | double attackerThreat = CalculateDamageUnit( defender, ( static_cast( GetDamageMin() ) + GetDamageMax() ) / 2.0 ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ ../fheroes2/battle/battle_troop.cpp: In member function 'void Battle::Unit::SpellRestoreAction(const Spell&, u32, const HeroBase*)': ../fheroes2/battle/battle_troop.cpp:1413:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1413 | StringReplace( str, "%{count}", resurrect ); | ^~~~~~~~~ ../fheroes2/battle/battle_troop.cpp: In member function 'int Battle::Unit::ICNMiss() const': ../fheroes2/battle/battle_troop.cpp:1770:41: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1770 | return Monster::GetMissileICN( GetID() ); | ~~~~~^~ ../fheroes2/battle/battle_troop.cpp:1770:34: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1770 | return Monster::GetMissileICN( GetID() ); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../fheroes2/battle/battle_troop.cpp: In member function 'Point Battle::Unit::GetBackPoint() const': ../fheroes2/battle/battle_troop.cpp:1781:34: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 1781 | return reflect ? Point( rt.x + rt.w, rt.y + rt.h / 2 ) : Point( rt.x, rt.y + rt.h / 2 ); | ~~~~~^~~~~~ ../fheroes2/battle/battle_troop.cpp:1781:47: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 1781 | return reflect ? Point( rt.x + rt.w, rt.y + rt.h / 2 ) : Point( rt.x, rt.y + rt.h / 2 ); | ~~~~~^~~~~~~~~~ ../fheroes2/battle/battle_troop.cpp:1781:80: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 1781 | return reflect ? Point( rt.x + rt.w, rt.y + rt.h / 2 ) : Point( rt.x, rt.y + rt.h / 2 ); | ~~~~~^~~~~~~~~~ ../fheroes2/battle/battle_troop.cpp: In member function 'Point Battle::Unit::GetCenterPoint() const': ../fheroes2/battle/battle_troop.cpp:1786:99: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1786 | const fheroes2::Sprite & sprite = fheroes2::AGG::GetICN( GetMonsterSprite().icn_file, GetFrame() ); | ~~~~~~~~^~ ../fheroes2/battle/battle_troop.cpp:1791:25: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 1791 | return Point( pos.x + pos.w / 2, centerY ); | ~~~~~~^~~~~~~~~~~ ../fheroes2/battle/battle_troop.cpp:1791:38: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 1791 | return Point( pos.x + pos.w / 2, centerY ); | ^~~~~~~ In file included from ../fheroes2/battle/battle_pathfinding.h:24, from ../fheroes2/battle/battle_arena.h:31, from ../fheroes2/battle/battle_troop.h:31, from ../fheroes2/battle/battle_troop.cpp:31: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: buildinginfo.o ../fheroes2/castle/buildinginfo.cpp: In static member function 'static void BuildingInfo::UpdateCosts(const string&)': ../fheroes2/castle/buildinginfo.cpp:187:29: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 187 | cost.gold = value; | ^~~~~ ../fheroes2/castle/buildinginfo.cpp:189:29: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 189 | cost.wood = value; | ^~~~~ ../fheroes2/castle/buildinginfo.cpp:191:32: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 191 | cost.mercury = value; | ^~~~~ ../fheroes2/castle/buildinginfo.cpp:193:28: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 193 | cost.ore = value; | ^~~~~ ../fheroes2/castle/buildinginfo.cpp:195:31: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 195 | cost.sulfur = value; | ^~~~~ ../fheroes2/castle/buildinginfo.cpp:197:32: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 197 | cost.crystal = value; | ^~~~~ ../fheroes2/castle/buildinginfo.cpp:199:29: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 199 | cost.gems = value; | ^~~~~ ../fheroes2/castle/buildinginfo.cpp: In constructor 'BuildingInfo::BuildingInfo(const Castle&, building_t)': ../fheroes2/castle/buildinginfo.cpp:331:69: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 331 | StringReplace( description, "%{count}", Castle::GetGrownWell() ); | ~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/castle/buildinginfo.cpp:335:69: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 335 | StringReplace( description, "%{count}", Castle::GetGrownWel2() ); | ~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/castle/buildinginfo.cpp: In member function 'void BuildingInfo::Redraw()': ../fheroes2/castle/buildinginfo.cpp:457:91: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 457 | fheroes2::Blit( fheroes2::AGG::GetICN( ICN::Get4Building( castle.GetRace() ), index ), display, area.x + 1, area.y + 1 ); | ^~~~~ ../fheroes2/castle/buildinginfo.cpp: In member function 'bool BuildingInfo::DialogBuyBuilding(bool) const': ../fheroes2/castle/buildinginfo.cpp:586:131: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 586 | const fheroes2::Sprite & building_icons = fheroes2::AGG::GetICN( ICN::Get4Building( castle.GetRace() ), GetIndexBuildingSprite( building ) ); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ../fheroes2/castle/buildinginfo.cpp: In member function 'virtual void DwellingsBar::RedrawItem(DwellingItem&, const Rect&, fheroes2::Image&)': ../fheroes2/castle/buildinginfo.cpp:759:59: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 759 | Text text( GetString( castle.getMonstersInDwelling( dwl.type ) ), Font::SMALL ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ../fheroes2/castle/buildinginfo.cpp:769:36: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 769 | text.Set( "+" + GetString( grown ), Font::YELLOW_SMALL ); | ^~~~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/castle/buildinginfo.cpp:36: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: castle_building.o ../fheroes2/castle/castle_building.cpp: In function 'void CastleDialog::RedrawBuildingSpriteToArea(const fheroes2::Sprite&, s32, s32, const Rect&, uint8_t)': ../fheroes2/castle/castle_building.cpp:41:58: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 41 | std::pair res = Rect::Fixed4Blit( Rect( dst_x, dst_y, sprite.width(), sprite.height() ), max ); | ^~~~~ ../fheroes2/castle/castle_building.cpp:41:65: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 41 | std::pair res = Rect::Fixed4Blit( Rect( dst_x, dst_y, sprite.width(), sprite.height() ), max ); | ^~~~~ ../fheroes2/castle/castle_building.cpp:41:84: warning: conversion from 'int32_t' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 41 | std::pair res = Rect::Fixed4Blit( Rect( dst_x, dst_y, sprite.width(), sprite.height() ), max ); | ~~~~~~~~~~~~^~ ../fheroes2/castle/castle_building.cpp:41:101: warning: conversion from 'int32_t' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 41 | std::pair res = Rect::Fixed4Blit( Rect( dst_x, dst_y, sprite.width(), sprite.height() ), max ); | ~~~~~~~~~~~~~^~ ../fheroes2/castle/castle_building.cpp: In function 'void CastleRedrawTownName(const Castle&, const Point&)': ../fheroes2/castle/castle_building.cpp:79:31: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 79 | Point dst_pt( dst.x + 320 - background.width() / 2, dst.y + 248 ); | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/castle/castle_building.cpp:83:28: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 83 | dst_pt.x = dst.x + 320 - text.w() / 2; | ~~~~~~~~~~~~^~~~~~~~~~~~~~ ../fheroes2/castle/castle_building.cpp: In function 'void CastleRedrawCurrentBuilding(const Castle&, const Point&, const CastleDialog::CacheBuildings&, u32, u32)': ../fheroes2/castle/castle_building.cpp:203:88: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 203 | CastleDialog::RedrawRoadConnection( castle, dst_pt, build, alpha ); | ^~~~~ ../fheroes2/castle/castle_building.cpp:208:105: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 208 | CastleDialog::CastleRedrawBuilding( castle, dst_pt, currentBuildId, buildFrame, alpha ); | ^~~~~ ../fheroes2/castle/castle_building.cpp:209:108: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 209 | CastleDialog::CastleRedrawBuildingExtended( castle, dst_pt, currentBuildId, frame, alpha ); | ^~~~~ ../fheroes2/castle/castle_building.cpp:211:97: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 211 | CastleDialog::RedrawRoadConnection( castle, dst_pt, currentBuildId, alpha ); | ^~~~~ ../fheroes2/castle/castle_building.cpp:88:140: warning: unused parameter 'flash' [-Wunused-parameter] 88 | void CastleRedrawCurrentBuilding( const Castle & castle, const Point & dst_pt, const CastleDialog::CacheBuildings & orders, u32 build, u32 flash ) | ~~~~^~~~~ ../fheroes2/castle/castle_building.cpp: In function 'Rect CastleGetMaxArea(const Castle&, const Point&)': ../fheroes2/castle/castle_building.cpp:1083:26: warning: conversion from 'int32_t' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 1083 | res.w = townbkg.width(); | ~~~~~~~~~~~~~^~ ../fheroes2/castle/castle_building.cpp:1084:27: warning: conversion from 'int32_t' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 1084 | res.h = townbkg.height(); | ~~~~~~~~~~~~~~^~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: castle_dialog.o ../fheroes2/castle/castle_dialog.cpp: In function 'void RedrawIcons(const Castle&, const CastleHeroes&, const Point&)': ../fheroes2/castle/castle_dialog.cpp:136:67: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 136 | icon1 = fheroes2::AGG::GetICN( ICN::CREST, Color::GetIndex( castle.GetColor() ) ); | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ../fheroes2/castle/castle_dialog.cpp: In member function 'int Castle::OpenDialog(bool)': ../fheroes2/castle/castle_dialog.cpp:232:88: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 232 | const fheroes2::Sprite & crest = fheroes2::AGG::GetICN( ICN::CREST, Color::GetIndex( GetColor() ) ); | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ ../fheroes2/castle/castle_dialog.cpp:254:34: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 254 | const Rect rectSign2( dst_pt.x, dst_pt.y, 100, 92 ); | ~~~~~~~^ ../fheroes2/castle/castle_dialog.cpp:254:44: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 254 | const Rect rectSign2( dst_pt.x, dst_pt.y, 100, 92 ); | ~~~~~~~^ ../fheroes2/castle/castle_dialog.cpp:563:161: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 563 | fheroes2::AlphaBlit( shipyardSprite, display, cur_pt.x + shipyardSprite.x(), cur_pt.y + shipyardSprite.y(), alpha ); | ^~~~~ ../fheroes2/castle/castle_dialog.cpp:565:149: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 565 | fheroes2::AlphaBlit( boatSprite, display, cur_pt.x + boatSprite.x(), cur_pt.y + boatSprite.y(), alpha ); | ^~~~~ ../fheroes2/castle/castle_dialog.cpp:671:101: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 671 | fheroes2::AlphaBlit( sf, display, cur_pt.x, cur_pt.y + 356, alpha ); | ^~~~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/castle/castle_dialog.cpp:46: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: castle_town.o ../fheroes2/castle/castle_town.cpp: In member function 'int Castle::DialogBuyHero(const Heroes*)': ../fheroes2/castle/castle_town.cpp:75:37: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 75 | StringReplace( str, "%{count}", count ); | ^~~~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/castle/castle_town.cpp:40: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: battle_interface.o ../fheroes2/battle/battle_interface.cpp: In function 'std::vector > {anonymous}::GenerateLightning(const Point&, const Point&)': ../fheroes2/battle/battle_interface.cpp:74:101: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 74 | lines.push_back( std::make_pair( LightningPoint( Point( 0, 0 ), 5 ), LightningPoint( Point( distance, 0 ), 3 ) ) ); | ^~~~~~~~ ../fheroes2/battle/battle_interface.cpp:92:26: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 92 | middle.y += isPositive ? offsetY : -offsetY; | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_interface.cpp:103:82: warning: conversion from 'double' to 'int' may change value [-Wfloat-conversion] 103 | const int x = ( middle.x - oldLines[i].first.point.x ) * 0.7 + middle.x; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ ../fheroes2/battle/battle_interface.cpp:104:93: warning: conversion from 'double' to 'int' may change value [-Wfloat-conversion] 104 | const int y = ( middle.y - oldLines[i].first.point.y ) * 0.7 + middle.y + ( isPositive ? offsetY : -offsetY ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_interface.cpp:105:90: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 105 | lines.push_back( std::make_pair( middlePoint, LightningPoint( Point( x, y ), 1 ) ) ); | ^ ../fheroes2/battle/battle_interface.cpp:105:93: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 105 | lines.push_back( std::make_pair( middlePoint, LightningPoint( Point( x, y ), 1 ) ) ); | ^ ../fheroes2/battle/battle_interface.cpp: In function 'void {anonymous}::RedrawLightning(const std::vector >&, uint8_t, fheroes2::Image&, const Rect&)': ../fheroes2/battle/battle_interface.cpp:134:70: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 134 | const int offset = isUpper ? ( thickness + 1 ) / 2 : -static_cast( ( thickness + 1 ) / 2 ); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_interface.cpp:134:44: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 134 | const int offset = isUpper ? ( thickness + 1 ) / 2 : -static_cast( ( thickness + 1 ) / 2 ); | ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_interface.cpp:143:70: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 143 | const int offset = isUpper ? ( thickness + 1 ) / 2 : -static_cast( ( thickness + 1 ) / 2 ); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_interface.cpp:143:44: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 143 | const int offset = isUpper ? ( thickness + 1 ) / 2 : -static_cast( ( thickness + 1 ) / 2 ); | ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::StatusListBox::SetPosition(u32, u32)': ../fheroes2/battle/battle_interface.cpp:181:33: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 181 | border.SetPosition( px, py - sh - 2, sw - 32, sh - 30 ); | ^~ ../fheroes2/battle/battle_interface.cpp:181:45: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 181 | border.SetPosition( px, py - sh - 2, sw - 32, sh - 30 ); | ~~~~~~~~^~~ ../fheroes2/battle/battle_interface.cpp:183:44: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 183 | const u32 ax = area.x + area.w - 20; | ~~~~~~~~~~~~~~~~^~~~ ../fheroes2/battle/battle_interface.cpp:188:73: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] 188 | SetScrollButtonUp( ICN::DROPLISL, 6, 7, fheroes2::Point( ax + 8, area.y - 10 ) ); | ~~~^~~ ../fheroes2/battle/battle_interface.cpp:189:73: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] 189 | SetScrollButtonDn( ICN::DROPLISL, 8, 9, fheroes2::Point( ax + 8, area.y + area.h - 11 ) ); | ~~~^~~ ../fheroes2/battle/battle_interface.cpp:191:55: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] 191 | fheroes2::Rect( ax + 5 + 8, buttonPgUp.area().y + buttonPgUp.area().height + 3, 12, | ~~~~~~~^~~ ../fheroes2/battle/battle_interface.cpp: In member function 'virtual void Battle::StatusListBox::RedrawItem(const string&, s32, s32, bool)': ../fheroes2/battle/battle_interface.cpp:214:80: warning: unused parameter 'f' [-Wunused-parameter] 214 | virtual void RedrawItem( const std::string & str, s32 px, s32 py, bool f ) override | ~~~~~^ ../fheroes2/battle/battle_interface.cpp: In member function 'virtual void Battle::StatusListBox::RedrawBackground(const Point&)': ../fheroes2/battle/battle_interface.cpp:228:46: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 228 | const u32 ax = buttonPgUp.area().x; | ~~~~~~~~~~~~~~~~~~^ ../fheroes2/battle/battle_interface.cpp:229:48: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 229 | const u32 ah = buttonPgDn.area().y - ( buttonPgUp.area().y + buttonPgUp.area().height ); | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_interface.cpp:234:53: warning: conversion to 'unsigned int' from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 234 | for ( u32 ii = 0; ii < ( ah / sp3.height() ); ++ii ) | ~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp:235:112: warning: conversion to 'u32' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 235 | fheroes2::Blit( sp3, display, ax, buttonPgUp.area().y + buttonPgUp.area().height + ( sp3.height() * ii ) ); | ~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp:235:71: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 235 | fheroes2::Blit( sp3, display, ax, buttonPgUp.area().y + buttonPgUp.area().height + ( sp3.height() * ii ) ); | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_interface.cpp:235:47: warning: conversion to 'int32_t' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 235 | fheroes2::Blit( sp3, display, ax, buttonPgUp.area().y + buttonPgUp.area().height + ( sp3.height() * ii ) ); | ^~ ../fheroes2/battle/battle_interface.cpp:235:98: warning: conversion to 'int32_t' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 235 | fheroes2::Blit( sp3, display, ax, buttonPgUp.area().y + buttonPgUp.area().height + ( sp3.height() * ii ) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_interface.cpp:237:43: warning: conversion to 'int32_t' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 237 | fheroes2::Blit( sp1, display, ax, buttonPgUp.area().y + buttonPgUp.area().height ); | ^~ ../fheroes2/battle/battle_interface.cpp:238:43: warning: conversion to 'int32_t' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 238 | fheroes2::Blit( sp2, display, ax, buttonPgDn.area().y - sp2.height() ); | ^~ ../fheroes2/battle/battle_interface.cpp: In constructor 'Battle::OpponentSprite::OpponentSprite(const Rect&, const HeroBase*, bool)': ../fheroes2/battle/battle_interface.cpp:570:88: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 570 | const fheroes2::Sprite & sprite = fheroes2::AGG::GetICN( icn, _currentAnim.getFrame() ); | ~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp:573:78: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 573 | pos.x = _offset.x + fheroes2::Display::DEFAULT_WIDTH - HERO_X_OFFSET - ( sprite.x() + sprite.width() ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_interface.cpp:574:49: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 574 | pos.y = _offset.y + RIGHT_HERO_Y_OFFSET + sprite.y(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ../fheroes2/battle/battle_interface.cpp:577:43: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 577 | pos.x = _offset.x + HERO_X_OFFSET + sprite.x(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ../fheroes2/battle/battle_interface.cpp:578:48: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 578 | pos.y = _offset.y + LEFT_HERO_Y_OFFSET + sprite.y(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ../fheroes2/battle/battle_interface.cpp:589:25: warning: conversion from 'int32_t' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 589 | pos.w = sprite.width(); | ~~~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp:590:26: warning: conversion from 'int32_t' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 590 | pos.h = sprite.height(); | ~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp: In member function 'Point Battle::OpponentSprite::GetCastPosition() const': ../fheroes2/battle/battle_interface.cpp:667:25: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 667 | return Point( pos.x + ( reflect ? offset.x : pos.w - offset.x ), pos.y + pos.h / 2 + offset.y ); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_interface.cpp:667:88: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 667 | return Point( pos.x + ( reflect ? offset.x : pos.w - offset.x ), pos.y + pos.h / 2 + offset.y ); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::OpponentSprite::Redraw(fheroes2::Image&) const': ../fheroes2/battle/battle_interface.cpp:672:86: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 672 | const fheroes2::Sprite & hero = fheroes2::AGG::GetICN( icn, _currentAnim.getFrame() ); | ~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp: In constructor 'Battle::Status::Status()': ../fheroes2/battle/battle_interface.cpp:711:26: warning: conversion from 'int32_t' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 711 | Rect::w = back1.width(); | ~~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp:712:30: warning: conversion from 'int32_t' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 712 | Rect::h = back1.height() + back2.height(); | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::Status::SetPosition(s32, s32)': ../fheroes2/battle/battle_interface.cpp:720:15: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 720 | Rect::x = cx; | ^~ ../fheroes2/battle/battle_interface.cpp:721:15: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 721 | Rect::y = cy; | ^~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::ArmiesOrder::RedrawUnit(const Rect&, const Battle::Unit&, bool, bool, fheroes2::Image&) const': ../fheroes2/battle/battle_interface.cpp:821:42: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 821 | Text number( GetString( unit.GetCount() ), Font::SMALL ); | ~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::ArmiesOrder::Redraw(const Battle::Unit*, fheroes2::Image&)': ../fheroes2/battle/battle_interface.cpp:830:56: warning: conversion to 'unsigned int' from 'std::__iterator_traits<__gnu_cxx::__normal_iterator >, void>::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 830 | u32 ox = area.x + ( area.w - ow * std::count_if( orders->begin(), orders->end(), []( const Unit * unit ) { return unit->isValid(); } ) ) / 2; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_interface.cpp:830:23: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 830 | u32 ox = area.x + ( area.w - ow * std::count_if( orders->begin(), orders->end(), []( const Unit * unit ) { return unit->isValid(); } ) ) / 2; | ~~~~~^ ../fheroes2/battle/battle_interface.cpp:831:23: warning: conversion to 'u32' {aka 'unsigned int'} from 's16' {aka 'short int'} may change the sign of the result [-Wsign-conversion] 831 | u32 oy = area.y; | ~~~~~^ ../fheroes2/battle/battle_interface.cpp:833:19: warning: conversion from 'u32' {aka 'unsigned int'} to 's16' {aka 'short int'} may change value [-Wconversion] 833 | Rect::x = ox; | ^~ ../fheroes2/battle/battle_interface.cpp:834:19: warning: conversion from 'u32' {aka 'unsigned int'} to 's16' {aka 'short int'} may change value [-Wconversion] 834 | Rect::y = oy; | ^~ ../fheroes2/battle/battle_interface.cpp:841:54: warning: conversion from 'u32' {aka 'unsigned int'} to 's16' {aka 'short int'} may change value [-Wconversion] 841 | rects.push_back( UnitPos( *it, Rect( ox, oy, ow, ow ) ) ); | ^~ ../fheroes2/battle/battle_interface.cpp:841:58: warning: conversion from 'u32' {aka 'unsigned int'} to 's16' {aka 'short int'} may change value [-Wconversion] 841 | rects.push_back( UnitPos( *it, Rect( ox, oy, ow, ow ) ) ); | ^~ ../fheroes2/battle/battle_interface.cpp: In constructor 'Battle::Interface::Interface(Battle::Arena&, s32)': ../fheroes2/battle/battle_interface.cpp:878:87: warning: conversion from 'int32_t' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 878 | _interfacePosition = Rect( ( display.width() - fheroes2::Display::DEFAULT_WIDTH ) / 2, ( display.height() - fheroes2::Display::DEFAULT_HEIGHT ) / 2, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ ../fheroes2/battle/battle_interface.cpp:878:149: warning: conversion from 'int32_t' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 878 | _interfacePosition = Rect( ( display.width() - fheroes2::Display::DEFAULT_WIDTH ) / 2, ( display.height() - fheroes2::Display::DEFAULT_HEIGHT ) / 2, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ ../fheroes2/battle/battle_interface.cpp:987:36: warning: conversion to 'u32' {aka 'unsigned int'} from 's16' {aka 'short int'} may change the sign of the result [-Wsign-conversion] 987 | listlog->SetPosition( area.x, area.y + area.h - status.h ); | ~~~~~^ ../fheroes2/battle/battle_interface.cpp:987:55: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 987 | listlog->SetPosition( area.x, area.y + area.h - status.h ); | ~~~~~~~~~~~~~~~~^~~~~~~~~~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::Interface::RedrawTroopSprite(const Battle::Unit&)': ../fheroes2/battle/battle_interface.cpp:1245:65: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1245 | spmon1 = fheroes2::AGG::GetICN( msi.icn_file, b.GetFrame() ); | ~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp:1250:65: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1250 | spmon1 = fheroes2::AGG::GetICN( msi.icn_file, b.GetFrame() ); | ~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp:1273:117: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1273 | const fheroes2::Sprite & spmon0 = fheroes2::AGG::GetICN( msi.icn_file, _movingUnit->animation.firstFrame() ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp:1284:69: warning: conversion from 'double' to 'int' may change value [-Wfloat-conversion] 1284 | sp.y += _movingUnit->animation.movementProgress() * cy; | ^~ ../fheroes2/battle/battle_interface.cpp:1294:100: warning: conversion from 'double' to 'int' may change value [-Wfloat-conversion] 1294 | sp.x += cx + ( _movingPos.x - _flyingPos.x ) * _flyingUnit->animation.movementProgress(); | ^ ../fheroes2/battle/battle_interface.cpp:1295:100: warning: conversion from 'double' to 'int' may change value [-Wfloat-conversion] 1295 | sp.y += cy + ( _movingPos.y - _flyingPos.y ) * _flyingUnit->animation.movementProgress(); | ^ ../fheroes2/battle/battle_interface.cpp:1302:80: warning: conversion from 'uint32_t' {aka 'unsigned int'} to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 1302 | fheroes2::AlphaBlit( spmon1, _mainSurface, sp.x, sp.y, b.GetCustomAlpha(), b.isReflect() ); | ~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::Interface::RedrawTroopCount(const Battle::Unit&)': ../fheroes2/battle/battle_interface.cpp:1313:90: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1313 | const fheroes2::Sprite & bar = fheroes2::AGG::GetICN( ICN::TEXTBAR, GetIndexIndicator( unit ) ); | ~~~~~~~~~~~~~~~~~^~~~~~~~ ../fheroes2/battle/battle_interface.cpp:1332:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1332 | Text text( GetStringShort( unit.GetCount() ), Font::SMALL ); | ~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::Interface::RedrawCoverStatic()': ../fheroes2/battle/battle_interface.cpp:1382:27: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1382 | RedrawLowObjects( ii ); | ^~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::Interface::RedrawCastle2(const Castle&, s32)': ../fheroes2/battle/battle_interface.cpp:1455:81: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1455 | const fheroes2::Sprite & sprite = fheroes2::AGG::GetICN( ICN::CATAPULT, catapult_frame ); | ^~~~~~~~~~~~~~ ../fheroes2/battle/battle_interface.cpp: In member function 'int Battle::Interface::GetBattleCursor(std::string&) const': ../fheroes2/battle/battle_interface.cpp:1739:81: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1739 | StringReplace( statusMsg, "%{count}", _currentUnit->GetShots() ); | ~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp:1770:62: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1770 | StringReplace( statusMsg, "%{turn}", arena.GetCurrentTurn() ); | ~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::Interface::HumanTurn(const Battle::Unit&, Battle::Actions&)': ../fheroes2/battle/battle_interface.cpp:1845:40: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1845 | StringReplace( msg, "%{turn}", turn ); | ^~~~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::Interface::HumanBattleTurn(const Battle::Unit&, Battle::Actions&, std::string&)': ../fheroes2/battle/battle_interface.cpp:1913:60: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1913 | a.push_back( Command( MSG_BATTLE_SKIP, b.GetUID(), true ) ); | ~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp:1919:60: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1919 | a.push_back( Command( MSG_BATTLE_SKIP, b.GetUID(), !conf.ExtBattleSoftWait() ) ); | ~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp:2084:32: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 2084 | if ( CursorAttack( themes ) ) { | ^~~~~~ ../fheroes2/battle/battle_interface.cpp:2092:44: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 2092 | MouseLeftClickBoardAction( themes, *cell, a ); | ^~~~~~ ../fheroes2/battle/battle_interface.cpp:2094:45: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 2094 | MousePressRightBoardAction( themes, *cell, a ); | ^~~~~~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::Interface::HumanCastSpellTurn(const Battle::Unit&, Battle::Actions&, std::string&)': ../fheroes2/battle/battle_interface.cpp:2116:58: warning: unused parameter 'b' [-Wunused-parameter] 2116 | void Battle::Interface::HumanCastSpellTurn( const Unit & b, Actions & a, std::string & msg ) | ~~~~~~~~~~~~~^ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::Interface::ButtonWaitAction(Battle::Actions&)': ../fheroes2/battle/battle_interface.cpp:2258:68: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2258 | a.push_back( Command( MSG_BATTLE_SKIP, _currentUnit->GetUID(), false ) ); | ~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::Interface::ButtonSkipAction(Battle::Actions&)': ../fheroes2/battle/battle_interface.cpp:2270:68: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2270 | a.push_back( Command( MSG_BATTLE_SKIP, _currentUnit->GetUID(), true ) ); | ~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp: In member function 'int Battle::Interface::GetAllowSwordDirection(u32)': ../fheroes2/battle/battle_interface.cpp:2280:57: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2280 | const Indexes around = Board::GetAroundIndexes( index ); | ^~~~~ ../fheroes2/battle/battle_interface.cpp:2287:45: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2287 | res |= Board::GetDirection( index, from ); | ^~~~~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::Interface::MousePressRightBoardAction(u32, const Battle::Cell&, Battle::Actions&)': ../fheroes2/battle/battle_interface.cpp:2302:51: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 2302 | const int allow = GetAllowSwordDirection( index ); | ^~~~~ ../fheroes2/battle/battle_interface.cpp:2307:54: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2307 | int res = PocketPC::GetCursorAttackDialog( cell.GetPos(), allow ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_interface.cpp:2316:44: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 2316 | MouseLeftClickBoardAction( res, cell, a ); | ^~~ ../fheroes2/battle/battle_interface.cpp:2295:57: warning: unused parameter 'themes' [-Wunused-parameter] 2295 | void Battle::Interface::MousePressRightBoardAction( u32 themes, const Cell & cell, Actions & a ) | ~~~~^~~~~~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::Interface::MouseLeftClickBoardAction(u32, const Battle::Cell&, Battle::Actions&)': ../fheroes2/battle/battle_interface.cpp:2336:45: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 2336 | themes = GetSwordCursorDirection( Board::GetDirection( index, _currentUnit->GetHeadIndex() ) ); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_interface.cpp:2339:95: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 2339 | int res = PocketPC::GetCursorAttackDialog( cell.GetPos(), GetAllowSwordDirection( index ) ); | ^~~~~ ../fheroes2/battle/battle_interface.cpp:2339:54: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2339 | int res = PocketPC::GetCursorAttackDialog( cell.GetPos(), GetAllowSwordDirection( index ) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_interface.cpp:2348:26: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 2348 | themes = res; | ^~~ ../fheroes2/battle/battle_interface.cpp:2362:72: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2362 | a.push_back( Command( MSG_BATTLE_MOVE, _currentUnit->GetUID(), index ) ); | ~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp:2363:76: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2363 | a.push_back( Command( MSG_BATTLE_END_TURN, _currentUnit->GetUID() ) ); | ~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp:2380:80: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2380 | a.push_back( Command( MSG_BATTLE_MOVE, _currentUnit->GetUID(), move ) ); | ~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp:2381:78: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2381 | a.push_back( Command( MSG_BATTLE_ATTACK, _currentUnit->GetUID(), enemy->GetUID(), index, Board::GetReflectDirection( dir ) ) ); | ~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp:2381:95: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2381 | a.push_back( Command( MSG_BATTLE_ATTACK, _currentUnit->GetUID(), enemy->GetUID(), index, Board::GetReflectDirection( dir ) ) ); | ~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp:2382:80: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2382 | a.push_back( Command( MSG_BATTLE_END_TURN, _currentUnit->GetUID() ) ); | ~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp:2393:78: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2393 | a.push_back( Command( MSG_BATTLE_ATTACK, _currentUnit->GetUID(), enemy->GetUID(), index, 0 ) ); | ~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp:2393:95: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2393 | a.push_back( Command( MSG_BATTLE_ATTACK, _currentUnit->GetUID(), enemy->GetUID(), index, 0 ) ); | ~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp:2394:80: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2394 | a.push_back( Command( MSG_BATTLE_END_TURN, _currentUnit->GetUID() ) ); | ~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::Interface::AnimateUnitWithDelay(Battle::Unit&, uint32_t)': ../fheroes2/battle/battle_interface.cpp:2419:114: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 2419 | const uint32_t frameDelay = ( unit.animation.animationLength() > 0 ) ? delay / unit.animation.animationLength() : 0; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::Interface::RedrawMissileAnimation(const Point&, const Point&, double, uint32_t)': ../fheroes2/battle/battle_interface.cpp:2493:134: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] 2493 | missile = fheroes2::AGG::GetICN( Monster::GetMissileICN( monsterID ), Bin_Info::GetMonsterInfo( monsterID ).getProjectileID( angle ) ); | ^~~~~ ../fheroes2/battle/battle_interface.cpp:2493:64: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2493 | missile = fheroes2::AGG::GetICN( Monster::GetMissileICN( monsterID ), Bin_Info::GetMonsterInfo( monsterID ).getProjectileID( angle ) ); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ ../fheroes2/battle/battle_interface.cpp:2496:70: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 2496 | const Points points = GetEuclideanLine( startPos, endPos, isMage ? 50 : std::max( missile.width(), 25 ) ); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::Interface::RedrawActionAttackPart1(Battle::Unit&, Battle::Unit&, const Battle::TargetsInfo&)': ../fheroes2/battle/battle_interface.cpp:2544:129: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 2544 | const fheroes2::Sprite & attackerSprite = fheroes2::AGG::GetICN( attacker.GetMonsterSprite().icn_file, attacker.GetFrame() ); | ~~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp:2550:40: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 2550 | const Point shooterPos( pos1.x + rearCenterX, attackerPos.y - attackerSprite.y() ); | ~~~~~~~^~~~~~~~~~~~~ ../fheroes2/battle/battle_interface.cpp:2550:69: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 2550 | const Point shooterPos( pos1.x + rearCenterX, attackerPos.y - attackerSprite.y() ); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_interface.cpp:2563:54: warning: conversion to 'size_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 2563 | offset = attacker.GetStartMissileOffset( direction ); | ^~~~~~~~~ ../fheroes2/battle/battle_interface.cpp:2570:56: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 2570 | const Point missileStart = Point( shooterPos.x + ( attacker.isReflect() ? -offset.x : offset.x ), shooterPos.y + offset.y ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_interface.cpp:2573:79: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 2573 | RedrawMissileAnimation( missileStart, targetPos, angle, attacker.GetID() ); | ~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::Interface::RedrawActionAttackPart2(Battle::Unit&, Battle::TargetsInfo&)': ../fheroes2/battle/battle_interface.cpp:2641:46: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2641 | StringReplace( msg, "%{damage}", damage ); | ^~~~~~ ../fheroes2/battle/battle_interface.cpp:2646:49: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2646 | StringReplace( msg, "%{count}", killed ); | ^~~~~~ ../fheroes2/battle/battle_interface.cpp:2651:53: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2651 | StringReplace( msg, "%{damage}", target.damage ); | ~~~~~~~^~~~~~ ../fheroes2/battle/battle_interface.cpp:2656:56: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2656 | StringReplace( msg, "%{count}", target.killed ); | ~~~~~~~^~~~~~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::Interface::RedrawActionFly(Battle::Unit&, const Battle::Position&)': ../fheroes2/battle/battle_interface.cpp:2900:65: warning: conversion from 'uint32_t' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 2900 | const Points points = GetEuclideanLine( destPos, targetPos, step ); | ^~~~ ../fheroes2/battle/battle_interface.cpp:2913:44: warning: conversion from 'double' to 'uint32_t' {aka 'unsigned int'} may change value [-Wfloat-conversion] 2913 | AnimateUnitWithDelay( unit, frameDelay * 0.3 ); | ~~~~~~~~~~~^~~~~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::Interface::RedrawActionSpellCastPart2(const Spell&, Battle::TargetsInfo&)': ../fheroes2/battle/battle_interface.cpp:3167:46: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 3167 | StringReplace( msg, "%{damage}", damage ); | ^~~~~~ ../fheroes2/battle/battle_interface.cpp:3172:49: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 3172 | StringReplace( msg, "%{count}", killed ); | ^~~~~~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::Interface::RedrawActionLuck(Battle::Unit&)': ../fheroes2/battle/battle_interface.cpp:3231:117: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 3231 | const fheroes2::Sprite & unitSprite = fheroes2::AGG::GetICN( unit.GetMonsterSprite().icn_file, unit.GetFrame() ); | ~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp:3276:93: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 3276 | const fheroes2::Sprite & luckSprite = fheroes2::AGG::GetICN( ICN::CLOUDLUK, frameId ); | ^~~~~~~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::Interface::RedrawActionTowerPart2(Battle::TargetInfo&)': ../fheroes2/battle/battle_interface.cpp:3331:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 3331 | StringReplace( msg, "%{damage}", target.damage ); | ~~~~~~~^~~~~~ ../fheroes2/battle/battle_interface.cpp:3335:48: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 3335 | StringReplace( msg, "%{count}", target.killed ); | ~~~~~~~^~~~~~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::Interface::RedrawActionCatapult(int)': ../fheroes2/battle/battle_interface.cpp:3378:69: warning: conversion from 'int32_t' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 3378 | const Points points = GetArcPoints( pt1, pt2, max, missile.width() ); | ~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::Interface::RedrawActionMirrorImageSpell(const Battle::Unit&, const Battle::Position&)': ../fheroes2/battle/battle_interface.cpp:3504:83: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 3504 | fheroes2::Sprite sprite = fheroes2::AGG::GetICN( msi.icn_file, target.GetFrame() ); | ~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::Interface::RedrawLightningOnTargets(const std::vector&, const Rect&)': ../fheroes2/battle/battle_interface.cpp:3634:62: warning: conversion from 'int32_t' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 3634 | Point pt = points[i] - Point( sprite.width() / 2, 0 ) + roiOffset; | ~~~~~~~~~~~~~~~^~~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::Interface::RedrawActionLightningBoltSpell(Battle::Unit&)': ../fheroes2/battle/battle_interface.cpp:3650:31: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 3650 | const Point endPos( pos.x + pos.w / 2, pos.y ); | ~~~~~~^~~~~~~~~~~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::Interface::RedrawActionChainLightningSpell(const Battle::TargetsInfo&)': ../fheroes2/battle/battle_interface.cpp:3667:40: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 3667 | points.push_back( Point( pos.x + pos.w / 2, pos.y ) ); | ~~~~~~^~~~~~~~~~~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::Interface::RedrawActionBloodLustSpell(Battle::Unit&)': ../fheroes2/battle/battle_interface.cpp:3678:87: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 3678 | fheroes2::Sprite unitSprite = fheroes2::AGG::GetICN( msi.icn_file, target.GetFrame() ); | ~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp:3721:62: warning: conversion from 'uint32_t' {aka 'unsigned int'} to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 3721 | fheroes2::AlphaBlit( bloodlustEffect, mixSprite, alpha ); | ^~~~~ ../fheroes2/battle/battle_interface.cpp:3724:37: warning: unsigned conversion from 'int' to 'uint32_t' {aka 'unsigned int'} changes the value of '-20' [-Wsign-conversion] 3724 | alpha += ( frame < 10 ) ? 20 : -20; | ~~~~~~~~~~~~~~~^~~~~~~~~~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::Interface::RedrawActionStoneSpell(Battle::Unit&)': ../fheroes2/battle/battle_interface.cpp:3738:95: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 3738 | const fheroes2::Sprite & unitSprite = fheroes2::AGG::GetICN( msi.icn_file, target.GetFrame() ); | ~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp:3759:58: warning: conversion from 'uint32_t' {aka 'unsigned int'} to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 3759 | fheroes2::AlphaBlit( stoneEffect, mixSprite, alpha ); | ^~~~~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::Interface::RedrawRaySpell(const Battle::Unit&, int, int, uint32_t)': ../fheroes2/battle/battle_interface.cpp:3806:67: warning: conversion from 'uint32_t' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 3806 | const Points path = GetEuclideanLine( startingPos, targetPos, size ); | ^~~~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::Interface::RedrawActionDisruptingRaySpell(Battle::Unit&)': ../fheroes2/battle/battle_interface.cpp:3834:117: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 3834 | const fheroes2::Sprite & unitSprite = fheroes2::AGG::GetICN( target.GetMonsterSprite().icn_file, target.GetFrame() ); | ~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp:3846:70: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 3846 | rippleSprite = fheroes2::CreateRippleEffect( unitSprite, frame ); | ^~~~~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::Interface::RedrawActionHolyShoutSpell(const Battle::TargetsInfo&, int)': ../fheroes2/battle/battle_interface.cpp:3967:23: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 3967 | alpha += ( frame < 10 ) ? 25 : -25; | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::Interface::RedrawActionElementalStormSpell(const Battle::TargetsInfo&)': ../fheroes2/battle/battle_interface.cpp:4009:43: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 4009 | const int idX = frame + x * 3; | ~~^~~ ../fheroes2/battle/battle_interface.cpp:4009:39: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 4009 | const int idX = frame + x * 3; | ~~~~~~^~~~~~~ ../fheroes2/battle/battle_interface.cpp:4012:73: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 4012 | const fheroes2::Sprite & sprite = spriteCache[( idX + y ) % icnCount]; | ~~~~~~^~~~~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::Interface::RedrawActionArmageddonSpell()': ../fheroes2/battle/battle_interface.cpp:4075:48: warning: unsigned conversion from 'int' to 'uint32_t' {aka 'unsigned int'} changes value from '-7' to '4294967289' [-Wsign-conversion] 4075 | const int16_t offsetX = Rand::Get( -7, 7 ); | ^~ ../fheroes2/battle/battle_interface.cpp:4075:46: warning: conversion from 'uint32_t' {aka 'unsigned int'} to 'int16_t' {aka 'short int'} may change value [-Wconversion] 4075 | const int16_t offsetX = Rand::Get( -7, 7 ); | ~~~~~~~~~^~~~~~~~~ ../fheroes2/battle/battle_interface.cpp:4076:48: warning: unsigned conversion from 'int' to 'uint32_t' {aka 'unsigned int'} changes value from '-7' to '4294967289' [-Wsign-conversion] 4076 | const int16_t offsetY = Rand::Get( -7, 7 ); | ^~ ../fheroes2/battle/battle_interface.cpp:4076:46: warning: conversion from 'uint32_t' {aka 'unsigned int'} to 'int16_t' {aka 'short int'} may change value [-Wconversion] 4076 | const int16_t offsetY = Rand::Get( -7, 7 ); | ~~~~~~~~~^~~~~~~~~ ../fheroes2/battle/battle_interface.cpp:4084:28: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 4084 | original.x += offset; | ~~~~~~~~~~~^~~~~~~~~ ../fheroes2/battle/battle_interface.cpp:4091:28: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 4091 | original.y += offset; | ~~~~~~~~~~~^~~~~~~~~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::Interface::RedrawActionEarthQuakeSpell(const std::vector&)': ../fheroes2/battle/battle_interface.cpp:4126:48: warning: unsigned conversion from 'int' to 'uint32_t' {aka 'unsigned int'} changes value from '-7' to '4294967289' [-Wsign-conversion] 4126 | const int16_t offsetX = Rand::Get( -7, 7 ); | ^~ ../fheroes2/battle/battle_interface.cpp:4126:46: warning: conversion from 'uint32_t' {aka 'unsigned int'} to 'int16_t' {aka 'short int'} may change value [-Wconversion] 4126 | const int16_t offsetX = Rand::Get( -7, 7 ); | ~~~~~~~~~^~~~~~~~~ ../fheroes2/battle/battle_interface.cpp:4127:48: warning: unsigned conversion from 'int' to 'uint32_t' {aka 'unsigned int'} changes value from '-7' to '4294967289' [-Wsign-conversion] 4127 | const int16_t offsetY = Rand::Get( -7, 7 ); | ^~ ../fheroes2/battle/battle_interface.cpp:4127:46: warning: conversion from 'uint32_t' {aka 'unsigned int'} to 'int16_t' {aka 'short int'} may change value [-Wconversion] 4127 | const int16_t offsetY = Rand::Get( -7, 7 ); | ~~~~~~~~~^~~~~~~~~ ../fheroes2/battle/battle_interface.cpp: In function 'fheroes2::Point CalculateSpellPosition(const Battle::Unit&, int, const fheroes2::Sprite&)': ../fheroes2/battle/battle_interface.cpp:4237:117: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 4237 | const fheroes2::Sprite & unitSprite = fheroes2::AGG::GetICN( target.GetMonsterSprite().icn_file, target.GetFrame() ); | ~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::Interface::ProcessingHeroDialogResult(int, Battle::Actions&)': ../fheroes2/battle/battle_interface.cpp:4509:80: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 4509 | a.push_back( Command( MSG_BATTLE_END_TURN, _currentUnit->GetUID() ) ); | ~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp:4523:74: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 4523 | const s32 cost = arena.GetCurrentForce().GetSurrenderCost(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp:4526:68: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 4526 | if ( !kingdom.AllowPayment( Funds( Resource::GOLD, cost ) ) ) | ^~~~ ../fheroes2/battle/battle_interface.cpp:4528:58: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 4528 | else if ( DialogBattleSurrender( *enemy, cost, kingdom ) ) { | ^~~~ ../fheroes2/battle/battle_interface.cpp:4530:84: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 4530 | a.push_back( Command( MSG_BATTLE_END_TURN, _currentUnit->GetUID() ) ); | ~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/battle/battle_interface.cpp: In member function 'void Battle::PopupDamageInfo::Redraw(int, int)': ../fheroes2/battle/battle_interface.cpp:4592:39: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 4592 | StringReplace( str, "%{min}", tmp1 ); | ^~~~ ../fheroes2/battle/battle_interface.cpp:4593:39: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 4593 | StringReplace( str, "%{max}", tmp2 ); | ^~~~ ../fheroes2/battle/battle_interface.cpp:4607:39: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 4607 | StringReplace( str, "%{min}", tmp1 ); | ^~~~ ../fheroes2/battle/battle_interface.cpp:4608:39: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 4608 | StringReplace( str, "%{max}", tmp2 ); | ^~~~ ../fheroes2/battle/battle_interface.cpp:4628:34: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 4628 | SetPosition( tx, ty, tw, th ); | ^~ ../fheroes2/battle/battle_interface.cpp:4628:38: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 4628 | SetPosition( tx, ty, tw, th ); | ^~ ../fheroes2/battle/battle_interface.cpp:4579:53: warning: unused parameter 'maxh' [-Wunused-parameter] 4579 | void Battle::PopupDamageInfo::Redraw( int maxw, int maxh ) | ~~~~^~~~ ../fheroes2/battle/battle_interface.cpp: In member function 'bool Battle::Interface::NetworkTurn(Battle::Result&)': ../fheroes2/battle/battle_interface.cpp:4638:47: warning: unused parameter 'result' [-Wunused-parameter] 4638 | bool Battle::Interface::NetworkTurn( Result & result ) | ~~~~~~~~~^~~~~~ In file included from ../fheroes2/battle/battle_interface.cpp:39: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = std::__cxx11::basic_string]': ../fheroes2/battle/battle_interface.cpp:1103:25: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector, std::allocator > >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ In file included from ../fheroes2/battle/battle_pathfinding.h:24, from ../fheroes2/battle/battle_arena.h:31, from ../fheroes2/battle/battle_interface.cpp:26: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: castle.o ../fheroes2/castle/castle.cpp: In constructor 'Castle::Castle(s32, s32, int)': ../fheroes2/castle/castle.cpp:57:27: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 57 | : MapPosition( Point( cx, cy ) ) | ^~ ../fheroes2/castle/castle.cpp:57:31: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 57 | : MapPosition( Point( cx, cy ) ) | ^~ ../fheroes2/castle/castle.cpp: In member function 'void Castle::LoadFromMP2(StreamBuf)': ../fheroes2/castle/castle.cpp:212:46: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 212 | u32 kingdom_race = Players::GetPlayerRace( GetColor() ); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ ../fheroes2/castle/castle.cpp:233:103: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 233 | race = ( Color::NONE != GetColor() && ( Race::ALL & kingdom_race ) ? kingdom_race : Race::Rand() ); | ~~~~~~~~~~^~ ../fheroes2/castle/castle.cpp:233:76: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] 233 | race = ( Color::NONE != GetColor() && ( Race::ALL & kingdom_race ) ? kingdom_race : Race::Rand() ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/castle/castle.cpp: In member function 'u32 Castle::CountBuildings() const': ../fheroes2/castle/castle.cpp:359:87: warning: enumerated and non-enumerated type in conditional expression [-Wextra] 359 | const u32 tavern = ( race == Race::NECR ? ( Settings::Get().PriceLoyaltyVersion() ? BUILD_SHRINE : 0 ) : BUILD_TAVERN ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../fheroes2/castle/castle.cpp:361:21: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 361 | return CountBits( building | ~~~~~~~~~^~~~~~~~~~ 362 | & ( BUILD_THIEVESGUILD | tavern | BUILD_SHIPYARD | BUILD_WELL | BUILD_STATUE | BUILD_LEFTTURRET | BUILD_RIGHTTURRET | BUILD_MARKETPLACE | BUILD_WEL2 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 363 | | BUILD_MOAT | BUILD_SPEC | BUILD_CAPTAIN | BUILD_CASTLE | BUILD_MAGEGUILD1 | DWELLING_MONSTER1 | DWELLING_MONSTER2 | DWELLING_MONSTER3 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 364 | | DWELLING_MONSTER4 | DWELLING_MONSTER5 | DWELLING_MONSTER6 ) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/castle/castle.cpp: In member function 'int Castle::getBuildingValue() const': ../fheroes2/castle/castle.cpp:402:31: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 402 | int value = CountBuildings(); | ~~~~~~~~~~~~~~^~ ../fheroes2/castle/castle.cpp: In member function 'double Castle::getVisitValue(const Heroes&) const': ../fheroes2/castle/castle.cpp:448:69: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 448 | uint32_t couldRecruit = potentialFunds.getLowestQuotient( monster.GetCost() ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ../fheroes2/castle/castle.cpp: In member function 'void Castle::ActionNewWeek()': ../fheroes2/castle/castle.cpp:520:96: warning: conversion from 'double' to 'u32' {aka 'unsigned int'} may change value [-Wfloat-conversion] 520 | growth *= Difficulty::GetUnitGrowthBonus( Settings::Get().GameDifficulty() ); | ^ ../fheroes2/castle/castle.cpp: In member function 'uint32_t Castle::getRecruitLimit(const Monster&, const Funds&) const': ../fheroes2/castle/castle.cpp:1099:52: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1099 | uint32_t willRecruit = budget.getLowestQuotient( monster.GetCost() ); | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ../fheroes2/castle/castle.cpp: In member function 'bool Castle::BuyBuilding(u32)': ../fheroes2/castle/castle.cpp:1540:58: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1540 | Maps::ClearFog( GetIndex(), Game::GetViewDistance( Game::VIEW_CASTLE ), GetColor() ); | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ../fheroes2/castle/castle.cpp: In member function 'void Castle::DrawImageCastle(const Point&) const': ../fheroes2/castle/castle.cpp:1634:23: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1634 | dst_pt.x = pt.x + ii * 32 + sprite.x(); | ~~~^ ../fheroes2/castle/castle.cpp:1634:45: warning: conversion to 'u32' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 1634 | dst_pt.x = pt.x + ii * 32 + sprite.x(); | ~~~~~~~~^~ ../fheroes2/castle/castle.cpp:1634:35: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1634 | dst_pt.x = pt.x + ii * 32 + sprite.x(); | ~~~~~~~~~~~~~~~^~~~~~~~~~~~ ../fheroes2/castle/castle.cpp:1641:23: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1641 | dst_pt.x = pt.x + ii * 32 + sprite.x(); | ~~~^ ../fheroes2/castle/castle.cpp:1641:45: warning: conversion to 'u32' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 1641 | dst_pt.x = pt.x + ii * 32 + sprite.x(); | ~~~~~~~~^~ ../fheroes2/castle/castle.cpp:1641:35: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1641 | dst_pt.x = pt.x + ii * 32 + sprite.x(); | ~~~~~~~~~~~~~~~^~~~~~~~~~~~ ../fheroes2/castle/castle.cpp:1677:23: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1677 | dst_pt.x = pt.x + ii * 32 + sprite.x(); | ~~~^ ../fheroes2/castle/castle.cpp:1677:45: warning: conversion to 'u32' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 1677 | dst_pt.x = pt.x + ii * 32 + sprite.x(); | ~~~~~~~~^~ ../fheroes2/castle/castle.cpp:1677:35: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1677 | dst_pt.x = pt.x + ii * 32 + sprite.x(); | ~~~~~~~~~~~~~~~^~~~~~~~~~~~ ../fheroes2/castle/castle.cpp:1683:23: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1683 | dst_pt.x = pt.x + ii * 32 + sprite.x(); | ~~~^ ../fheroes2/castle/castle.cpp:1683:45: warning: conversion to 'u32' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 1683 | dst_pt.x = pt.x + ii * 32 + sprite.x(); | ~~~~~~~~^~ ../fheroes2/castle/castle.cpp:1683:35: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1683 | dst_pt.x = pt.x + ii * 32 + sprite.x(); | ~~~~~~~~~~~~~~~^~~~~~~~~~~~ ../fheroes2/castle/castle.cpp:1689:23: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1689 | dst_pt.x = pt.x + ii * 32 + sprite.x(); | ~~~^ ../fheroes2/castle/castle.cpp:1689:45: warning: conversion to 'u32' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 1689 | dst_pt.x = pt.x + ii * 32 + sprite.x(); | ~~~~~~~~^~ ../fheroes2/castle/castle.cpp:1689:35: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1689 | dst_pt.x = pt.x + ii * 32 + sprite.x(); | ~~~~~~~~~~~~~~~^~~~~~~~~~~~ ../fheroes2/castle/castle.cpp: In member function 'void Castle::Scoute() const': ../fheroes2/castle/castle.cpp:2508:54: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2508 | Maps::ClearFog( GetIndex(), Game::GetViewDistance( isCastle() ? Game::VIEW_CASTLE : Game::VIEW_TOWN ), GetColor() ); | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/castle/castle.cpp: In member function 'void Castle::SwapCastleHeroes(CastleHeroes&)': ../fheroes2/castle/castle.cpp:2723:32: warning: conversion to 'u32' {aka 'unsigned int'} from 's16' {aka 'short int'} may change the sign of the result [-Wsign-conversion] 2723 | world.GetTiles( center.x, center.y ).SetHeroes( NULL ); | ~~~~~~~^ ../fheroes2/castle/castle.cpp:2723:42: warning: conversion to 'u32' {aka 'unsigned int'} from 's16' {aka 'short int'} may change the sign of the result [-Wsign-conversion] 2723 | world.GetTiles( center.x, center.y ).SetHeroes( NULL ); | ~~~~~~~^ ../fheroes2/castle/castle.cpp:2735:32: warning: conversion to 'u32' {aka 'unsigned int'} from 's16' {aka 'short int'} may change the sign of the result [-Wsign-conversion] 2735 | world.GetTiles( center.x, center.y ).SetHeroes( heroes.Guest() ); | ~~~~~~~^ ../fheroes2/castle/castle.cpp:2735:42: warning: conversion to 'u32' {aka 'unsigned int'} from 's16' {aka 'short int'} may change the sign of the result [-Wsign-conversion] 2735 | world.GetTiles( center.x, center.y ).SetHeroes( heroes.Guest() ); | ~~~~~~~^ ../fheroes2/castle/castle.cpp:2743:32: warning: conversion to 'u32' {aka 'unsigned int'} from 's16' {aka 'short int'} may change the sign of the result [-Wsign-conversion] 2743 | world.GetTiles( center.x, center.y ).SetHeroes( NULL ); | ~~~~~~~^ ../fheroes2/castle/castle.cpp:2743:42: warning: conversion to 'u32' {aka 'unsigned int'} from 's16' {aka 'short int'} may change the sign of the result [-Wsign-conversion] 2743 | world.GetTiles( center.x, center.y ).SetHeroes( NULL ); | ~~~~~~~^ ../fheroes2/castle/castle.cpp:2759:32: warning: conversion to 'u32' {aka 'unsigned int'} from 's16' {aka 'short int'} may change the sign of the result [-Wsign-conversion] 2759 | world.GetTiles( center.x, center.y ).SetHeroes( heroes.Guest() ); | ~~~~~~~^ ../fheroes2/castle/castle.cpp:2759:42: warning: conversion to 'u32' {aka 'unsigned int'} from 's16' {aka 'short int'} may change the sign of the result [-Wsign-conversion] 2759 | world.GetTiles( center.x, center.y ).SetHeroes( heroes.Guest() ); | ~~~~~~~^ ../fheroes2/castle/castle.cpp: In member function 'std::string Castle::GetDescriptionBuilding(u32) const': ../fheroes2/castle/castle.cpp:2774:53: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2774 | StringReplace( res, "%{count}", GetGrownWell() ); | ~~~~~~~~~~~~^~ ../fheroes2/castle/castle.cpp:2778:53: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2778 | StringReplace( res, "%{count}", GetGrownWel2() ); | ~~~~~~~~~~~~^~ In file included from ../fheroes2/battle/battle_pathfinding.h:24, from ../fheroes2/battle/battle_arena.h:31, from ../fheroes2/battle/battle_troop.h:31, from ../fheroes2/battle/battle_tower.h:26, from ../fheroes2/castle/castle.cpp:28: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: dialog_adventure.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: castle_well.o ../fheroes2/castle/castle_well.cpp: In member function 'void Castle::OpenWell()': ../fheroes2/castle/castle_well.cpp:151:44: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 151 | str.append( GetString( can_recruit ) ); | ^~~~~~~~~~~ ../fheroes2/castle/castle_well.cpp: In member function 'void Castle::WellRedrawInfoArea(const Point&, const std::vector&)': ../fheroes2/castle/castle_well.cpp:303:81: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 303 | str = std::string( _( "Attack" ) ) + ": " + GetString( monster.GetAttack() ); | ~~~~~~~~~~~~~~~~~^~ ../fheroes2/castle/castle_well.cpp:309:83: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 309 | str = std::string( _( "Defense" ) ) + ": " + GetString( monster.GetDefense() ); | ~~~~~~~~~~~~~~~~~~^~ ../fheroes2/castle/castle_well.cpp:315:84: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 315 | str = std::string( _( "Damage" ) ) + ": " + GetString( monster.GetDamageMin() ) + "-" + GetString( monster.GetDamageMax() ); | ~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/castle/castle_well.cpp:315:128: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 315 | str = std::string( _( "Damage" ) ) + ": " + GetString( monster.GetDamageMin() ) + "-" + GetString( monster.GetDamageMax() ); | ~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/castle/castle_well.cpp:321:80: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 321 | str = std::string( _( "HP" ) ) + ": " + GetString( monster.GetHitPoints() ); | ~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/castle/castle_well.cpp:332:50: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 332 | text.Set( Speed::String( monster.GetSpeed() ) ); | ~~~~~~~~~~~~~~~~^~ ../fheroes2/castle/castle_well.cpp:347:52: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 347 | str = std::string( "+ " ) + GetString( grown ) + " / " + _( "week" ); | ^~~~~ ../fheroes2/castle/castle_well.cpp:358:34: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 358 | text.Set( GetString( available ), Font::YELLOW_BIG ); | ^~~~~~~~~ ../fheroes2/castle/castle_well.cpp:367:140: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 367 | const fheroes2::Sprite & smonster = fheroes2::AGG::GetICN( monsterAnimInfo[monsterId].icnFile(), monsterAnimInfo[monsterId].frameId() ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/castle/castle_well.cpp:35: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: castle_tavern.o In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/castle/castle_tavern.cpp:35: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: mageguild.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: dialog_arena.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: castle_mageguild.o ../fheroes2/castle/castle_mageguild.cpp: In constructor 'RowSpells::RowSpells(const Point&, const Castle&, int)': ../fheroes2/castle/castle_mageguild.cpp:63:37: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | coords.push_back( Rect( pos.x + coords.size() * 110 - roll.width() / 2, pos.y, roll.width(), roll.height() ) ); | ~~~~^ ../fheroes2/castle/castle_mageguild.cpp:63:76: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 63 | coords.push_back( Rect( pos.x + coords.size() * 110 - roll.width() / 2, pos.y, roll.width(), roll.height() ) ); | ~~~~~~~~~~~~~^~~ ../fheroes2/castle/castle_mageguild.cpp:63:61: warning: conversion from 'std::vector::size_type' {aka 'unsigned int'} to 's16' {aka 'short int'} may change value [-Wconversion] 63 | coords.push_back( Rect( pos.x + coords.size() * 110 - roll.width() / 2, pos.y, roll.width(), roll.height() ) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../fheroes2/castle/castle_mageguild.cpp:63:98: warning: conversion from 'int32_t' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 63 | coords.push_back( Rect( pos.x + coords.size() * 110 - roll.width() / 2, pos.y, roll.width(), roll.height() ) ); | ~~~~~~~~~~^~ ../fheroes2/castle/castle_mageguild.cpp:63:113: warning: conversion from 'int32_t' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 63 | coords.push_back( Rect( pos.x + coords.size() * 110 - roll.width() / 2, pos.y, roll.width(), roll.height() ) ); | ~~~~~~~~~~~^~ ../fheroes2/castle/castle_mageguild.cpp:67:41: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 67 | coords.push_back( Rect( pos.x + coords.size() * 110 - roll_show.width() / 2, pos.y, roll_show.width(), roll_show.height() ) ); | ~~~~^ ../fheroes2/castle/castle_mageguild.cpp:67:85: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 67 | coords.push_back( Rect( pos.x + coords.size() * 110 - roll_show.width() / 2, pos.y, roll_show.width(), roll_show.height() ) ); | ~~~~~~~~~~~~~~~~~~^~~ ../fheroes2/castle/castle_mageguild.cpp:67:65: warning: conversion from 'std::vector::size_type' {aka 'unsigned int'} to 's16' {aka 'short int'} may change value [-Wconversion] 67 | coords.push_back( Rect( pos.x + coords.size() * 110 - roll_show.width() / 2, pos.y, roll_show.width(), roll_show.height() ) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/castle/castle_mageguild.cpp:67:112: warning: conversion from 'int32_t' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 67 | coords.push_back( Rect( pos.x + coords.size() * 110 - roll_show.width() / 2, pos.y, roll_show.width(), roll_show.height() ) ); | ~~~~~~~~~~~~~~~^~ ../fheroes2/castle/castle_mageguild.cpp:67:132: warning: conversion from 'int32_t' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 67 | coords.push_back( Rect( pos.x + coords.size() * 110 - roll_show.width() / 2, pos.y, roll_show.width(), roll_show.height() ) ); | ~~~~~~~~~~~~~~~~^~ ../fheroes2/castle/castle_mageguild.cpp:69:41: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 69 | coords.push_back( Rect( pos.x + coords.size() * 110 - roll_hide.width() / 2, pos.y, roll_hide.width(), roll_hide.height() ) ); | ~~~~^ ../fheroes2/castle/castle_mageguild.cpp:69:85: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 69 | coords.push_back( Rect( pos.x + coords.size() * 110 - roll_hide.width() / 2, pos.y, roll_hide.width(), roll_hide.height() ) ); | ~~~~~~~~~~~~~~~~~~^~~ ../fheroes2/castle/castle_mageguild.cpp:69:65: warning: conversion from 'std::vector::size_type' {aka 'unsigned int'} to 's16' {aka 'short int'} may change value [-Wconversion] 69 | coords.push_back( Rect( pos.x + coords.size() * 110 - roll_hide.width() / 2, pos.y, roll_hide.width(), roll_hide.height() ) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/castle/castle_mageguild.cpp:69:112: warning: conversion from 'int32_t' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 69 | coords.push_back( Rect( pos.x + coords.size() * 110 - roll_hide.width() / 2, pos.y, roll_hide.width(), roll_hide.height() ) ); | ~~~~~~~~~~~~~~~^~ ../fheroes2/castle/castle_mageguild.cpp:69:132: warning: conversion from 'int32_t' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 69 | coords.push_back( Rect( pos.x + coords.size() * 110 - roll_hide.width() / 2, pos.y, roll_hide.width(), roll_hide.height() ) ); | ~~~~~~~~~~~~~~~~^~ ../fheroes2/castle/castle_mageguild.cpp: In member function 'void RowSpells::Redraw()': ../fheroes2/castle/castle_mageguild.cpp:85:51: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'std::__iterator_traits<__gnu_cxx::__normal_iterator >, void>::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 85 | const Spell & spell = spells[std::distance( coords.begin(), it )]; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/castle/castle_mageguild.cpp:99:94: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 99 | TextBox text( std::string( spell.GetName() ) + " [" + GetString( spell.SpellPoint( NULL ) ) + "]", Font::SMALL, 78 ); | ~~~~~~~~~~~~~~~~^~~~~~~~ ../fheroes2/castle/castle_mageguild.cpp: In member function 'bool RowSpells::QueueEventProcessing()': ../fheroes2/castle/castle_mageguild.cpp:114:38: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 114 | const Spell & spell = spells[index]; | ^~~~~ ../fheroes2/castle/castle_mageguild.cpp: In member function 'void Castle::OpenMageGuild(const CastleHeroes&)': ../fheroes2/castle/castle_mageguild.cpp:174:73: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 174 | const fheroes2::Sprite & sprite = fheroes2::AGG::GetICN( icn, level - 1 ); | ~~~~~~^~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: dialog_buyboat.o In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/dialog/dialog_buyboat.cpp:35: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: dialog_chest.o ../fheroes2/dialog/dialog_chest.cpp: In function 'bool Dialog::SelectGoldOrExp(const string&, const string&, u32, u32, const Heroes&)': ../fheroes2/dialog/dialog_chest.cpp:49:26: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 49 | text.Set( GetString( gold ) + " " + "(" + "total: " + GetString( world.GetKingdom( hero.GetColor() ).GetFunds().Get( Resource::GOLD ) ) + ")", Font::SMALL ); | ^~~~ ../fheroes2/dialog/dialog_chest.cpp:84:26: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 84 | text.Set( GetString( expr ) + " " + "(" + "need: " + GetString( Heroes::GetExperienceFromLevel( hero.GetLevel() ) - hero.GetExperience() ) + ")", Font::SMALL ); | ^~~~ ../fheroes2/dialog/dialog_chest.cpp:84:119: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 84 | text.Set( GetString( expr ) + " " + "(" + "need: " + GetString( Heroes::GetExperienceFromLevel( hero.GetLevel() ) - hero.GetExperience() ) + ")", Font::SMALL ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/dialog/dialog_chest.cpp:29: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: dialog_armyinfo.o ../fheroes2/dialog/dialog_armyinfo.cpp: In function 'void DrawMonsterStats(const Point&, const Troop&)': ../fheroes2/dialog/dialog_armyinfo.cpp:272:50: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 272 | text.Set( GetString( troop().GetDamageMin() ) + "-" + GetString( troop().GetDamageMax() ) ); | ~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/dialog/dialog_armyinfo.cpp:272:94: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 272 | text.Set( GetString( troop().GetDamageMin() ) + "-" + GetString( troop().GetDamageMax() ) ); | ~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/dialog/dialog_armyinfo.cpp:274:50: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 274 | text.Set( GetString( troop().GetDamageMin() ) ); | ~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/dialog/dialog_armyinfo.cpp:284:46: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 284 | text.Set( GetString( troop().GetHitPoints() ) ); | ~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/dialog/dialog_armyinfo.cpp:294:52: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 294 | text.Set( GetString( troop.GetHitPointsLeft() ) ); | ~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/dialog/dialog_armyinfo.cpp: In function 'void DrawBattleStats(const Point&, const Troop&)': ../fheroes2/dialog/dialog_armyinfo.cpp:408:34: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 408 | text.Set( GetString( duration ), Font::SMALL ); | ^~~~~~~~ ../fheroes2/dialog/dialog_armyinfo.cpp: In function 'void DrawMonsterInfo(const Point&, const Troop&)': ../fheroes2/dialog/dialog_armyinfo.cpp:424:40: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 424 | text.Set( GetString( troop.GetCount() ), Font::BIG ); | ~~~~~~~~~~~~~~^~ ../fheroes2/dialog/dialog_armyinfo.cpp: In function 'void DrawMonster(RandomMonsterAnimation&, const Troop&, const Point&, bool, bool, const Rect&)': ../fheroes2/dialog/dialog_armyinfo.cpp:433:121: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 433 | const fheroes2::Sprite & monsterSprite = fheroes2::AGG::GetICN( monsterAnimation.icnFile(), monsterAnimation.frameId() ); | ~~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/dialog/dialog_armyinfo.cpp: In function 'int Dialog::ArmyJoinWithCost(const Troop&, u32, u32, Heroes&)': ../fheroes2/dialog/dialog_armyinfo.cpp:569:41: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 569 | StringReplace( message, "%{offer}", join ); | ^~~~ ../fheroes2/dialog/dialog_armyinfo.cpp:570:55: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 570 | StringReplace( message, "%{total}", troop.GetCount() ); | ~~~~~~~~~~~~~~^~ ../fheroes2/dialog/dialog_armyinfo.cpp:572:40: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 572 | StringReplace( message, "%{gold}", gold ); | ^~~~ ../fheroes2/dialog/dialog_armyinfo.cpp:581:72: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 581 | StringReplace( message, "%{percent}", troop.GetMonster().GetCost().gold * join * 100 / gold ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~ ../fheroes2/dialog/dialog_armyinfo.cpp:581:90: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 581 | StringReplace( message, "%{percent}", troop.GetMonster().GetCost().gold * join * 100 / gold ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~ ../fheroes2/dialog/dialog_armyinfo.cpp:596:36: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 596 | TextSprite tsTotal( GetString( gold ) + " " + "(" + "total: " + GetString( world.GetKingdom( hero.GetColor() ).GetFunds().Get( Resource::GOLD ) ) + ")", Font::SMALL, | ^~~~ ../fheroes2/dialog/dialog_armyinfo.cpp:649:73: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 649 | StringReplace( msg, "%{gold}", gold - kingdom.GetFunds().Get( Resource::GOLD ) ); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../fheroes2/dialog/dialog_armyinfo.cpp:649:49: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 649 | StringReplace( msg, "%{gold}", gold - kingdom.GetFunds().Get( Resource::GOLD ) ); | ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/dialog/dialog_armyinfo.cpp:690:41: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 690 | tsTotal.SetText( GetString( gold ) + " " + "(" + "total: " + GetString( world.GetKingdom( hero.GetColor() ).GetFunds().Get( Resource::GOLD ) ) + ")" ); | ^~~~ ../fheroes2/dialog/dialog_armyinfo.cpp:701:77: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 701 | StringReplace( msg, "%{gold}", gold - kingdom.GetFunds().Get( Resource::GOLD ) ); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../fheroes2/dialog/dialog_armyinfo.cpp:701:53: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 701 | StringReplace( msg, "%{gold}", gold - kingdom.GetFunds().Get( Resource::GOLD ) ); | ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/dialog/dialog_armyinfo.cpp:39: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: dialog_file.o In file included from ../fheroes2/gui/interface_icons.h:27, from ../fheroes2/game/game_interface.h:31, from ../fheroes2/dialog/dialog_file.cpp:27: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Castle*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Heroes*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: dialog_frameborder.o ../fheroes2/dialog/dialog_frameborder.cpp: In member function 'void Dialog::FrameBorder::SetPosition(s32, s32, u32, u32)': ../fheroes2/dialog/dialog_frameborder.cpp:89:14: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 89 | rect.x = posx; | ^~~~ ../fheroes2/dialog/dialog_frameborder.cpp:90:14: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 90 | rect.y = posy; | ^~~~ ../fheroes2/dialog/dialog_frameborder.cpp:93:27: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 93 | rect.w = encw + 2 * border; | ~~^~~~~~~~ ../fheroes2/dialog/dialog_frameborder.cpp:93:23: warning: conversion from 'u32' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 93 | rect.w = encw + 2 * border; | ~~~~~^~~~~~~~~~~~ ../fheroes2/dialog/dialog_frameborder.cpp:94:27: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 94 | rect.h = ench + 2 * border; | ~~^~~~~~~~ ../fheroes2/dialog/dialog_frameborder.cpp:94:23: warning: conversion from 'u32' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 94 | rect.h = ench + 2 * border; | ~~~~~^~~~~~~~~~~~ ../fheroes2/dialog/dialog_frameborder.cpp:98:18: warning: conversion from 'u32' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 98 | area.w = encw; | ^~~~ ../fheroes2/dialog/dialog_frameborder.cpp:99:18: warning: conversion from 'u32' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 99 | area.h = ench; | ^~~~ ../fheroes2/dialog/dialog_frameborder.cpp:104:19: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 104 | area.x = posx + border; | ~~~~~^~~~~~~~ ../fheroes2/dialog/dialog_frameborder.cpp:105:19: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 105 | area.y = posy + border; | ~~~~~^~~~~~~~ ../fheroes2/dialog/dialog_frameborder.cpp:107:17: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 107 | top = Rect( posx, posy, area.w, border ); | ^~~~ ../fheroes2/dialog/dialog_frameborder.cpp:107:23: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 107 | top = Rect( posx, posy, area.w, border ); | ^~~~ ../fheroes2/dialog/dialog_frameborder.cpp:107:37: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 107 | top = Rect( posx, posy, area.w, border ); | ^~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: dialog_box.o ../fheroes2/dialog/dialog_box.cpp: In constructor 'Dialog::NonFixedFrameBox::NonFixedFrameBox(int, int, bool)': ../fheroes2/dialog/dialog_box.cpp:126:28: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 126 | BoxRedraw( posx, posy, count_middle, height_middle ); | ^~~~~~~~~~~~ ../fheroes2/dialog/dialog_box.cpp: At global scope: ../fheroes2/dialog/dialog_box.cpp:49:13: warning: 'int32_t {anonymous}::middleHeight(bool)' defined but not used [-Wunused-function] 49 | int32_t middleHeight( const bool isEvilInterface ) | ^~~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: dialog_message.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: dialog_gameinfo.o ../fheroes2/dialog/dialog_gameinfo.cpp: In function 'void Dialog::GameInfo()': ../fheroes2/dialog/dialog_gameinfo.cpp:47:49: warning: conversion from 'int32_t' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 47 | Point pt( ( display.width() - box.width() ) / 2, ( display.height() - box.height() ) / 2 ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ ../fheroes2/dialog/dialog_gameinfo.cpp:47:90: warning: conversion from 'int32_t' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 47 | Point pt( ( display.width() - box.width() ) / 2, ( display.height() - box.height() ) / 2 ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ ../fheroes2/dialog/dialog_gameinfo.cpp:74:41: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 74 | text.Set( GetString( Game::GetRating() ) + " %", Font::SMALL, 80 ); | ~~~~~~~~~~~~~~~^~ ../fheroes2/dialog/dialog_gameinfo.cpp:106:61: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 106 | text.Set( "score: " + GetString( Game::GetGameOverScores() ), Font::YELLOW_SMALL, 80 ); | ~~~~~~~~~~~~~~~~~~~~~~~^~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: dialog_levelup.o ../fheroes2/dialog/dialog_levelup.cpp: In function 'int DialogOneSecondary(const string&, const string&, const Skill::Secondary&)': ../fheroes2/dialog/dialog_levelup.cpp:60:102: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 60 | const fheroes2::Sprite & sprite_skill = fheroes2::AGG::GetICN( ICN::SECSKILL, sec.GetIndexSprite1() ); | ~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/dialog/dialog_levelup.cpp: In function 'int DialogSelectSecondary(const string&, const string&, const Skill::Secondary&, const Skill::Secondary&, Heroes&)': ../fheroes2/dialog/dialog_levelup.cpp:91:104: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 91 | const fheroes2::Sprite & sprite_skill1 = fheroes2::AGG::GetICN( ICN::SECSKILL, sec1.GetIndexSprite1() ); | ~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/dialog/dialog_levelup.cpp:92:104: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 92 | const fheroes2::Sprite & sprite_skill2 = fheroes2::AGG::GetICN( ICN::SECSKILL, sec2.GetIndexSprite1() ); | ~~~~~~~~~~~~~~~~~~~~^~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: dialog_marketplace.o ../fheroes2/dialog/dialog_marketplace.cpp: In member function 'void TradeWindowGUI::ShowTradeArea(int, int, u32, u32, u32, u32, bool)': ../fheroes2/dialog/dialog_marketplace.cpp:124:62: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 124 | splitter.SetRange( 0, ( Resource::GOLD == resourceTo ? max_sell : max_buy ) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/dialog/dialog_marketplace.cpp:129:49: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 129 | StringReplace( message, "%{count}", exchange_rate ); | ^~~~~~~~~~~~~ ../fheroes2/dialog/dialog_marketplace.cpp:136:49: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 136 | StringReplace( message, "%{count}", exchange_rate ); | ^~~~~~~~~~~~~ ../fheroes2/dialog/dialog_marketplace.cpp:175:126: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 175 | RedrawInfoBuySell( count_sell, count_buy, max_sell, world.GetKingdom( Settings::Get().CurrentColor() ).GetFunds().Get( resourceTo ) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ ../fheroes2/dialog/dialog_marketplace.cpp: In member function 'void TradeWindowGUI::RedrawInfoBuySell(u32, u32, u32, u32)': ../fheroes2/dialog/dialog_marketplace.cpp:190:55: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 190 | textSell.SetText( std::string( "-" ) + GetString( count_sell ) + " " + "(" + GetString( max_sell - count_sell ) + ")" ); | ^~~~~~~~~~ ../fheroes2/dialog/dialog_marketplace.cpp:190:102: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 190 | textSell.SetText( std::string( "-" ) + GetString( count_sell ) + " " + "(" + GetString( max_sell - count_sell ) + ")" ); | ~~~~~~~~~^~~~~~~~~~~~ ../fheroes2/dialog/dialog_marketplace.cpp:197:54: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 197 | textBuy.SetText( std::string( "+" ) + GetString( count_buy ) + " " + "(" + GetString( orig_buy + count_buy ) + ")" ); | ^~~~~~~~~ ../fheroes2/dialog/dialog_marketplace.cpp:197:100: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 197 | textBuy.SetText( std::string( "+" ) + GetString( count_buy ) + " " + "(" + GetString( orig_buy + count_buy ) + ")" ); | ~~~~~~~~~^~~~~~~~~~~ ../fheroes2/dialog/dialog_marketplace.cpp: In function 'void Dialog::Marketplace(bool)': ../fheroes2/dialog/dialog_marketplace.cpp:334:41: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 334 | max_sell = fundsFrom.Get( resourceFrom ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ../fheroes2/dialog/dialog_marketplace.cpp:400:25: warning: conversion to 'unsigned int' from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 400 | count_buy = seek * ( Resource::GOLD == resourceTo ? GetTradeCosts( resourceFrom, resourceTo, fromTradingPost ) : 1 ); | ^~~~ ../fheroes2/dialog/dialog_marketplace.cpp:401:26: warning: conversion to 'unsigned int' from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 401 | count_sell = seek * ( Resource::GOLD == resourceTo ? 1 : GetTradeCosts( resourceFrom, resourceTo, fromTradingPost ) ); | ^~~~ ../fheroes2/dialog/dialog_marketplace.cpp:405:82: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 405 | gui.RedrawInfoBuySell( count_sell, count_buy, max_sell, fundsFrom.Get( resourceTo ) ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~ ../fheroes2/dialog/dialog_marketplace.cpp:412:43: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 412 | const u32 & max = splitter.Max(); | ~~~~~~~~~~~~^~ ../fheroes2/dialog/dialog_marketplace.cpp:418:33: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 418 | splitter.MoveIndex( max ); | ^~~ ../fheroes2/dialog/dialog_marketplace.cpp:419:82: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 419 | gui.RedrawInfoBuySell( count_sell, count_buy, max_sell, fundsFrom.Get( resourceTo ) ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~ ../fheroes2/dialog/dialog_marketplace.cpp:432:82: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 432 | gui.RedrawInfoBuySell( count_sell, count_buy, max_sell, fundsFrom.Get( resourceTo ) ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~ ../fheroes2/dialog/dialog_marketplace.cpp:461:82: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 461 | gui.RedrawInfoBuySell( count_sell, count_buy, max_sell, fundsFrom.Get( resourceTo ) ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~ ../fheroes2/dialog/dialog_marketplace.cpp:474:82: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 474 | gui.RedrawInfoBuySell( count_sell, count_buy, max_sell, fundsFrom.Get( resourceTo ) ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~ ../fheroes2/dialog/dialog_marketplace.cpp: In function 'std::string GetStringTradeCosts(int, int, bool)': ../fheroes2/dialog/dialog_marketplace.cpp:556:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 556 | res.append( GetString( GetTradeCosts( rs_from, rs_to, tradingPost ) ) ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/dialog/dialog_marketplace.cpp:37: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: dialog_resolution.o ../fheroes2/dialog/dialog_resolution.cpp: In function 'bool Dialog::SelectResolution()': ../fheroes2/dialog/dialog_resolution.cpp:115:38: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 115 | const Rect roi( dialogOffset.x, dialogOffset.y, sprite.width(), sprite.height() ); | ~~~~~~~~~~~~~^ ../fheroes2/dialog/dialog_resolution.cpp:115:54: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 115 | const Rect roi( dialogOffset.x, dialogOffset.y, sprite.width(), sprite.height() ); | ~~~~~~~~~~~~~^ ../fheroes2/dialog/dialog_resolution.cpp:115:69: warning: conversion from 'int32_t' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 115 | const Rect roi( dialogOffset.x, dialogOffset.y, sprite.width(), sprite.height() ); | ~~~~~~~~~~~~^~ ../fheroes2/dialog/dialog_resolution.cpp:115:86: warning: conversion from 'int32_t' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 115 | const Rect roi( dialogOffset.x, dialogOffset.y, sprite.width(), sprite.height() ); | ~~~~~~~~~~~~~^~ In file included from ../fheroes2/dialog/dialog_resolution.cpp:25: ../fheroes2/gui/interface_list.h: In instantiation of 'Item& Interface::ListBox::GetCurrent() [with Item = std::pair]': ../fheroes2/dialog/dialog_resolution.cpp:139:57: required from here ../fheroes2/gui/interface_list.h:186:33: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 186 | return ( *content )[_currentId]; | ^~~~~~~~~~ In file included from ../fheroes2/dialog/dialog_resolution.cpp:25: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = std::pair]': ../fheroes2/dialog/dialog_resolution.cpp:144:24: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: dialog_recrut.o ../fheroes2/dialog/dialog_recrut.cpp: In function 'void RedrawCurrentInfo(const Point&, u32, const payment_t&, const payment_t&, const Funds&, const string&)': ../fheroes2/dialog/dialog_recrut.cpp:39:26: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 39 | text.Set( GetString( result ), Font::BIG ); | ^~~~~~ ../fheroes2/dialog/dialog_recrut.cpp: In function 'void RedrawMonsterInfo(const Rect&, const Monster&, u32, bool, bool)': ../fheroes2/dialog/dialog_recrut.cpp:173:37: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 173 | StringReplace( str, "%{count}", available ); | ^~~~~~~~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/dialog/dialog_recrut.cpp:32: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: dialog_selectcount.o ../fheroes2/dialog/dialog_selectcount.cpp: In member function 'void SelectValue::Redraw()': ../fheroes2/dialog/dialog_selectcount.cpp:108:31: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 108 | Text text( GetString( vcur ), Font::BIG ); | ^~~~ ../fheroes2/dialog/dialog_selectcount.cpp: In function 'bool Dialog::SelectCount(const string&, u32, u32, u32&, int)': ../fheroes2/dialog/dialog_selectcount.cpp:160:37: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 160 | SelectValue sel( min, max, cur, step ); | ^~~~ ../fheroes2/dialog/dialog_selectcount.cpp: In function 'bool Dialog::InputString(const string&, std::string&)': ../fheroes2/dialog/dialog_selectcount.cpp:290:87: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 290 | charInsertPos = InsertKeySym( res, charInsertPos, le.KeyValue(), le.KeyMod() ); | ~~~~~~~~~^~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: dialog_guardian.o ../fheroes2/dialog/dialog_guardian.cpp: In member function 'void ArmyCell::Redraw()': ../fheroes2/dialog/dialog_guardian.cpp:64:49: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 64 | Text text( GetString( troop.GetCount() ), Font::SMALL ); | ~~~~~~~~~~~~~~^~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/dialog/dialog_guardian.cpp:33: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: dialog_giftresources.o ../fheroes2/dialog/dialog_giftresources.cpp: In constructor 'SelectRecipientsColors::SelectRecipientsColors(const Point&)': ../fheroes2/dialog/dialog_giftresources.cpp:63:46: warning: conversion to 'u32' {aka 'unsigned int'} from 'std::__iterator_traits<__gnu_cxx::__normal_iterator >, void>::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 63 | const u32 current = std::distance( colors.begin(), it ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/dialog/dialog_giftresources.cpp:66:104: warning: conversion to 'u32' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 66 | positions.push_back( fheroes2::Rect( pos.x + Game::GetStep4Player( current, sprite.width() + 15, colors.size() ), pos.y, sprite.width(), sprite.height() ) ); | ~~~~~~~~~~~~~~~^~~~ ../fheroes2/dialog/dialog_giftresources.cpp:66:54: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 66 | positions.push_back( fheroes2::Rect( pos.x + Game::GetStep4Player( current, sprite.width() + 15, colors.size() ), pos.y, sprite.width(), sprite.height() ) ); | ~~~~^ ../fheroes2/dialog/dialog_giftresources.cpp:66:56: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 66 | positions.push_back( fheroes2::Rect( pos.x + Game::GetStep4Player( current, sprite.width() + 15, colors.size() ), pos.y, sprite.width(), sprite.height() ) ); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/dialog/dialog_giftresources.cpp: In member function 'void SelectRecipientsColors::Redraw() const': ../fheroes2/dialog/dialog_giftresources.cpp:80:65: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'std::__iterator_traits<__gnu_cxx::__normal_iterator >, void>::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 80 | const fheroes2::Rect & pos = positions[std::distance( colors.begin(), it )]; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/dialog/dialog_giftresources.cpp:82:69: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 82 | fheroes2::Blit( fheroes2::AGG::GetICN( ICN::CELLWIN, 43 + Color::GetIndex( *it ) ), display, pos.x, pos.y ); | ~~~^~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/dialog/dialog_giftresources.cpp: In member function 'bool SelectRecipientsColors::QueueEventProcessing()': ../fheroes2/dialog/dialog_giftresources.cpp:93:39: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 93 | const int & cols = colors[index]; | ^~~~~ ../fheroes2/dialog/dialog_giftresources.cpp: In constructor 'ResourceBar::ResourceBar(Funds&, s32, s32)': ../fheroes2/dialog/dialog_giftresources.cpp:115:16: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 115 | , pos( posx, posy ) | ^~~~ ../fheroes2/dialog/dialog_giftresources.cpp:115:22: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 115 | , pos( posx, posy ) | ^~~~ ../fheroes2/dialog/dialog_giftresources.cpp: In member function 'bool ResourceBar::QueueEventProcessing(Funds&, u32)': ../fheroes2/dialog/dialog_giftresources.cpp:161:50: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 161 | int rs = Resource::FromIndexSprite2( index ); | ^~~~~ ../fheroes2/dialog/dialog_giftresources.cpp:164:35: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 164 | u32 cur = resource.Get( rs ); | ~~~~~~~~~~~~^~~~~~ ../fheroes2/dialog/dialog_giftresources.cpp:166:51: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 166 | u32 max = mul > 1 ? ( funds.Get( rs ) + resource.Get( rs ) ) / mul : funds.Get( rs ) + resource.Get( rs ); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/dialog/dialog_giftresources.cpp:166:98: warning: conversion to 'unsigned int' from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 166 | u32 max = mul > 1 ? ( funds.Get( rs ) + resource.Get( rs ) ) / mul : funds.Get( rs ) + resource.Get( rs ); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~ ../fheroes2/dialog/dialog_giftresources.cpp:180:61: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 180 | if ( Dialog::SelectCount( msg, 0, max, sel, step ) && cur != sel ) { | ^~~~ ../fheroes2/dialog/dialog_giftresources.cpp:185:41: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 185 | s32 count = sel - cur; | ~~~~^~~~~ ../fheroes2/dialog/dialog_giftresources.cpp:187:44: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 187 | *from -= mul > 1 ? count * mul : count; | ^~~~~ ../fheroes2/dialog/dialog_giftresources.cpp:187:58: warning: conversion to 'unsigned int' from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 187 | *from -= mul > 1 ? count * mul : count; | ^~~~~ ../fheroes2/dialog/dialog_giftresources.cpp:187:58: warning: conversion to 'unsigned int' from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] ../fheroes2/dialog/dialog_giftresources.cpp:187:31: warning: conversion to 's32' {aka 'int'} from 'unsigned int' may change the sign of the result [-Wsign-conversion] 187 | *from -= mul > 1 ? count * mul : count; | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/dialog/dialog_giftresources.cpp: In function 'void Dialog::MakeGiftResource()': ../fheroes2/dialog/dialog_giftresources.cpp:244:29: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 244 | u32 count = Color::Count( selector.recipients ); | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/dialog/dialog_giftresources.cpp:250:41: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 250 | u32 new_count = Color::Count( selector.recipients ); | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/dialog/dialog_giftresources.cpp:29: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: dialog_resourceinfo.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: dialog_quickinfo.o ../fheroes2/dialog/dialog_quickinfo.cpp: In function 'std::string ShowResourceInfo(const Maps::Tiles&, int)': ../fheroes2/dialog/dialog_quickinfo.cpp:133:50: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 133 | str.append( Game::CountScoute( funds.gold, scoute ) ); | ~~~~~~^~~~ ../fheroes2/dialog/dialog_quickinfo.cpp: In function 'std::string ShowGroundInfo(const Maps::Tiles&, bool, const Heroes*)': ../fheroes2/dialog/dialog_quickinfo.cpp:290:124: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 290 | uint32_t cost = tile.isRoad() ? Maps::Ground::roadPenalty : Maps::Ground::GetPenalty( tile, hero->GetLevelSkill( Skill::Secondary::PATHFINDING ) ); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/dialog/dialog_quickinfo.cpp:295:48: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 295 | StringReplace( str, "%{cost}", cost ); | ^~~~ ../fheroes2/dialog/dialog_quickinfo.cpp: In function 'void Dialog::QuickInfo(const Heroes&)': ../fheroes2/dialog/dialog_quickinfo.cpp:770:33: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 770 | u32 count = ( 0 == luck ? 1 : std::abs( luck ) ); | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/dialog/dialog_quickinfo.cpp:784:35: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 784 | u32 count = ( 0 == morale ? 1 : std::abs( morale ) ); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/dialog/dialog_quickinfo.cpp:880:49: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 880 | text.Set( GetString( hero.GetSpellPoints() ) + "/" + GetString( hero.GetMaxSpellPoints() ) ); | ~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/dialog/dialog_quickinfo.cpp:880:95: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 880 | text.Set( GetString( hero.GetSpellPoints() ) + "/" + GetString( hero.GetMaxSpellPoints() ) ); | ~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/dialog/dialog_quickinfo.cpp:890:99: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 890 | text.Set( GetString( hero.GetMobilityIndexSprite() ) + "/" + GetString( hero.GetMovePoints() ) + "/" + GetString( hero.GetMaxMovePoints() ) ); | ~~~~~~~~~~~~~~~~~~^~ ../fheroes2/dialog/dialog_quickinfo.cpp:890:144: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 890 | text.Set( GetString( hero.GetMobilityIndexSprite() ) + "/" + GetString( hero.GetMovePoints() ) + "/" + GetString( hero.GetMaxMovePoints() ) ); | ~~~~~~~~~~~~~~~~~~~~~^~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/dialog/dialog_quickinfo.cpp:41: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ In file included from ../fheroes2/gui/interface_icons.h:27, from ../fheroes2/game/game_interface.h:31, from ../fheroes2/dialog/dialog_quickinfo.cpp:29: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Castle*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Heroes*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: dialog_selectfile.o ../fheroes2/dialog/dialog_selectfile.cpp: In member function 'virtual void FileInfoListBox::RedrawItem(const Maps::FileInfo&, s32, s32, bool)': ../fheroes2/dialog/dialog_selectfile.cpp:78:27: warning: conversion to 'time_t' {aka 'long int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 78 | time_t timeval = info.localtime; | ~~~~~^~~~~~~~~ ../fheroes2/dialog/dialog_selectfile.cpp: In function 'size_t GetInsertPosition(const string&, s32, s32)': ../fheroes2/dialog/dialog_selectfile.cpp:136:29: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 136 | s32 tw = Text::width( name, Font::SMALL ); | ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ../fheroes2/dialog/dialog_selectfile.cpp:142:24: warning: conversion to 'std::__cxx11::basic_string::size_type' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 142 | float cw = tw / name.size(); | ^~ ../fheroes2/dialog/dialog_selectfile.cpp:142:27: warning: conversion from 'std::__cxx11::basic_string::size_type' {aka 'unsigned int'} to 'float' may change value [-Wconversion] 142 | float cw = tw / name.size(); | ~~~^~~~~~~~~~~~~ ../fheroes2/dialog/dialog_selectfile.cpp:143:46: warning: conversion from 's32' {aka 'int'} to 'float' may change value [-Wconversion] 143 | return static_cast( ( cx - posx ) / cw ); | ~~~~~^~~~~~~~ ../fheroes2/dialog/dialog_selectfile.cpp: In function 'MapsFileInfoList GetSortedMapsFileInfoList()': ../fheroes2/dialog/dialog_selectfile.cpp:157:21: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 157 | if ( !list2[ii].ReadSAV( *itd ) ) | ^~ ../fheroes2/dialog/dialog_selectfile.cpp:160:23: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 160 | list2.resize( ii ); | ^~ ../fheroes2/dialog/dialog_selectfile.cpp: In function 'std::string Dialog::SelectFileSave()': ../fheroes2/dialog/dialog_selectfile.cpp:172:31: warning: conversion to 'std::__cxx11::basic_string::size_type' {aka 'unsigned int'} from 'std::__iterator_traits<__gnu_cxx::__normal_iterator >, void>::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 172 | base.resize( std::distance( base.begin(), std::find_if( base.begin(), base.end(), ::ispunct ) ) ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/dialog/dialog_selectfile.cpp: In function 'std::string SelectFileListSimple(const string&, const string&, bool)': ../fheroes2/dialog/dialog_selectfile.cpp:217:40: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 217 | FileInfoListBox listbox( Point( rt.x, rt.y ), edit_mode ); | ~~~^ ../fheroes2/dialog/dialog_selectfile.cpp:217:46: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 217 | FileInfoListBox listbox( Point( rt.x, rt.y ), edit_mode ); | ~~~^ ../fheroes2/dialog/dialog_selectfile.cpp:219:41: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 219 | listbox.RedrawBackground( Point( rt.x, rt.y ) ); | ~~~^ ../fheroes2/dialog/dialog_selectfile.cpp:219:47: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 219 | listbox.RedrawBackground( Point( rt.x, rt.y ) ); | ~~~^ ../fheroes2/dialog/dialog_selectfile.cpp:240:46: warning: conversion to 'size_t' {aka 'unsigned int'} from 'std::__iterator_traits<__gnu_cxx::__normal_iterator >, void>::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 240 | listbox.SetCurrent( std::distance( lists.begin(), it ) ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ../fheroes2/dialog/dialog_selectfile.cpp:290:92: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 290 | charInsertPos = InsertKeySym( filename, charInsertPos, le.KeyValue(), le.KeyMod() ); | ~~~~~~~~~^~ In file included from ../fheroes2/dialog/dialog_selectfile.cpp:35: ../fheroes2/gui/interface_list.h: In instantiation of 'Item& Interface::ListBox::GetCurrent() [with Item = Maps::FileInfo]': ../fheroes2/dialog/dialog_selectfile.cpp:249:58: required from here ../fheroes2/gui/interface_list.h:186:33: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 186 | return ( *content )[_currentId]; | ^~~~~~~~~~ In file included from ../fheroes2/dialog/dialog_selectfile.cpp:35: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Maps::FileInfo]': ../fheroes2/dialog/dialog_selectfile.cpp:253:20: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/dialog/dialog_selectfile.cpp:42: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: dialog_settings.o ../fheroes2/dialog/dialog_settings.cpp: In member function 'virtual void SettingsListBox::RedrawItem(const u32&, s32, s32, bool)': ../fheroes2/dialog/dialog_settings.cpp:55:74: warning: unused parameter 'current' [-Wunused-parameter] 55 | void SettingsListBox::RedrawItem( const u32 & item, s32 ox, s32 oy, bool current ) | ~~~~~^~~~~~~ In file included from ../fheroes2/dialog/dialog_settings.cpp:28: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = unsigned int]': ../fheroes2/dialog/dialog_settings.cpp:239:20: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: dialog_selectscenario.o ../fheroes2/dialog/dialog_selectscenario.cpp: In member function 'virtual void ScenarioListBox::RedrawItem(const Maps::FileInfo&, s32, s32, bool)': ../fheroes2/dialog/dialog_selectscenario.cpp:58:82: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | const fheroes2::Sprite & spriteCount = fheroes2::AGG::GetICN( ICN::REQUESTS, index ); | ^~~~~ ../fheroes2/dialog/dialog_selectscenario.cpp:82:85: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 82 | const fheroes2::Sprite & spriteSize = fheroes2::AGG::GetICN( ICN::REQUESTS, index ); | ^~~~~ ../fheroes2/dialog/dialog_selectscenario.cpp:90:81: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 90 | const fheroes2::Sprite & spriteWins = fheroes2::AGG::GetICN( ICN::REQUESTS, index ); | ^~~~~ ../fheroes2/dialog/dialog_selectscenario.cpp:94:81: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 94 | const fheroes2::Sprite & spriteLoss = fheroes2::AGG::GetICN( ICN::REQUESTS, index ); | ^~~~~ ../fheroes2/dialog/dialog_selectscenario.cpp: In member function 'virtual void ScenarioListBox::RedrawBackground(const Point&)': ../fheroes2/dialog/dialog_selectscenario.cpp:113:86: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 113 | const fheroes2::Sprite & spriteCount = fheroes2::AGG::GetICN( ICN::REQUESTS, index ); | ^~~~~ ../fheroes2/dialog/dialog_selectscenario.cpp:134:85: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 134 | const fheroes2::Sprite & spriteSize = fheroes2::AGG::GetICN( ICN::REQUESTS, index ); | ^~~~~ ../fheroes2/dialog/dialog_selectscenario.cpp:141:85: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 141 | const fheroes2::Sprite & spriteWins = fheroes2::AGG::GetICN( ICN::REQUESTS, index ); | ^~~~~ ../fheroes2/dialog/dialog_selectscenario.cpp:145:85: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 145 | const fheroes2::Sprite & spriteLoss = fheroes2::AGG::GetICN( ICN::REQUESTS, index ); | ^~~~~ ../fheroes2/dialog/dialog_selectscenario.cpp: In function 'const Maps::FileInfo* Dialog::SelectScenario(const MapsFileInfoList&, size_t)': ../fheroes2/dialog/dialog_selectscenario.cpp:205:50: warning: conversion from 'int32_t' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 205 | Rect rt( ( display.width() - panel.width() ) / 2, ( display.height() - panel.height() ) / 2, panel.width(), panel.height() ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ ../fheroes2/dialog/dialog_selectscenario.cpp:205:93: warning: conversion from 'int32_t' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 205 | Rect rt( ( display.width() - panel.width() ) / 2, ( display.height() - panel.height() ) / 2, panel.width(), panel.height() ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ ../fheroes2/dialog/dialog_selectscenario.cpp:205:109: warning: conversion from 'int32_t' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 205 | Rect rt( ( display.width() - panel.width() ) / 2, ( display.height() - panel.height() ) / 2, panel.width(), panel.height() ); | ~~~~~~~~~~~^~ ../fheroes2/dialog/dialog_selectscenario.cpp:205:125: warning: conversion from 'int32_t' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 205 | Rect rt( ( display.width() - panel.width() ) / 2, ( display.height() - panel.height() ) / 2, panel.width(), panel.height() ); | ~~~~~~~~~~~~^~ In file included from ../fheroes2/dialog/dialog_selectscenario.h:26, from ../fheroes2/dialog/dialog_selectscenario.cpp:23: ../fheroes2/gui/interface_list.h: In instantiation of 'Item& Interface::ListBox::GetCurrent() [with Item = Maps::FileInfo]': ../fheroes2/dialog/dialog_selectscenario.cpp:110:50: required from here ../fheroes2/gui/interface_list.h:186:33: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 186 | return ( *content )[_currentId]; | ^~~~~~~~~~ In file included from ../fheroes2/dialog/dialog_selectscenario.h:26, from ../fheroes2/dialog/dialog_selectscenario.cpp:23: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Maps::FileInfo]': ../fheroes2/dialog/dialog_selectscenario.cpp:254:20: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ In file included from ../fheroes2/dialog/dialog_selectscenario.h:26, from ../fheroes2/dialog/dialog_selectscenario.cpp:23: ../fheroes2/gui/interface_list.h: In instantiation of 'Item* Interface::ListBox::GetFromPosition(const Point&) [with Item = Maps::FileInfo]': ../fheroes2/dialog/dialog_selectscenario.cpp:363:88: required from here ../fheroes2/gui/interface_list.h:205:34: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 205 | return &( *content )[id]; | ^~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: dialog_spellinfo.o ../fheroes2/dialog/dialog_spellinfo.cpp: In function 'void Dialog::SpellInfo(const Spell&, bool)': ../fheroes2/dialog/dialog_spellinfo.cpp:53:41: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 53 | StringReplace( msg, "%{count}", extra ); | ^~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: dialog_selectitems.o ../fheroes2/dialog/dialog_selectitems.cpp: In member function 'virtual void SelectEnum::RedrawBackground(const Point&)': ../fheroes2/dialog/dialog_selectitems.cpp:56:107: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 56 | fheroes2::Blit( fheroes2::AGG::GetICN( ICN::LISTBOX, 8 ), display, dst.x + area.w - 24, dst.y + 44 + ( ii * 19 ) ); | ~~~~~~^~~~ ../fheroes2/dialog/dialog_selectitems.cpp:56:112: warning: conversion to 'int32_t' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 56 | fheroes2::Blit( fheroes2::AGG::GetICN( ICN::LISTBOX, 8 ), display, dst.x + area.w - 24, dst.y + 44 + ( ii * 19 ) ); | ~~~~~~~~~~~^~~~~~~~~~~~~ ../fheroes2/dialog/dialog_selectitems.cpp: In member function 'virtual void SelectEnum::ActionListDoubleClick(int&)': ../fheroes2/dialog/dialog_selectitems.cpp:61:39: warning: unused parameter 'index' [-Wunused-parameter] 61 | void ActionListDoubleClick( int & index ) | ~~~~~~^~~~~ ../fheroes2/dialog/dialog_selectitems.cpp: In member function 'virtual void SelectEnumSecSkill::RedrawItem(const int&, s32, s32, bool)': ../fheroes2/dialog/dialog_selectitems.cpp:198:82: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 198 | fheroes2::Blit( fheroes2::AGG::GetICN( ICN::MINISS, skill.GetIndexSprite2() ), fheroes2::Display::instance(), dstx + 5, dsty + 3 ); | ~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/dialog/dialog_selectitems.cpp: In function 'Skill::Secondary Dialog::SelectSecondarySkill()': ../fheroes2/dialog/dialog_selectitems.cpp:225:16: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 225 | skills[i] = i; | ^ In file included from ../fheroes2/dialog/dialog_selectitems.cpp:27: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = int]': ../fheroes2/dialog/dialog_selectitems.cpp:233:20: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ In file included from ../fheroes2/dialog/dialog_selectitems.cpp:27: ../fheroes2/gui/interface_list.h: In instantiation of 'Item& Interface::ListBox::GetCurrent() [with Item = int]': ../fheroes2/dialog/dialog_selectitems.cpp:257:50: required from here ../fheroes2/gui/interface_list.h:186:33: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 186 | return ( *content )[_currentId]; | ^~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: dialog_spriteinfo.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: difficulty.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: dialog_skillinfo.o ../fheroes2/dialog/dialog_skillinfo.cpp: In function 'void Dialog::SecondarySkillInfo(const string&, const string&, const Skill::Secondary&, bool)': ../fheroes2/dialog/dialog_skillinfo.cpp:68:98: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 68 | const fheroes2::Sprite & sprite = fheroes2::AGG::GetICN( ICN::SECSKILL, skill.GetIndexSprite1() ); | ~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/dialog/dialog_skillinfo.cpp: In function 'void Dialog::PrimarySkillInfo(const string&, const string&, int)': ../fheroes2/dialog/dialog_skillinfo.cpp:165:84: warning: enum constant in boolean context [-Wint-in-bool-context] 165 | FrameBox box( box1.h() + spacer + box2.h() + spacer + border.height(), Dialog::OK ); | ~~~~~~~~^~ ../fheroes2/dialog/dialog_skillinfo.cpp:179:77: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 179 | const fheroes2::Sprite & sprite = fheroes2::AGG::GetICN( ICN::PRIMSKIL, index ); | ^~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: dialog_thievesguild.o ../fheroes2/dialog/dialog_thievesguild.cpp: In function 'void GetTownsInfo(std::vector&, const Colors&)': ../fheroes2/dialog/dialog_thievesguild.cpp:71:60: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 71 | int value = world.GetKingdom( *color ).GetCountTown(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/dialog/dialog_thievesguild.cpp: In function 'void GetCastlesInfo(std::vector&, const Colors&)': ../fheroes2/dialog/dialog_thievesguild.cpp:83:62: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 83 | int value = world.GetKingdom( *color ).GetCountCastle(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/dialog/dialog_thievesguild.cpp: In function 'void GetHeroesInfo(std::vector&, const Colors&)': ../fheroes2/dialog/dialog_thievesguild.cpp:95:64: warning: conversion to 'int' from 'std::vector::size_type' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 95 | int value = world.GetKingdom( *color ).GetHeroes().size(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/dialog/dialog_thievesguild.cpp: In function 'void GetObelisksInfo(std::vector&, const Colors&)': ../fheroes2/dialog/dialog_thievesguild.cpp:145:73: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 145 | const int value = world.GetKingdom( *color ).CountVisitedObjects( MP2::OBJ_OBELISK ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~ ../fheroes2/dialog/dialog_thievesguild.cpp: In function 'void GetArmyInfo(std::vector&, const Colors&)': ../fheroes2/dialog/dialog_thievesguild.cpp:157:71: warning: conversion from 'double' to 'int' may change value [-Wfloat-conversion] 157 | const int value = world.GetKingdom( *color ).GetArmiesStrength(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/dialog/dialog_thievesguild.cpp: In function 'void DrawFlags(const std::vector&, const Point&, size_t, size_t)': ../fheroes2/dialog/dialog_thievesguild.cpp:193:73: warning: conversion to 'u32' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 193 | const u32 sw = fheroes2::AGG::GetICN( ICN::FLAG32, 1 ).width(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/dialog/dialog_thievesguild.cpp:194:26: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 194 | s32 px = pos.x + chunk / 2 + ii * chunk - ( colors.size() * sw ) / 2; | ~~~~^ ../fheroes2/dialog/dialog_thievesguild.cpp:194:53: warning: conversion to 's32' {aka 'int'} from 'unsigned int' may change the sign of the result [-Wsign-conversion] 194 | s32 px = pos.x + chunk / 2 + ii * chunk - ( colors.size() * sw ) / 2; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/dialog/dialog_thievesguild.cpp:197:115: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 197 | const fheroes2::Sprite & flag = fheroes2::AGG::GetICN( ICN::FLAG32, Color::GetIndex( *color ) * 2 + 1 ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ ../fheroes2/dialog/dialog_thievesguild.cpp:199:22: warning: conversion to 'unsigned int' from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 199 | px = px + sw; | ^~ ../fheroes2/dialog/dialog_thievesguild.cpp:199:25: warning: conversion to 's32' {aka 'int'} from 'unsigned int' may change the sign of the result [-Wsign-conversion] 199 | px = px + sw; | ~~~^~~~ ../fheroes2/dialog/dialog_thievesguild.cpp: In function 'void DrawHeroIcons(const std::vector&, const Point&, u32)': ../fheroes2/dialog/dialog_thievesguild.cpp:209:33: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 209 | const int chunk = width / v.size(); | ~~~~~~^~~~~~~~~~ ../fheroes2/dialog/dialog_thievesguild.cpp:214:51: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 214 | s32 px = pos.x + chunk / 2 + ii * chunk; | ^~~~~ ../fheroes2/dialog/dialog_thievesguild.cpp:214:32: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 214 | s32 px = pos.x + chunk / 2 + ii * chunk; | ~~~~~~^~~~~~~~~~~ ../fheroes2/dialog/dialog_thievesguild.cpp:214:44: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 214 | s32 px = pos.x + chunk / 2 + ii * chunk; | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ../fheroes2/dialog/dialog_thievesguild.cpp: In function 'void Dialog::ThievesGuild(bool)': ../fheroes2/dialog/dialog_thievesguild.cpp:279:29: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 279 | dst_pt.x = cur_pt.x + startx + maxw / ( colors.size() * 2 ) + ii * maxw / colors.size() - text.w() / 2; | ~~~~~~~~~^~~~~~~~ ../fheroes2/dialog/dialog_thievesguild.cpp:279:108: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 279 | dst_pt.x = cur_pt.x + startx + maxw / ( colors.size() * 2 ) + ii * maxw / colors.size() - text.w() / 2; | ~~~~~~~~~^~~ ../fheroes2/dialog/dialog_thievesguild.cpp:279:97: warning: conversion to 'int' from 'std::vector::size_type' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 279 | dst_pt.x = cur_pt.x + startx + maxw / ( colors.size() * 2 ) + ii * maxw / colors.size() - text.w() / 2; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ ../fheroes2/dialog/dialog_thievesguild.cpp:391:29: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 391 | dst_pt.x = cur_pt.x + startx + maxw / ( colors.size() * 2 ) + ii * maxw / colors.size() - text.w() / 2; | ~~~~~~~~~^~~~~~~~ ../fheroes2/dialog/dialog_thievesguild.cpp:391:108: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 391 | dst_pt.x = cur_pt.x + startx + maxw / ( colors.size() * 2 ) + ii * maxw / colors.size() - text.w() / 2; | ~~~~~~~~~^~~ ../fheroes2/dialog/dialog_thievesguild.cpp:391:97: warning: conversion to 'int' from 'std::vector::size_type' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 391 | dst_pt.x = cur_pt.x + startx + maxw / ( colors.size() * 2 ) + ii * maxw / colors.size() - text.w() / 2; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/dialog/dialog_thievesguild.cpp:35: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: dialog_system.o ../fheroes2/dialog/dialog_system.cpp: In function 'void Dialog::DrawSystemInfo(const std::vector >&)': ../fheroes2/dialog/dialog_system.cpp:273:31: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 273 | const u32 is4 = heroSpeed ? ( heroSpeed < 4 ? 4 : 3 + heroSpeed / 2 ) : 9; | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/dialog/dialog_system.cpp:290:29: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 290 | const u32 is5 = aiSpeed ? ( aiSpeed < 4 ? 4 : 3 + aiSpeed / 2 ) : 9; | ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from ../fheroes2/gui/interface_icons.h:27, from ../fheroes2/game/game_interface.h:31, from ../fheroes2/dialog/dialog_system.cpp:28: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Castle*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Heroes*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: fheroes2.o ../fheroes2/game/fheroes2.cpp: In function 'int main(int, char**)': ../fheroes2/game/fheroes2.cpp:125:76: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 125 | Mixer::Volume( -1, Mixer::MaxVolume() * conf.SoundVolume() / 10 ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~ ../fheroes2/game/fheroes2.cpp:126:72: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 126 | Music::Volume( Mixer::MaxVolume() * conf.MusicVolume() / 10 ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: game_delays.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: game.o ../fheroes2/game/game.cpp: In constructor 'Game::ObjectFadeAnimation::Info::Info(u8, u8, s32, u32, bool)': ../fheroes2/game/game.cpp:93:40: warning: conversion from 'u32' {aka 'unsigned int'} to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 93 | index = ICN::AnimationFrame( MP2::GetICNObject( object ), index_, 0 ); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/game/game.cpp: In function 'void Game::EnvironmentSoundMixer()': ../fheroes2/game/game.cpp:210:84: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 210 | const u32 channel = GetMixerChannelFromObject( world.GetTiles( xx, yy ) ); | ^~ ../fheroes2/game/game.cpp:210:88: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 210 | const u32 channel = GetMixerChannelFromObject( world.GetTiles( xx, yy ) ); | ^~ ../fheroes2/game/game.cpp: In function 'void Game::ShowLoadMapsText()': ../fheroes2/game/game.cpp:323:58: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 323 | TextBox text( _( "Maps Loading..." ), Font::BIG, pos.width ); | ~~~~^~~~~ ../fheroes2/game/game.cpp: In function 'std::string Game::CountScoute(u32, int, bool)': ../fheroes2/game/game.cpp:468:40: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 468 | res = shorts ? GetStringShort( count ) : GetString( count ); | ^~~~~ ../fheroes2/game/game.cpp:468:61: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 468 | res = shorts ? GetStringShort( count ) : GetString( count ); | ^~~~~ ../fheroes2/game/game.cpp:486:26: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 486 | res = GetString( min ); | ^~~ ../fheroes2/game/game.cpp:490:36: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 490 | res.append( GetString( max ) ); | ^~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/game/game.cpp:52: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ In file included from ../fheroes2/gui/interface_icons.h:27, from ../fheroes2/game/game_interface.h:31, from ../fheroes2/game/game.cpp:36: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Castle*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Heroes*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: game_credits.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: game_loadgame.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: game_interface.o ../fheroes2/game/game_interface.cpp: In member function 'void Interface::Basic::SetHideInterface(bool)': ../fheroes2/game/game_interface.cpp:98:50: warning: conversion to 'u32' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 98 | const u32 px = display.width() - BORDERWIDTH - RADARWIDTH; ../fheroes2/game/game_interface.cpp:113:34: warning: conversion from 'unsigned int' to 's16' {aka 'short int'} may change value [-Wconversion] 113 | pos_icon = Point( px - BORDERWIDTH, radar.GetArea().y + radar.GetArea().h ); ../fheroes2/game/game_interface.cpp:113:67: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 113 | pos_icon = Point( px - BORDERWIDTH, radar.GetArea().y + radar.GetArea().h ); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ ../fheroes2/game/game_interface.cpp:115:34: warning: conversion from 'unsigned int' to 's16' {aka 'short int'} may change value [-Wconversion] 115 | pos_bttn = Point( px - BORDERWIDTH, iconsPanel.GetArea().y + iconsPanel.GetArea().h ); ../fheroes2/game/game_interface.cpp:115:72: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 115 | pos_bttn = Point( px - BORDERWIDTH, iconsPanel.GetArea().y + iconsPanel.GetArea().h ); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/game/game_interface.cpp:117:34: warning: conversion from 'unsigned int' to 's16' {aka 'short int'} may change value [-Wconversion] 117 | pos_stat = Point( px - BORDERWIDTH, buttonsArea.GetArea().y + buttonsArea.GetArea().h ); ../fheroes2/game/game_interface.cpp:117:73: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 117 | pos_stat = Point( px - BORDERWIDTH, buttonsArea.GetArea().y + buttonsArea.GetArea().h ); | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/game/game_interface.cpp:126:23: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 126 | radar.SetPos( px, BORDERWIDTH ); | ^~ ../fheroes2/game/game_interface.cpp:127:28: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 127 | iconsPanel.SetPos( px, radar.GetArea().y + radar.GetArea().h + BORDERWIDTH ); | ^~ ../fheroes2/game/game_interface.cpp:129:29: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 129 | buttonsArea.SetPos( px, iconsPanel.GetArea().y + iconsPanel.GetArea().h + BORDERWIDTH ); | ^~ ../fheroes2/game/game_interface.cpp:130:30: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 130 | statusWindow.SetPos( px, buttonsArea.GetArea().y + buttonsArea.GetArea().h ); | ^~ ../fheroes2/game/game_interface.cpp: In member function 's32 Interface::Basic::GetDimensionDoorDestination(s32, u32, bool) const': ../fheroes2/game/game_interface.cpp:249:50: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 249 | const fheroes2::Point heroPosOffset( heroPos.x - TILEWIDTH * ( distance / 2 ), heroPos.y - TILEWIDTH * ( distance / 2 ) ); | ~~~~~~~~^ ../fheroes2/game/game_interface.cpp:249:92: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 249 | const fheroes2::Point heroPosOffset( heroPos.x - TILEWIDTH * ( distance / 2 ), heroPos.y - TILEWIDTH * ( distance / 2 ) ); | ~~~~~~~~^ ../fheroes2/game/game_interface.cpp:249:52: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 249 | const fheroes2::Point heroPosOffset( heroPos.x - TILEWIDTH * ( distance / 2 ), heroPos.y - TILEWIDTH * ( distance / 2 ) ); | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/game/game_interface.cpp:249:94: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 249 | const fheroes2::Point heroPosOffset( heroPos.x - TILEWIDTH * ( distance / 2 ), heroPos.y - TILEWIDTH * ( distance / 2 ) ); | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/game/game_interface.cpp:250:40: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 250 | const Rect spellROI( heroPosOffset.x, heroPosOffset.y, TILEWIDTH * ( distance + 1 ), TILEWIDTH * ( distance + 1 ) ); | ~~~~~~~~~~~~~~^ ../fheroes2/game/game_interface.cpp:250:57: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 250 | const Rect spellROI( heroPosOffset.x, heroPosOffset.y, TILEWIDTH * ( distance + 1 ), TILEWIDTH * ( distance + 1 ) ); | ~~~~~~~~~~~~~~^ ../fheroes2/game/game_interface.cpp:250:70: warning: conversion from 'u32' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 250 | const Rect spellROI( heroPosOffset.x, heroPosOffset.y, TILEWIDTH * ( distance + 1 ), TILEWIDTH * ( distance + 1 ) ); ../fheroes2/game/game_interface.cpp:250:100: warning: conversion from 'u32' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 250 | const Rect spellROI( heroPosOffset.x, heroPosOffset.y, TILEWIDTH * ( distance + 1 ), TILEWIDTH * ( distance + 1 ) ); ../fheroes2/game/game_interface.cpp:264:76: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 264 | const Point exitButtonPos( radarArea.x + 32, radarArea.y + radarArea.h - 37 ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/game/game_interface.cpp:35: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ In file included from ../fheroes2/gui/interface_icons.h:27, from ../fheroes2/game/game_interface.h:31, from ../fheroes2/game/game_interface.cpp:30: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Castle*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Heroes*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: game_hotkeys.o In file included from ../fheroes2/gui/interface_icons.h:27, from ../fheroes2/game/game_interface.h:31, from ../fheroes2/game/game_hotkeys.cpp:29: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Castle*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Heroes*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: game_io.o ../fheroes2/game/game_io.cpp: In constructor 'Game::HeaderSAV::HeaderSAV(const Maps::FileInfo&, bool)': ../fheroes2/game/game_io.cpp:67:30: warning: conversion to 'u32' {aka 'unsigned int'} from 'time_t' {aka 'long int'} may change the sign of the result [-Wsign-conversion] 67 | info.localtime = rawtime; | ^~~~~~~ ../fheroes2/game/game_io.cpp: In function 'bool Game::Save(const string&)': ../fheroes2/game/game_io.cpp:112:33: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 112 | u16 loadver = GetLoadVersion(); | ~~~~~~~~~~~~~~^~ ../fheroes2/game/game_io.cpp: In function 'bool Game::Load(const string&)': ../fheroes2/game/game_io.cpp:147:58: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 147 | const u16 savid = ( static_cast( major ) << 8 ) | static_cast( minor ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/game/game_io.cpp: In function 'bool Game::LoadSAV2FileInfo(const string&, Maps::FileInfo&)': ../fheroes2/game/game_io.cpp:226:58: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 226 | const u16 savid = ( static_cast( major ) << 8 ) | static_cast( minor ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/game/game_io.cpp:41: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: game_highscores.o ../fheroes2/game/game_highscores.cpp: In member function 'void HGSData::ScoreRegistry(const string&, const string&, u32, u32)': ../fheroes2/game/game_highscores.cpp:132:28: warning: conversion to 'u32' {aka 'unsigned int'} from 'time_t' {aka 'long int'} may change the sign of the result [-Wsign-conversion] 132 | h.localtime = std::time( NULL ); | ~~~~~~~~~^~~~~~~~ ../fheroes2/game/game_highscores.cpp: In member function 'void HGSData::RedrawList(int32_t, int32_t)': ../fheroes2/game/game_highscores.cpp:170:34: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 170 | text.Set( GetString( hgs.days ) ); | ~~~~^~~~ ../fheroes2/game/game_highscores.cpp:173:34: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 173 | text.Set( GetString( hgs.rating ) ); | ~~~~^~~~~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/game/game_highscores.cpp:41: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: game_static.o ../fheroes2/game/game_static.cpp: In function 'void Skill::LoadPrimarySection(const TiXmlElement*, Skill::primary_t&)': ../fheroes2/game/game_static.cpp:180:28: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 180 | skill.attack = value; | ^~~~~ ../fheroes2/game/game_static.cpp:182:29: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 182 | skill.defense = value; | ^~~~~ ../fheroes2/game/game_static.cpp:184:27: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 184 | skill.power = value; | ^~~~~ ../fheroes2/game/game_static.cpp:186:31: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 186 | skill.knowledge = value; | ^~~~~ ../fheroes2/game/game_static.cpp: In function 'void Skill::LoadSecondarySection(const TiXmlElement*, Skill::secondary_t&)': ../fheroes2/game/game_static.cpp:195:27: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 195 | sec.archery = value; | ^~~~~ ../fheroes2/game/game_static.cpp:197:30: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 197 | sec.ballistics = value; | ^~~~~ ../fheroes2/game/game_static.cpp:199:29: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 199 | sec.diplomacy = value; | ^~~~~ ../fheroes2/game/game_static.cpp:201:28: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 201 | sec.eagleeye = value; | ^~~~~ ../fheroes2/game/game_static.cpp:203:27: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 203 | sec.estates = value; | ^~~~~ ../fheroes2/game/game_static.cpp:205:30: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 205 | sec.leadership = value; | ^~~~~ ../fheroes2/game/game_static.cpp:207:29: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 207 | sec.logistics = value; | ^~~~~ ../fheroes2/game/game_static.cpp:209:24: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 209 | sec.luck = value; | ^~~~~ ../fheroes2/game/game_static.cpp:211:29: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 211 | sec.mysticism = value; | ^~~~~ ../fheroes2/game/game_static.cpp:213:30: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 213 | sec.navigation = value; | ^~~~~ ../fheroes2/game/game_static.cpp:215:30: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 215 | sec.necromancy = value; | ^~~~~ ../fheroes2/game/game_static.cpp:217:31: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 217 | sec.pathfinding = value; | ^~~~~ ../fheroes2/game/game_static.cpp:219:28: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 219 | sec.scouting = value; | ^~~~~ ../fheroes2/game/game_static.cpp:221:26: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 221 | sec.wisdom = value; | ^~~~~ ../fheroes2/game/game_static.cpp: In function 'StreamBase& GameStatic::operator<<(StreamBase&, const GameStatic::Data&)': ../fheroes2/game/game_static.cpp:273:69: warning: unused parameter 'obj' [-Wunused-parameter] 273 | StreamBase & GameStatic::operator<<( StreamBase & msg, const Data & obj ) | ~~~~~~~~~~~~~^~~ ../fheroes2/game/game_static.cpp: In function 'StreamBase& GameStatic::operator>>(StreamBase&, GameStatic::Data&)': ../fheroes2/game/game_static.cpp:316:63: warning: unused parameter 'obj' [-Wunused-parameter] 316 | StreamBase & GameStatic::operator>>( StreamBase & msg, Data & obj ) | ~~~~~~~^~~ ../fheroes2/game/game_static.cpp: In function 'void GameStatic::SetSpell_DD_Distance(int)': ../fheroes2/game/game_static.cpp:460:25: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 460 | spell_dd_distance = v; | ^ ../fheroes2/game/game_static.cpp: In function 'void GameStatic::SetSpell_DD_SP(int)': ../fheroes2/game/game_static.cpp:465:19: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 465 | spell_dd_sp = v; | ^ ../fheroes2/game/game_static.cpp: In function 'void GameStatic::SetSpell_DD_HP(int)': ../fheroes2/game/game_static.cpp:470:19: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 470 | spell_dd_hp = v; | ^ ../fheroes2/game/game_static.cpp: In function 'void Game::CastleUpdateGrowth(const TiXmlElement*)': ../fheroes2/game/game_static.cpp:547:53: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 547 | GameStatic::castle_grown_well = value > 255 ? 255 : value; | ~~~~~~~~~~~~^~~~~~~~~~~~~ ../fheroes2/game/game_static.cpp:550:53: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 550 | GameStatic::castle_grown_wel2 = value > 255 ? 255 : value; | ~~~~~~~~~~~~^~~~~~~~~~~~~ ../fheroes2/game/game_static.cpp:553:56: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 553 | GameStatic::castle_grown_week_of = value > 255 ? 255 : value; | ~~~~~~~~~~~~^~~~~~~~~~~~~ ../fheroes2/game/game_static.cpp:556:57: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 556 | GameStatic::castle_grown_month_of = value > 255 ? 255 : value; | ~~~~~~~~~~~~^~~~~~~~~~~~~ ../fheroes2/game/game_static.cpp: In function 'void Game::KingdomUpdateStatic(const TiXmlElement*)': ../fheroes2/game/game_static.cpp:582:42: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 582 | GameStatic::kingdom_max_heroes = value; | ^~~~~ ../fheroes2/game/game_static.cpp: In function 'void Game::HeroesUpdateStatic(const TiXmlElement*)': ../fheroes2/game/game_static.cpp:592:51: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 592 | GameStatic::heroes_spell_points_day = value; | ^~~~~ ../fheroes2/game/game_static.cpp: In function 'void Game::GameOverUpdateStatic(const TiXmlElement*)': ../fheroes2/game/game_static.cpp:601:42: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 601 | GameStatic::gameover_lost_days = value; | ^~~~~ ../fheroes2/game/game_static.cpp: In function 'void Game::OverViewUpdateStatic(const TiXmlElement*)': ../fheroes2/game/game_static.cpp:611:48: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 611 | GameStatic::overview_distance[0] = value; | ^~~~~ ../fheroes2/game/game_static.cpp:615:48: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 615 | GameStatic::overview_distance[1] = value; | ^~~~~ ../fheroes2/game/game_static.cpp:619:48: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 619 | GameStatic::overview_distance[2] = value; | ^~~~~ ../fheroes2/game/game_static.cpp:623:48: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 623 | GameStatic::overview_distance[3] = value; | ^~~~~ ../fheroes2/game/game_static.cpp:627:48: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 627 | GameStatic::overview_distance[4] = value; | ^~~~~ ../fheroes2/game/game_static.cpp:631:48: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 631 | GameStatic::overview_distance[5] = value; | ^~~~~ ../fheroes2/game/game_static.cpp: In function 'void Game::WhirlpoolUpdateStatic(const TiXmlElement*)': ../fheroes2/game/game_static.cpp:640:70: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 640 | GameStatic::whirlpool_lost_percent = 0 < value && value < 90 ? value : 50; | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ../fheroes2/game/game_static.cpp: In function 'void Game::SkillUpdateStatic(const TiXmlElement*)': ../fheroes2/game/game_static.cpp:674:37: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 674 | ptr->initial_book = value; | ^~~~~ ../fheroes2/game/game_static.cpp:676:38: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 676 | ptr->initial_spell = value; | ^~~~~ ../fheroes2/game/game_static.cpp:692:39: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 692 | ptr->over_level = value; | ^~~~~ ../fheroes2/game/game_static.cpp:711:42: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 711 | ptr2->values.basic = value; | ^~~~~ ../fheroes2/game/game_static.cpp:713:45: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 713 | ptr2->values.advanced = value; | ^~~~~ ../fheroes2/game/game_static.cpp:715:43: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 715 | ptr2->values.expert = value; | ^~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: game_mainmenu.o ../fheroes2/game/game_mainmenu.cpp: In function 'int Game::MainMenu(bool)': ../fheroes2/game/game_mainmenu.cpp:98:35: warning: conversion from 'double' to 's16' {aka 'short int'} may change value [-Wfloat-conversion] 98 | const Rect resolutionArea( 63 * scaleX, 202 * scaleY, 90 * scaleX, 160 * scaleY ); | ~~~^~~~~~~~ ../fheroes2/game/game_mainmenu.cpp:98:49: warning: conversion from 'double' to 's16' {aka 'short int'} may change value [-Wfloat-conversion] 98 | const Rect resolutionArea( 63 * scaleX, 202 * scaleY, 90 * scaleX, 160 * scaleY ); | ~~~~^~~~~~~~ ../fheroes2/game/game_mainmenu.cpp:98:62: warning: conversion from 'double' to 'u16' {aka 'short unsigned int'} may change value [-Wfloat-conversion] 98 | const Rect resolutionArea( 63 * scaleX, 202 * scaleY, 90 * scaleX, 160 * scaleY ); | ~~~^~~~~~~~ ../fheroes2/game/game_mainmenu.cpp:98:76: warning: conversion from 'double' to 'u16' {aka 'short unsigned int'} may change value [-Wfloat-conversion] 98 | const Rect resolutionArea( 63 * scaleX, 202 * scaleY, 90 * scaleX, 160 * scaleY ); | ~~~~^~~~~~~~ In file included from ../fheroes2/gui/interface_icons.h:27, from ../fheroes2/game/game_interface.h:31, from ../fheroes2/game/game_mainmenu.cpp:28: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Castle*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Heroes*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: game_scenarioinfo.o ../fheroes2/game/game_scenarioinfo.cpp: In function 'int Game::ScenarioInfo()': ../fheroes2/game/game_scenarioinfo.cpp:108:59: warning: conversion from 'int32_t' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 108 | rectPanel = Rect( ( display.width() - panel.width() ) / 2, ( display.height() - panel.height() ) / 2, panel.width(), panel.height() ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ ../fheroes2/game/game_scenarioinfo.cpp:108:102: warning: conversion from 'int32_t' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 108 | rectPanel = Rect( ( display.width() - panel.width() ) / 2, ( display.height() - panel.height() ) / 2, panel.width(), panel.height() ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ ../fheroes2/game/game_scenarioinfo.cpp:108:118: warning: conversion from 'int32_t' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 108 | rectPanel = Rect( ( display.width() - panel.width() ) / 2, ( display.height() - panel.height() ) / 2, panel.width(), panel.height() ); | ~~~~~~~~~~~^~ ../fheroes2/game/game_scenarioinfo.cpp:108:134: warning: conversion from 'int32_t' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 108 | rectPanel = Rect( ( display.width() - panel.width() ) / 2, ( display.height() - panel.height() ) / 2, panel.width(), panel.height() ); | ~~~~~~~~~~~~^~ ../fheroes2/game/game_scenarioinfo.cpp:113:48: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 113 | const uint32_t ngextraWidth = ngextra.width(); | ~~~~~~~~~~~~~^~ ../fheroes2/game/game_scenarioinfo.cpp:114:50: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 114 | const uint32_t ngextraHeight = ngextra.height(); | ~~~~~~~~~~~~~~^~ ../fheroes2/game/game_scenarioinfo.cpp:115:74: warning: conversion from 'uint32_t' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 115 | coordDifficulty.push_back( Rect( rectPanel.x + 21, rectPanel.y + 91, ngextraWidth, ngextraHeight ) ); | ^~~~~~~~~~~~ ../fheroes2/game/game_scenarioinfo.cpp:115:88: warning: conversion from 'uint32_t' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 115 | coordDifficulty.push_back( Rect( rectPanel.x + 21, rectPanel.y + 91, ngextraWidth, ngextraHeight ) ); | ^~~~~~~~~~~~~ ../fheroes2/game/game_scenarioinfo.cpp:116:74: warning: conversion from 'uint32_t' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 116 | coordDifficulty.push_back( Rect( rectPanel.x + 98, rectPanel.y + 91, ngextraWidth, ngextraHeight ) ); | ^~~~~~~~~~~~ ../fheroes2/game/game_scenarioinfo.cpp:116:88: warning: conversion from 'uint32_t' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 116 | coordDifficulty.push_back( Rect( rectPanel.x + 98, rectPanel.y + 91, ngextraWidth, ngextraHeight ) ); | ^~~~~~~~~~~~~ ../fheroes2/game/game_scenarioinfo.cpp:117:75: warning: conversion from 'uint32_t' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 117 | coordDifficulty.push_back( Rect( rectPanel.x + 174, rectPanel.y + 91, ngextraWidth, ngextraHeight ) ); | ^~~~~~~~~~~~ ../fheroes2/game/game_scenarioinfo.cpp:117:89: warning: conversion from 'uint32_t' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 117 | coordDifficulty.push_back( Rect( rectPanel.x + 174, rectPanel.y + 91, ngextraWidth, ngextraHeight ) ); | ^~~~~~~~~~~~~ ../fheroes2/game/game_scenarioinfo.cpp:118:75: warning: conversion from 'uint32_t' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 118 | coordDifficulty.push_back( Rect( rectPanel.x + 251, rectPanel.y + 91, ngextraWidth, ngextraHeight ) ); | ^~~~~~~~~~~~ ../fheroes2/game/game_scenarioinfo.cpp:118:89: warning: conversion from 'uint32_t' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 118 | coordDifficulty.push_back( Rect( rectPanel.x + 251, rectPanel.y + 91, ngextraWidth, ngextraHeight ) ); | ^~~~~~~~~~~~~ ../fheroes2/game/game_scenarioinfo.cpp:119:75: warning: conversion from 'uint32_t' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 119 | coordDifficulty.push_back( Rect( rectPanel.x + 328, rectPanel.y + 91, ngextraWidth, ngextraHeight ) ); | ^~~~~~~~~~~~ ../fheroes2/game/game_scenarioinfo.cpp:119:89: warning: conversion from 'uint32_t' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 119 | coordDifficulty.push_back( Rect( rectPanel.x + 328, rectPanel.y + 91, ngextraWidth, ngextraHeight ) ); | ^~~~~~~~~~~~~ ../fheroes2/game/game_scenarioinfo.cpp:250:58: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 250 | levelCursor.setPosition( coordDifficulty[index].x, coordDifficulty[index].y ); | ^~~~~ ../fheroes2/game/game_scenarioinfo.cpp:250:84: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 250 | levelCursor.setPosition( coordDifficulty[index].x, coordDifficulty[index].y ); | ^~~~~ ../fheroes2/game/game_scenarioinfo.cpp: In function 'void RedrawDifficultyInfo(const Point&)': ../fheroes2/game/game_scenarioinfo.cpp:378:40: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 378 | Text text( Difficulty::String( current ), Font::SMALL ); | ^~~~~~~ ../fheroes2/game/game_scenarioinfo.cpp:379:24: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 379 | text.Blit( dst.x + offset + ( width - text.w() ) / 2, dst.y + height ); | ~~~~^ ../fheroes2/game/game_scenarioinfo.cpp:379:53: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 379 | text.Blit( dst.x + offset + ( width - text.w() ) / 2, dst.y + height ); | ~~~~~~^~ ../fheroes2/game/game_scenarioinfo.cpp:379:67: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 379 | text.Blit( dst.x + offset + ( width - text.w() ) / 2, dst.y + height ); | ~~~~^ ../fheroes2/game/game_scenarioinfo.cpp:379:35: warning: conversion to 's32' {aka 'int'} from 'unsigned int' may change the sign of the result [-Wsign-conversion] 379 | text.Blit( dst.x + offset + ( width - text.w() ) / 2, dst.y + height ); | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/game/game_scenarioinfo.cpp: In function 'void RedrawRatingInfo(TextSprite&)': ../fheroes2/game/game_scenarioinfo.cpp:387:53: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 387 | StringReplace( str, "%{rating}", Game::GetRating() ); | ~~~~~~~~~~~~~~~^~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/game/game_scenarioinfo.cpp:45: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ In file included from ../fheroes2/dialog/dialog_selectscenario.h:26, from ../fheroes2/game/game_scenarioinfo.cpp:30: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Castle*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Heroes*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Maps::FileInfo]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: game_startgame.o ../fheroes2/game/game_startgame.cpp: In function 'void ShowNewWeekDialog()': ../fheroes2/game/game_startgame.cpp:255:49: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 255 | StringReplace( message, "%{count}", count ); | ^~~~~ ../fheroes2/game/game_startgame.cpp: In function 'int ShowWarningLostTownsDialog()': ../fheroes2/game/game_startgame.cpp:295:64: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 295 | StringReplace( str, "%{day}", myKingdom.GetLostTownDays() ); | ~~~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/game/game_startgame.cpp: In static member function 'static int Interface::Basic::GetCursorFocusShipmaster(const Heroes&, const Maps::Tiles&)': ../fheroes2/game/game_startgame.cpp:335:90: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 335 | return water ? Cursor::DistanceThemes( Cursor::FIGHT, from_hero.GetRangeRouteDays( tile.GetIndex() ) ) : Cursor::POINTER; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ ../fheroes2/game/game_startgame.cpp:357:91: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 357 | return Cursor::DistanceThemes( Cursor::CHANGE, from_hero.GetRangeRouteDays( tile.GetIndex() ) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ ../fheroes2/game/game_startgame.cpp:361:90: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 361 | return Cursor::DistanceThemes( Cursor::FIGHT, from_hero.GetRangeRouteDays( tile.GetIndex() ) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ ../fheroes2/game/game_startgame.cpp:366:83: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 366 | return Cursor::DistanceThemes( Cursor::ANCHOR, from_hero.GetRangeRouteDays( tile.GetIndex() ) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ ../fheroes2/game/game_startgame.cpp:371:92: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 371 | return Cursor::DistanceThemes( Cursor::REDBOAT, from_hero.GetRangeRouteDays( tile.GetIndex() ) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ ../fheroes2/game/game_startgame.cpp:373:89: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 373 | return Cursor::DistanceThemes( Cursor::BOAT, from_hero.GetRangeRouteDays( tile.GetIndex() ) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ ../fheroes2/game/game_startgame.cpp: In static member function 'static int Interface::Basic::GetCursorFocusHeroes(const Heroes&, const Maps::Tiles&)': ../fheroes2/game/game_startgame.cpp:395:86: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 395 | return Cursor::DistanceThemes( Cursor::FIGHT, from_hero.GetRangeRouteDays( tile.GetIndex() ) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ ../fheroes2/game/game_startgame.cpp:411:91: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 411 | return Cursor::DistanceThemes( Cursor::ACTION, from_hero.GetRangeRouteDays( castle->GetIndex() ) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/game/game_startgame.cpp:415:90: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 415 | return Cursor::DistanceThemes( Cursor::FIGHT, from_hero.GetRangeRouteDays( castle->GetIndex() ) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/game/game_startgame.cpp:417:91: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 417 | return Cursor::DistanceThemes( Cursor::ACTION, from_hero.GetRangeRouteDays( castle->GetIndex() ) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/game/game_startgame.cpp:430:97: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 430 | int newcur = Cursor::DistanceThemes( Cursor::CHANGE, from_hero.GetRangeRouteDays( tile.GetIndex() ) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ ../fheroes2/game/game_startgame.cpp:434:97: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 434 | int newcur = Cursor::DistanceThemes( Cursor::CHANGE, from_hero.GetRangeRouteDays( tile.GetIndex() ) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ ../fheroes2/game/game_startgame.cpp:438:90: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 438 | return Cursor::DistanceThemes( Cursor::FIGHT, from_hero.GetRangeRouteDays( tile.GetIndex() ) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ ../fheroes2/game/game_startgame.cpp:443:137: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 443 | return from_hero.Modes( Heroes::GUARDIAN ) ? Cursor::POINTER : Cursor::DistanceThemes( Cursor::BOAT, from_hero.GetRangeRouteDays( tile.GetIndex() ) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ ../fheroes2/game/game_startgame.cpp:457:120: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 457 | return Cursor::DistanceThemes( ( protection ? Cursor::FIGHT : Cursor::ACTION ), from_hero.GetRangeRouteDays( tile.GetIndex() ) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ ../fheroes2/game/game_startgame.cpp:462:118: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 462 | return Cursor::DistanceThemes( ( protection ? Cursor::FIGHT : Cursor::MOVE ), from_hero.GetRangeRouteDays( tile.GetIndex() ) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ ../fheroes2/game/game_startgame.cpp: In member function 'int Interface::Basic::HumanTurn(bool)': ../fheroes2/game/game_startgame.cpp:920:72: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 920 | gameArea.ShiftCenter( Point( heroAnimationOffset.x * Game::HumanHeroAnimSkip(), heroAnimationOffset.y * Game::HumanHeroAnimSkip() ) ); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/game/game_startgame.cpp:920:123: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 920 | gameArea.ShiftCenter( Point( heroAnimationOffset.x * Game::HumanHeroAnimSkip(), heroAnimationOffset.y * Game::HumanHeroAnimSkip() ) ); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/game/game_startgame.cpp:1016:62: warning: unsigned conversion from 'int' to 'uint32_t' {aka 'unsigned int'} changes the value of '-20' [-Wsign-conversion] 1016 | fadeInfo.alpha += ( fadeInfo.isFadeOut ) ? -20 : 20; | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/game/game_startgame.cpp:51: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ In file included from ../fheroes2/gui/interface_icons.h:27, from ../fheroes2/game/game_interface.h:31, from ../fheroes2/game/game_startgame.cpp:38: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Castle*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Heroes*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: game_over.o ../fheroes2/game/game_over.cpp: In function 'std::string GameOver::GetActualDescription(int)': ../fheroes2/game/game_over.cpp:113:64: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 113 | StringReplace( msg, "%{count}", conf.WinsAccumulateGold() ); | ~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/game/game_over.cpp:141:43: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] 141 | StringReplace( msg, "%{day}", day + 1 ); | ~~~~^~~ ../fheroes2/game/game_over.cpp:142:45: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] 142 | StringReplace( msg, "%{week}", week + 1 ); | ~~~~~^~~ ../fheroes2/game/game_over.cpp:143:47: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] 143 | StringReplace( msg, "%{month}", month + 1 ); | ~~~~~~^~~ ../fheroes2/game/game_over.cpp: In function 'void GameOver::DialogWins(int)': ../fheroes2/game/game_over.cpp:201:65: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 201 | StringReplace( body, "%{count}", conf.WinsAccumulateGold() ); | ~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/game/game_over.cpp: In function 'void GameOver::DialogLoss(int)': ../fheroes2/game/game_over.cpp:236:65: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 236 | StringReplace( body, "%{count}", conf.WinsAccumulateGold() ); | ~~~~~~~~~~~~~~~~~~~~~~~^~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/game/game_over.cpp:34: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ In file included from ../fheroes2/gui/interface_icons.h:27, from ../fheroes2/game/game_interface.h:31, from ../fheroes2/game/game_over.cpp:28: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Castle*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Heroes*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: game_video.o ../fheroes2/game/game_video.cpp: In function 'size_t Video::ShowVideo(const string&, bool, const std::vector >&)': ../fheroes2/game/game_video.cpp:52:54: warning: conversion to 'long unsigned int' from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 52 | const fheroes2::Point offset( ( display.width() - video.width() ) / 2, ( display.height() - video.height() ) / 2 ); | ~~~~~~~~~~~~~^~ ../fheroes2/game/game_video.cpp:52:96: warning: conversion to 'long unsigned int' from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 52 | const fheroes2::Point offset( ( display.width() - video.width() ) / 2, ( display.height() - video.height() ) / 2 ); | ~~~~~~~~~~~~~~^~ ../fheroes2/game/game_video.cpp:52:75: warning: conversion to 'int' from 'long unsigned int' may change the sign of the result [-Wsign-conversion] 52 | const fheroes2::Point offset( ( display.width() - video.width() ) / 2, ( display.height() - video.height() ) / 2 ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ ../fheroes2/game/game_video.cpp:52:118: warning: conversion to 'int' from 'long unsigned int' may change the sign of the result [-Wsign-conversion] 52 | const fheroes2::Point offset( ( display.width() - video.width() ) / 2, ( display.height() - video.height() ) / 2 ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: cursor.o ../fheroes2/gui/cursor.cpp: In static member function 'static void Cursor::Redraw(s32, s32)': ../fheroes2/gui/cursor.cpp:86:26: warning: unused parameter 'x' [-Wunused-parameter] 86 | void Cursor::Redraw( s32 x, s32 y ) | ~~~~^ ../fheroes2/gui/cursor.cpp:86:33: warning: unused parameter 'y' [-Wunused-parameter] 86 | void Cursor::Redraw( s32 x, s32 y ) | ~~~~^ ../fheroes2/gui/cursor.cpp: In static member function 'static int Cursor::DistanceThemes(int, u32)': ../fheroes2/gui/cursor.cpp:198:16: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 198 | return theme + 6 * ( dist - 1 ); | ^~~~~ ../fheroes2/gui/cursor.cpp:198:22: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 198 | return theme + 6 * ( dist - 1 ); | ~~~~~~^~~~~~~~~~~~~~~~~~ ../fheroes2/gui/cursor.cpp:201:31: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 201 | return REDBOAT + dist - 1; | ~~~~~~~~~~~~~~~^~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: interface_border.o ../fheroes2/gui/interface_border.cpp: In member function 'void Interface::BorderWindow::SetPosition(s32, s32, u32, u32)': ../fheroes2/gui/interface_border.cpp:188:14: warning: conversion from 'u32' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 188 | area.w = pw; | ^~ ../fheroes2/gui/interface_border.cpp:189:14: warning: conversion from 'u32' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 189 | area.h = ph; | ^~ ../fheroes2/gui/interface_border.cpp: In member function 'void Interface::BorderWindow::SetPosition(s32, s32)': ../fheroes2/gui/interface_border.cpp:209:21: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 209 | area.x = px + border.BorderWidth(); | ~~~^~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/gui/interface_border.cpp:210:21: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 210 | area.y = py + border.BorderHeight(); | ~~~^~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/gui/interface_border.cpp:216:18: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 216 | area.x = px; | ^~ ../fheroes2/gui/interface_border.cpp:217:18: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 217 | area.y = py; | ^~ In file included from ../fheroes2/gui/interface_icons.h:27, from ../fheroes2/game/game_interface.h:31, from ../fheroes2/gui/interface_border.cpp:25: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Castle*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Heroes*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: game_newgame.o ../fheroes2/game/game_newgame.cpp: In function 'void {anonymous}::DrawCampaignScenarioIcon(int, double, double, int, const Point&)': ../fheroes2/game/game_newgame.cpp:60:90: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 60 | const fheroes2::Sprite & campaignMapIcon = fheroes2::AGG::GetICN( ICN::CAMPXTRG, icnId ); | ^~~~~ ../fheroes2/game/game_newgame.cpp:61:65: warning: conversion from 'double' to 'int32_t' {aka 'int'} may change value [-Wfloat-conversion] 61 | fheroes2::Blit( campaignMapIcon, display, offset.x + 40 + 73 * offsetXMultipler, offset.y + 356 + campaignMapIcon.height() * ( offsetYMultipler - 0.5 ) ); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/game/game_newgame.cpp:61:105: warning: conversion from 'double' to 'int32_t' {aka 'int'} may change value [-Wfloat-conversion] 61 | fheroes2::Blit( campaignMapIcon, display, offset.x + 40 + 73 * offsetXMultipler, offset.y + 356 + campaignMapIcon.height() * ( offsetYMultipler - 0.5 ) ); | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/game/game_newgame.cpp:64:69: warning: conversion from 'double' to 's32' {aka 'int'} may change value [-Wfloat-conversion] 64 | campaignMapText.Blit( offset.x + 40 + 73 * offsetXMultipler + campaignMapIcon.width(), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/game/game_newgame.cpp:65:102: warning: conversion from 'double' to 's32' {aka 'int'} may change value [-Wfloat-conversion] 65 | offset.y + 356 + campaignMapIcon.height() * ( offsetYMultipler + 0.5 ) - campaignMapText.h(), display ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ../fheroes2/game/game_newgame.cpp: In function 'int Game::NewHotSeat()': ../fheroes2/game/game_newgame.cpp:157:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 157 | conf.SetPreferablyCountPlayers( select ); | ^~~~~~ ../fheroes2/game/game_newgame.cpp: In function 'int Game::NewGame()': ../fheroes2/game/game_newgame.cpp:427:68: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 427 | const uint32_t panelOffset = fheroes2::Display::DEFAULT_HEIGHT - panel.height(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ../fheroes2/game/game_newgame.cpp:428:60: warning: conversion to 'unsigned int' from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 428 | const uint32_t panelXPos = back.width() - ( panel.width() + panelOffset ); | ~~~~~~~~~~~^~ ../fheroes2/game/game_newgame.cpp:428:42: warning: conversion to 'unsigned int' from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 428 | const uint32_t panelXPos = back.width() - ( panel.width() + panelOffset ); | ~~~~~~~~~~^~ ../fheroes2/game/game_newgame.cpp:429:37: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 429 | fheroes2::Blit( panel, display, panelXPos, panelOffset ); | ^~~~~~~~~ ../fheroes2/game/game_newgame.cpp:429:48: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 429 | fheroes2::Blit( panel, display, panelXPos, panelOffset ); | ^~~~~~~~~~~ ../fheroes2/game/game_newgame.cpp:431:96: warning: conversion to 'unsigned int' from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 431 | const uint32_t buttonMiddlePos = panelXPos + SHADOWWIDTH + ( panel.width() - SHADOWWIDTH ) / 2; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ ../fheroes2/game/game_newgame.cpp:433:52: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 433 | const uint32_t buttonWidth = buttonSample.width(); | ~~~~~~~~~~~~~~~~~~^~ ../fheroes2/game/game_newgame.cpp:437:42: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 437 | fheroes2::Button buttonStandartGame( buttonXPos, buttonYPos, ICN::BTNNEWGM, 0, 1 ); | ^~~~~~~~~~ ../fheroes2/game/game_newgame.cpp:438:41: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 438 | fheroes2::Button buttonCampainGame( buttonXPos, buttonYPos + buttonYStep * 1, ICN::BTNNEWGM, 2, 3 ); | ^~~~~~~~~~ ../fheroes2/game/game_newgame.cpp:439:39: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 439 | fheroes2::Button buttonMultiGame( buttonXPos, buttonYPos + buttonYStep * 2, ICN::BTNNEWGM, 4, 5 ); | ^~~~~~~~~~ ../fheroes2/game/game_newgame.cpp:440:40: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 440 | fheroes2::Button buttonBattleGame( buttonXPos, buttonYPos + buttonYStep * 3, ICN::BTNBATTLEONLY, 0, 1 ); | ^~~~~~~~~~ ../fheroes2/game/game_newgame.cpp:441:38: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 441 | fheroes2::Button buttonSettings( buttonXPos, buttonYPos + buttonYStep * 4, ICN::BTNDCCFG, 4, 5 ); | ^~~~~~~~~~ ../fheroes2/game/game_newgame.cpp:442:40: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 442 | fheroes2::Button buttonCancelGame( buttonXPos, buttonYPos + buttonYStep * 5, ICN::BTNNEWGM, 6, 7 ); | ^~~~~~~~~~ ../fheroes2/game/game_newgame.cpp: In function 'int Game::NewMulti()': ../fheroes2/game/game_newgame.cpp:522:68: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 522 | const uint32_t panelOffset = fheroes2::Display::DEFAULT_HEIGHT - panel.height(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ../fheroes2/game/game_newgame.cpp:523:60: warning: conversion to 'unsigned int' from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 523 | const uint32_t panelXPos = back.width() - ( panel.width() + panelOffset ); | ~~~~~~~~~~~^~ ../fheroes2/game/game_newgame.cpp:523:42: warning: conversion to 'unsigned int' from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 523 | const uint32_t panelXPos = back.width() - ( panel.width() + panelOffset ); | ~~~~~~~~~~^~ ../fheroes2/game/game_newgame.cpp:524:37: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 524 | fheroes2::Blit( panel, display, panelXPos, panelOffset ); | ^~~~~~~~~ ../fheroes2/game/game_newgame.cpp:524:48: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 524 | fheroes2::Blit( panel, display, panelXPos, panelOffset ); | ^~~~~~~~~~~ ../fheroes2/game/game_newgame.cpp:528:96: warning: conversion to 'unsigned int' from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 528 | const uint32_t buttonMiddlePos = panelXPos + SHADOWWIDTH + ( panel.width() - SHADOWWIDTH ) / 2; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ ../fheroes2/game/game_newgame.cpp:530:52: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 530 | const uint32_t buttonWidth = buttonSample.width(); | ~~~~~~~~~~~~~~~~~~^~ ../fheroes2/game/game_newgame.cpp:534:37: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 534 | fheroes2::Button buttonHotSeat( buttonXPos, buttonYPos, ICN::BTNMP, 0, 1 ); | ^~~~~~~~~~ ../fheroes2/game/game_newgame.cpp:535:37: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 535 | fheroes2::Button buttonNetwork( buttonXPos, buttonYPos + buttonYStep * 1, ICN::BTNMP, 2, 3 ); | ^~~~~~~~~~ ../fheroes2/game/game_newgame.cpp:536:40: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 536 | fheroes2::Button buttonCancelGame( buttonXPos, buttonYPos + buttonYStep * 5, ICN::BTNMP, 8, 9 ); | ^~~~~~~~~~ ../fheroes2/game/game_newgame.cpp: In function 'u32 Game::SelectCountPlayers()': ../fheroes2/game/game_newgame.cpp:592:68: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 592 | const uint32_t panelOffset = fheroes2::Display::DEFAULT_HEIGHT - panel.height(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ../fheroes2/game/game_newgame.cpp:593:60: warning: conversion to 'unsigned int' from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 593 | const uint32_t panelXPos = back.width() - ( panel.width() + panelOffset ); | ~~~~~~~~~~~^~ ../fheroes2/game/game_newgame.cpp:593:42: warning: conversion to 'unsigned int' from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 593 | const uint32_t panelXPos = back.width() - ( panel.width() + panelOffset ); | ~~~~~~~~~~^~ ../fheroes2/game/game_newgame.cpp:594:37: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 594 | fheroes2::Blit( panel, display, panelXPos, panelOffset ); | ^~~~~~~~~ ../fheroes2/game/game_newgame.cpp:594:48: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 594 | fheroes2::Blit( panel, display, panelXPos, panelOffset ); | ^~~~~~~~~~~ ../fheroes2/game/game_newgame.cpp:598:96: warning: conversion to 'unsigned int' from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 598 | const uint32_t buttonMiddlePos = panelXPos + SHADOWWIDTH + ( panel.width() - SHADOWWIDTH ) / 2; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ ../fheroes2/game/game_newgame.cpp:600:52: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 600 | const uint32_t buttonWidth = buttonSample.width(); | ~~~~~~~~~~~~~~~~~~^~ ../fheroes2/game/game_newgame.cpp:604:38: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 604 | fheroes2::Button button2Players( buttonXPos, buttonYPos, ICN::BTNHOTST, 0, 1 ); | ^~~~~~~~~~ ../fheroes2/game/game_newgame.cpp:605:38: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 605 | fheroes2::Button button3Players( buttonXPos, buttonYPos + buttonYStep * 1, ICN::BTNHOTST, 2, 3 ); | ^~~~~~~~~~ ../fheroes2/game/game_newgame.cpp:606:38: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 606 | fheroes2::Button button4Players( buttonXPos, buttonYPos + buttonYStep * 2, ICN::BTNHOTST, 4, 5 ); | ^~~~~~~~~~ ../fheroes2/game/game_newgame.cpp:607:38: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 607 | fheroes2::Button button5Players( buttonXPos, buttonYPos + buttonYStep * 3, ICN::BTNHOTST, 6, 7 ); | ^~~~~~~~~~ ../fheroes2/game/game_newgame.cpp:608:38: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 608 | fheroes2::Button button6Players( buttonXPos, buttonYPos + buttonYStep * 4, ICN::BTNHOTST, 8, 9 ); | ^~~~~~~~~~ ../fheroes2/game/game_newgame.cpp:609:36: warning: conversion to 'int32_t' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 609 | fheroes2::Button buttonCancel( buttonXPos, buttonYPos + buttonYStep * 5, ICN::BTNNEWGM, 6, 7 ); | ^~~~~~~~~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/game/game_newgame.cpp:37: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: interface_events.o In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/gui/interface_events.cpp:38: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ In file included from ../fheroes2/gui/interface_icons.h:27, from ../fheroes2/game/game_interface.h:31, from ../fheroes2/gui/interface_events.cpp:31: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Castle*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Heroes*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: interface_cpanel.o In file included from ../fheroes2/gui/interface_icons.h:27, from ../fheroes2/game/game_interface.h:31, from ../fheroes2/gui/interface_cpanel.cpp:26: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Castle*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Heroes*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: interface_focus.o ../fheroes2/gui/interface_focus.cpp: In function 'Point Interface::GetFocusCenter()': ../fheroes2/gui/interface_focus.cpp:206:29: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 206 | return Point( world.w() / 2, world.h() / 2 ); | ~~~~~~~~~~^~~ ../fheroes2/gui/interface_focus.cpp:206:44: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 206 | return Point( world.w() / 2, world.h() / 2 ); | ~~~~~~~~~~^~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/gui/interface_focus.cpp:34: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ In file included from ../fheroes2/gui/interface_icons.h:27, from ../fheroes2/game/game_interface.h:31, from ../fheroes2/gui/interface_focus.cpp:29: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Castle*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Heroes*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: interface_gamearea.o ../fheroes2/gui/interface_gamearea.cpp: In member function 'Rect Interface::GameArea::RectFixed(Point&, int, int) const': ../fheroes2/gui/interface_gamearea.cpp:58:72: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 58 | std::pair res = Rect::Fixed4Blit( Rect( dst.x, dst.y, rw, rh ), GetROI() ); | ^~ ../fheroes2/gui/interface_gamearea.cpp:58:76: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 58 | std::pair res = Rect::Fixed4Blit( Rect( dst.x, dst.y, rw, rh ), GetROI() ); | ^~ ../fheroes2/gui/interface_gamearea.cpp: In member function 'void Interface::GameArea::Build()': ../fheroes2/gui/interface_gamearea.cpp:68:45: warning: conversion to 'u32' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 68 | SetAreaPosition( 0, 0, display.width(), display.height() ); | ~~~~~~~~~~~~~^~ ../fheroes2/gui/interface_gamearea.cpp:68:63: warning: conversion to 'u32' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 68 | SetAreaPosition( 0, 0, display.width(), display.height() ); | ~~~~~~~~~~~~~~^~ ../fheroes2/gui/interface_gamearea.cpp:70:81: warning: conversion to 'u32' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 70 | SetAreaPosition( BORDERWIDTH, BORDERWIDTH, display.width() - RADARWIDTH - 3 * BORDERWIDTH, display.height() - 2 * BORDERWIDTH ); ../fheroes2/gui/interface_gamearea.cpp:70:117: warning: conversion to 'u32' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 70 | SetAreaPosition( BORDERWIDTH, BORDERWIDTH, display.width() - RADARWIDTH - 3 * BORDERWIDTH, display.height() - 2 * BORDERWIDTH ); ../fheroes2/gui/interface_gamearea.cpp: In member function 'void Interface::GameArea::SetAreaPosition(s32, s32, u32, u32)': ../fheroes2/gui/interface_gamearea.cpp:75:24: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 75 | _windowROI = Rect( x, y, w, h ); | ^ ../fheroes2/gui/interface_gamearea.cpp:75:27: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 75 | _windowROI = Rect( x, y, w, h ); | ^ ../fheroes2/gui/interface_gamearea.cpp:75:30: warning: conversion from 'u32' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 75 | _windowROI = Rect( x, y, w, h ); | ^ ../fheroes2/gui/interface_gamearea.cpp:75:33: warning: conversion from 'u32' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 75 | _windowROI = Rect( x, y, w, h ); | ^ ../fheroes2/gui/interface_gamearea.cpp:76:44: warning: conversion from 's32' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 76 | const Size worldSize = Size( world.w() * TILEWIDTH, world.h() * TILEWIDTH ); ../fheroes2/gui/interface_gamearea.cpp:76:67: warning: conversion from 's32' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 76 | const Size worldSize = Size( world.w() * TILEWIDTH, world.h() * TILEWIDTH ); ../fheroes2/gui/interface_gamearea.cpp:80:38: warning: conversion from 'u32' {aka 'unsigned int'} to 'int16_t' {aka 'short int'} may change value [-Wconversion] 80 | _maxLeftOffset = worldSize.w - w / 2; | ~~~~~~~~~~~~^~~~~~~ ../fheroes2/gui/interface_gamearea.cpp:89:37: warning: conversion from 'u32' {aka 'unsigned int'} to 'int16_t' {aka 'short int'} may change value [-Wconversion] 89 | _maxTopOffset = worldSize.h - h / 2; | ~~~~~~~~~~~~^~~~~~~ ../fheroes2/gui/interface_gamearea.cpp:97:65: warning: conversion from 'u32' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 97 | _visibleTileCount = Size( ( w + TILEWIDTH - 1 ) / TILEWIDTH + 1, ( h + TILEWIDTH - 1 ) / TILEWIDTH + 1 ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ ../fheroes2/gui/interface_gamearea.cpp:97:104: warning: conversion from 'u32' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 97 | _visibleTileCount = Size( ( w + TILEWIDTH - 1 ) / TILEWIDTH + 1, ( h + TILEWIDTH - 1 ) / TILEWIDTH + 1 ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ ../fheroes2/gui/interface_gamearea.cpp:99:40: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 99 | _setCenterToTile( Point( world.w() / 2, world.h() / 2 ) ); | ~~~~~~~~~~^~~ ../fheroes2/gui/interface_gamearea.cpp:99:55: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 99 | _setCenterToTile( Point( world.w() / 2, world.h() / 2 ) ); | ~~~~~~~~~~^~~ ../fheroes2/gui/interface_gamearea.cpp: In member function 'void Interface::GameArea::BlitOnTile(fheroes2::Image&, const fheroes2::Image&, int32_t, int32_t, const Point&, bool, uint8_t) const': ../fheroes2/gui/interface_gamearea.cpp:109:58: warning: conversion from 'int32_t' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 109 | Point dstpt = GetRelativeTilePosition( mp ) + Point( ox, oy ); | ^~ ../fheroes2/gui/interface_gamearea.cpp:109:62: warning: conversion from 'int32_t' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 109 | Point dstpt = GetRelativeTilePosition( mp ) + Point( ox, oy ); | ^~ ../fheroes2/gui/interface_gamearea.cpp:118:41: warning: conversion from 'int32_t' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 118 | else if ( _windowROI & Rect( dstpt, width, height ) ) { | ^~~~~ ../fheroes2/gui/interface_gamearea.cpp:118:48: warning: conversion from 'int32_t' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 118 | else if ( _windowROI & Rect( dstpt, width, height ) ) { | ^~~~~~ ../fheroes2/gui/interface_gamearea.cpp: In member function 'void Interface::GameArea::DrawTile(fheroes2::Image&, const fheroes2::Image&, const Point&) const': ../fheroes2/gui/interface_gamearea.cpp:135:41: warning: conversion from 'int32_t' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 135 | else if ( _windowROI & Rect( dstpt, width, height ) ) { | ^~~~~ ../fheroes2/gui/interface_gamearea.cpp:135:48: warning: conversion from 'int32_t' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 135 | else if ( _windowROI & Rect( dstpt, width, height ) ) { | ^~~~~~ ../fheroes2/gui/interface_gamearea.cpp: In member function 'void Interface::GameArea::Redraw(fheroes2::Image&, int, bool) const': ../fheroes2/gui/interface_gamearea.cpp:153:38: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 153 | offset.x = tileROI.x + x; | ~~~~~~~~~~^~~ ../fheroes2/gui/interface_gamearea.cpp:159:38: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 159 | offset.x = tileROI.x + x; | ~~~~~~~~~~^~~ ../fheroes2/gui/interface_gamearea.cpp:165:71: warning: conversion to 'u32' {aka 'unsigned int'} from 's16' {aka 'short int'} may change the sign of the result [-Wsign-conversion] 165 | const Maps::Tiles & tile = world.GetTiles( offset.x, offset.y ); | ~~~~~~~^ ../fheroes2/gui/interface_gamearea.cpp:165:81: warning: conversion to 'u32' {aka 'unsigned int'} from 's16' {aka 'short int'} may change the sign of the result [-Wsign-conversion] 165 | const Maps::Tiles & tile = world.GetTiles( offset.x, offset.y ); | ~~~~~~~^ ../fheroes2/gui/interface_gamearea.cpp:191:60: warning: conversion to 'u32' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 191 | const Maps::Tiles & tile = world.GetTiles( offsetX, offsetY ); | ^~~~~~~ ../fheroes2/gui/interface_gamearea.cpp:191:69: warning: conversion to 'u32' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 191 | const Maps::Tiles & tile = world.GetTiles( offsetX, offsetY ); | ^~~~~~~ ../fheroes2/gui/interface_gamearea.cpp:211:56: warning: conversion to 'u32' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 211 | const Maps::Tiles & tile = world.GetTiles( offsetX, offsetY ); | ^~~~~~~ ../fheroes2/gui/interface_gamearea.cpp:211:65: warning: conversion to 'u32' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 211 | const Maps::Tiles & tile = world.GetTiles( offsetX, offsetY ); | ^~~~~~~ ../fheroes2/gui/interface_gamearea.cpp:221:76: warning: conversion from 'int32_t' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 221 | heroList.emplace_back( GetRelativeTilePosition( Point( offsetX, offsetY ) ), hero ); | ^~~~~~~ ../fheroes2/gui/interface_gamearea.cpp:221:85: warning: conversion from 'int32_t' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 221 | heroList.emplace_back( GetRelativeTilePosition( Point( offsetX, offsetY ) ), hero ); | ^~~~~~~ ../fheroes2/gui/interface_gamearea.cpp:238:104: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 238 | const fheroes2::Sprite & sprite = fheroes2::AGG::GetICN( ICN::MINIMON, monsterIndicies.first ); | ~~~~~~~~~~~~~~~~^~~~~ ../fheroes2/gui/interface_gamearea.cpp:239:103: warning: conversion from 'uint32_t' {aka 'unsigned int'} to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 239 | BlitOnTile( dst, sprite, sprite.x() + 16, sprite.y() + TILEWIDTH, mp, false, fadeInfo.alpha ); | ~~~~~~~~~^~~~~ ../fheroes2/gui/interface_gamearea.cpp:243:104: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 243 | const fheroes2::Sprite & sprite = fheroes2::AGG::GetICN( ICN::MINIMON, monsterIndicies.second ); | ~~~~~~~~~~~~~~~~^~~~~~ ../fheroes2/gui/interface_gamearea.cpp:244:103: warning: conversion from 'uint32_t' {aka 'unsigned int'} to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 244 | BlitOnTile( dst, sprite, sprite.x() + 16, sprite.y() + TILEWIDTH, mp, false, fadeInfo.alpha ); | ~~~~~~~~~^~~~~ ../fheroes2/gui/interface_gamearea.cpp:249:99: warning: conversion from 'uint32_t' {aka 'unsigned int'} to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 249 | BlitOnTile( dst, sprite, sprite.x(), sprite.y() + TILEWIDTH - 11, mp, false, fadeInfo.alpha ); | ~~~~~~~~~^~~~~ ../fheroes2/gui/interface_gamearea.cpp:253:82: warning: conversion from 'uint32_t' {aka 'unsigned int'} to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 253 | BlitOnTile( dst, sprite, sprite.x(), sprite.y(), mp, false, fadeInfo.alpha ); | ~~~~~~~~~^~~~~ ../fheroes2/gui/interface_gamearea.cpp:288:71: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 288 | uint32_t cost = Maps::Ground::GetPenalty( tileTo, pathfinding ); | ^~~~~~~~~~~ ../fheroes2/gui/interface_gamearea.cpp:293:121: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 293 | index = Route::Path::GetIndexSprite( ( *currentStep ).GetDirection(), ( *nextStep ).GetDirection(), cost ); | ^~~~ ../fheroes2/gui/interface_gamearea.cpp:293:56: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 293 | index = Route::Path::GetIndexSprite( ( *currentStep ).GetDirection(), ( *nextStep ).GetDirection(), cost ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/gui/interface_gamearea.cpp:335:60: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 335 | const Maps::Tiles & tile = world.GetTiles( offsetX, offsetY ); | ^~~~~~~ ../fheroes2/gui/interface_gamearea.cpp:335:69: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 335 | const Maps::Tiles & tile = world.GetTiles( offsetX, offsetY ); | ^~~~~~~ ../fheroes2/gui/interface_gamearea.cpp: In member function 'void Interface::GameArea::Scroll()': ../fheroes2/gui/interface_gamearea.cpp:346:54: warning: conversion from 'int' to 'int16_t' {aka 'short int'} may change value [-Wconversion] 346 | const int16_t speed = Settings::Get().ScrollSpeed(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/gui/interface_gamearea.cpp: In static member function 'static fheroes2::Image Interface::GameArea::GenerateUltimateArtifactAreaSurface(int32_t)': ../fheroes2/gui/interface_gamearea.cpp:393:49: warning: conversion to 'u32' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 393 | gamearea.SetAreaPosition( 0, 0, result.width(), result.height() ); | ~~~~~~~~~~~~^~ ../fheroes2/gui/interface_gamearea.cpp:393:66: warning: conversion to 'u32' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 393 | gamearea.SetAreaPosition( 0, 0, result.width(), result.height() ); | ~~~~~~~~~~~~~^~ ../fheroes2/gui/interface_gamearea.cpp:402:52: warning: conversion from 'int32_t' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 402 | + Point( result.width() / 2, result.height() / 2 ) ); | ~~~~~~~~~~~~~~~^~~ ../fheroes2/gui/interface_gamearea.cpp:402:73: warning: conversion from 'int32_t' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 402 | + Point( result.width() / 2, result.height() / 2 ) ); | ~~~~~~~~~~~~~~~~^~~ ../fheroes2/gui/interface_gamearea.cpp: In member function 'void Interface::GameArea::QueueEventProcessing()': ../fheroes2/gui/interface_gamearea.cpp:508:62: warning: conversion from 'int' to 'int16_t' {aka 'short int'} may change value [-Wconversion] 508 | const int16_t speed = Settings::Get().ScrollSpeed(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/gui/interface_gamearea.cpp:560:90: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 560 | const Point tilePos( ( tileOffset.x / TILEWIDTH ) * TILEWIDTH - _topLeftTileOffset.x + _windowROI.x, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ ../fheroes2/gui/interface_gamearea.cpp:561:90: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 561 | ( tileOffset.y / TILEWIDTH ) * TILEWIDTH - _topLeftTileOffset.y + _windowROI.x ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ ../fheroes2/gui/interface_gamearea.cpp: In member function 'Point Interface::GameArea::_middlePoint() const': ../fheroes2/gui/interface_gamearea.cpp:573:32: warning: conversion to 's16' {aka 'short int'} from 'int' may change the sign of the result [-Wsign-conversion] 573 | return Point( _windowROI.w / 2, _windowROI.h / 2 ); | ~~~~~~~~~~~~~^~~ ../fheroes2/gui/interface_gamearea.cpp:573:50: warning: conversion to 's16' {aka 'short int'} from 'int' may change the sign of the result [-Wsign-conversion] 573 | return Point( _windowROI.w / 2, _windowROI.h / 2 ); | ~~~~~~~~~~~~~^~~ ../fheroes2/gui/interface_gamearea.cpp: In member function 'Point Interface::GameArea::_getStartTileId() const': ../fheroes2/gui/interface_gamearea.cpp:578:50: warning: conversion from 'int' to 'int16_t' {aka 'short int'} may change value [-Wconversion] 578 | const int16_t x = ( _topLeftTileOffset.x < 0 ? ( _topLeftTileOffset.x - TILEWIDTH - 1 ) / TILEWIDTH : _topLeftTileOffset.x / TILEWIDTH ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/gui/interface_gamearea.cpp:579:50: warning: conversion from 'int' to 'int16_t' {aka 'short int'} may change value [-Wconversion] 579 | const int16_t y = ( _topLeftTileOffset.y < 0 ? ( _topLeftTileOffset.y - TILEWIDTH - 1 ) / TILEWIDTH : _topLeftTileOffset.y / TILEWIDTH ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/gui/interface_gamearea.cpp: In member function 'void Interface::GameArea::_setCenterToTile(const Point&)': ../fheroes2/gui/interface_gamearea.cpp:586:43: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 586 | _setCenter( Point( tile.x * TILEWIDTH + TILEWIDTH / 2, tile.y * TILEWIDTH + TILEWIDTH / 2 ) ); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ ../fheroes2/gui/interface_gamearea.cpp:586:79: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 586 | _setCenter( Point( tile.x * TILEWIDTH + TILEWIDTH / 2, tile.y * TILEWIDTH + TILEWIDTH / 2 ) ); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ ../fheroes2/gui/interface_gamearea.cpp: In member function 'Point Interface::GameArea::GetRelativeTilePosition(const Point&) const': ../fheroes2/gui/interface_gamearea.cpp:623:63: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 623 | return Point( tileId.x * TILEWIDTH - _topLeftTileOffset.x + _windowROI.x, tileId.y * TILEWIDTH - _topLeftTileOffset.y + _windowROI.y ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ ../fheroes2/gui/interface_gamearea.cpp:623:123: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 623 | return Point( tileId.x * TILEWIDTH - _topLeftTileOffset.x + _windowROI.x, tileId.y * TILEWIDTH - _topLeftTileOffset.y + _windowROI.y ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/gui/interface_gamearea.cpp:33: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ In file included from ../fheroes2/gui/interface_icons.h:27, from ../fheroes2/game/game_interface.h:31, from ../fheroes2/gui/interface_gamearea.cpp:27: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Castle*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Heroes*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: interface_buttons.o In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/gui/interface_buttons.cpp:30: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ In file included from ../fheroes2/gui/interface_icons.h:27, from ../fheroes2/game/game_interface.h:31, from ../fheroes2/gui/interface_buttons.cpp:27: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Castle*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Heroes*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: interface_radar.o ../fheroes2/gui/interface_radar.cpp: In member function 'void Interface::Radar::Generate()': ../fheroes2/gui/interface_radar.cpp:141:56: warning: conversion to 'u32' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 141 | const Maps::Tiles & tile = world.GetTiles( xx, yy ); | ^~ ../fheroes2/gui/interface_radar.cpp:141:60: warning: conversion to 'u32' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 141 | const Maps::Tiles & tile = world.GetTiles( xx, yy ); | ^~ ../fheroes2/gui/interface_radar.cpp: In member function 'void Interface::Radar::RedrawObjects(int)': ../fheroes2/gui/interface_radar.cpp:261:56: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 261 | const Maps::Tiles & tile = world.GetTiles( xx, yy ); | ^~ ../fheroes2/gui/interface_radar.cpp:261:60: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 261 | const Maps::Tiles & tile = world.GetTiles( xx, yy ); | ^~ ../fheroes2/gui/interface_radar.cpp: In member function 'void Interface::Radar::QueueEventProcessing()': ../fheroes2/gui/interface_radar.cpp:374:74: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 374 | gamearea.SetCenter( Point( ( pt.x - rect.x ) * world.w() / rect.w, ( pt.y - rect.y ) * world.h() / rect.h ) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~ ../fheroes2/gui/interface_radar.cpp:374:114: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 374 | gamearea.SetCenter( Point( ( pt.x - rect.x ) * world.w() / rect.w, ( pt.y - rect.y ) * world.h() / rect.h ) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~ ../fheroes2/gui/interface_radar.cpp:390:44: warning: conversion from 's32' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 390 | newSize = Size( world.w(), world.h() ); | ~~~~~~~^~ ../fheroes2/gui/interface_radar.cpp:390:55: warning: conversion from 's32' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 390 | newSize = Size( world.w(), world.h() ); | ~~~~~~~^~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/gui/interface_radar.cpp:33: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ In file included from ../fheroes2/gui/interface_icons.h:27, from ../fheroes2/game/game_interface.h:31, from ../fheroes2/gui/interface_radar.cpp:29: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Castle*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Heroes*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: interface_status.o ../fheroes2/gui/interface_status.cpp: In static member function 'static u32 Interface::StatusWindow::ResetResourceStatus(u32, void*)': ../fheroes2/gui/interface_status.cpp:63:55: warning: unused parameter 'tick' [-Wunused-parameter] 63 | u32 Interface::StatusWindow::ResetResourceStatus( u32 tick, void * ptr ) | ~~~~^~~~ ../fheroes2/gui/interface_status.cpp: In member function 'virtual void Interface::StatusWindow::SetPos(s32, s32)': ../fheroes2/gui/interface_status.cpp:95:58: warning: conversion to 'u32' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 95 | oh = fheroes2::Display::instance().height() - oy - BORDERWIDTH; ../fheroes2/gui/interface_status.cpp: In member function 'void Interface::StatusWindow::Redraw()': ../fheroes2/gui/interface_status.cpp:122:48: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 122 | const uint32_t stonHeight = ston.height(); | ~~~~~~~~~~~^~ ../fheroes2/gui/interface_status.cpp:130:45: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] 130 | DrawKingdomInfo( stonHeight + 5 ); | ~~~~~~~~~~~^~~ ../fheroes2/gui/interface_status.cpp:133:50: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] 133 | DrawArmyInfo( 2 * stonHeight + 10 ); | ~~~~~~~~~~~~~~~^~~~ ../fheroes2/gui/interface_status.cpp:135:54: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] 135 | DrawResourceInfo( 2 * stonHeight + 10 ); | ~~~~~~~~~~~~~~~^~~~ ../fheroes2/gui/interface_status.cpp: In member function 'void Interface::StatusWindow::DrawKingdomInfo(int) const': ../fheroes2/gui/interface_status.cpp:187:51: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 187 | Text text( GetString( myKingdom.GetCountCastle() ), Font::SMALL ); | ~~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/gui/interface_status.cpp:190:48: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 190 | text.Set( GetString( myKingdom.GetCountTown() ) ); | ~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/gui/interface_status.cpp: In member function 'void Interface::StatusWindow::DrawDayInfo(int) const': ../fheroes2/gui/interface_status.cpp:223:36: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 223 | uint32_t icnId = dayOfWeek > 1 ? 0 : ( ( weekOfMonth - 1 ) % 4 ) + 1; | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/gui/interface_status.cpp: In member function 'void Interface::StatusWindow::DrawResourceInfo(int) const': ../fheroes2/gui/interface_status.cpp:278:26: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 278 | text.Set( GetString( countLastResource ), Font::SMALL, pos.w ); | ^~~~~~~~~~~~~~~~~ ../fheroes2/gui/interface_status.cpp: In member function 'void Interface::StatusWindow::DrawAITurns() const': ../fheroes2/gui/interface_status.cpp:340:79: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 340 | const fheroes2::Sprite & crest = fheroes2::AGG::GetICN( ICN::BRCREST, color_index ); | ^~~~~~~~~~~ ../fheroes2/gui/interface_status.cpp: In member function 'void Interface::StatusWindow::DrawBackground() const': ../fheroes2/gui/interface_status.cpp:372:58: warning: conversion to 'unsigned int' from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 372 | const uint32_t count = ( pos.h - ( icnston.height() - copyHeight ) ) / copyHeight; | ~~~~~~~~~~~~~~^~ ../fheroes2/gui/interface_status.cpp:374:49: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 374 | dstpt = fheroes2::Point( pos.x, pos.y + copyHeight * i + startY ); | ~~~~^ ../fheroes2/gui/interface_status.cpp:374:68: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] 374 | dstpt = fheroes2::Point( pos.x, pos.y + copyHeight * i + startY ); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~ ../fheroes2/gui/interface_status.cpp:379:75: warning: conversion to 'unsigned int' from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 379 | srcrt = fheroes2::Rect( 0, startY, icnston.width(), icnston.height() - startY ); | ~~~~~~~~~~~~~~^~ ../fheroes2/gui/interface_status.cpp:379:78: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] 379 | srcrt = fheroes2::Rect( 0, startY, icnston.width(), icnston.height() - startY ); | ~~~~~~~~~~~~~~~~~^~~~~~~~ ../fheroes2/gui/interface_status.cpp:380:73: warning: conversion to 'unsigned int' from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 380 | dstpt = fheroes2::Point( pos.x, pos.y + pos.h - ( icnston.height() - startY ) ); | ~~~~~~~~~~~~~~^~ ../fheroes2/gui/interface_status.cpp:380:47: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 380 | dstpt = fheroes2::Point( pos.x, pos.y + pos.h - ( icnston.height() - startY ) ); | ~~~~~~^~~~~~~ ../fheroes2/gui/interface_status.cpp:380:55: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] 380 | dstpt = fheroes2::Point( pos.x, pos.y + pos.h - ( icnston.height() - startY ) ); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/gui/interface_status.cpp:36: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ In file included from ../fheroes2/gui/interface_icons.h:27, from ../fheroes2/game/game_interface.h:31, from ../fheroes2/gui/interface_status.cpp:29: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Castle*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Heroes*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: player_info.o ../fheroes2/gui/player_info.cpp: In member function 'void Interface::PlayersInfo::UpdateInfo(Players&, const Point&, const Point&)': ../fheroes2/gui/player_info.cpp:52:42: warning: conversion to 'u32' {aka 'unsigned int'} from 'std::__iterator_traits<__gnu_cxx::__normal_iterator >, void>::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 52 | const u32 current = std::distance( players.begin(), it ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/gui/player_info.cpp:56:79: warning: conversion to 'u32' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 56 | info.rect1 = Rect( pt1.x + Game::GetStep4Player( current, sprite.width(), players.size() ), pt1.y, sprite.width(), sprite.height() ); | ~~~~~~~~~~~~^~ ../fheroes2/gui/player_info.cpp:56:32: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 56 | info.rect1 = Rect( pt1.x + Game::GetStep4Player( current, sprite.width(), players.size() ), pt1.y, sprite.width(), sprite.height() ); | ~~~~^ ../fheroes2/gui/player_info.cpp:56:34: warning: conversion from 'u32' {aka 'unsigned int'} to 's16' {aka 'short int'} may change value [-Wconversion] 56 | info.rect1 = Rect( pt1.x + Game::GetStep4Player( current, sprite.width(), players.size() ), pt1.y, sprite.width(), sprite.height() ); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/gui/player_info.cpp:56:120: warning: conversion from 'int32_t' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 56 | info.rect1 = Rect( pt1.x + Game::GetStep4Player( current, sprite.width(), players.size() ), pt1.y, sprite.width(), sprite.height() ); | ~~~~~~~~~~~~^~ ../fheroes2/gui/player_info.cpp:56:137: warning: conversion from 'int32_t' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 56 | info.rect1 = Rect( pt1.x + Game::GetStep4Player( current, sprite.width(), players.size() ), pt1.y, sprite.width(), sprite.height() ); | ~~~~~~~~~~~~~^~ ../fheroes2/gui/player_info.cpp:57:79: warning: conversion to 'u32' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 57 | info.rect2 = Rect( pt2.x + Game::GetStep4Player( current, sprite.width(), players.size() ), pt2.y, sprite.width(), sprite.height() ); | ~~~~~~~~~~~~^~ ../fheroes2/gui/player_info.cpp:57:32: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 57 | info.rect2 = Rect( pt2.x + Game::GetStep4Player( current, sprite.width(), players.size() ), pt2.y, sprite.width(), sprite.height() ); | ~~~~^ ../fheroes2/gui/player_info.cpp:57:34: warning: conversion from 'u32' {aka 'unsigned int'} to 's16' {aka 'short int'} may change value [-Wconversion] 57 | info.rect2 = Rect( pt2.x + Game::GetStep4Player( current, sprite.width(), players.size() ), pt2.y, sprite.width(), sprite.height() ); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/gui/player_info.cpp:57:120: warning: conversion from 'int32_t' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 57 | info.rect2 = Rect( pt2.x + Game::GetStep4Player( current, sprite.width(), players.size() ), pt2.y, sprite.width(), sprite.height() ); | ~~~~~~~~~~~~^~ ../fheroes2/gui/player_info.cpp:57:137: warning: conversion from 'int32_t' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 57 | info.rect2 = Rect( pt2.x + Game::GetStep4Player( current, sprite.width(), players.size() ), pt2.y, sprite.width(), sprite.height() ); | ~~~~~~~~~~~~~^~ ../fheroes2/gui/player_info.cpp:68:95: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 68 | ( *it ).rect3 = Rect( rect1.x + rect1.w + ( rect2.x - ( rect1.x + rect1.w ) ) / 2 - 5, rect1.y + rect1.h + 20, iconSprite.width(), iconSprite.height() ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ ../fheroes2/gui/player_info.cpp:68:118: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 68 | ( *it ).rect3 = Rect( rect1.x + rect1.w + ( rect2.x - ( rect1.x + rect1.w ) ) / 2 - 5, rect1.y + rect1.h + 20, iconSprite.width(), iconSprite.height() ); | ~~~~~~~~~~~~~~~~~~^~~~ ../fheroes2/gui/player_info.cpp:68:140: warning: conversion from 'int32_t' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 68 | ( *it ).rect3 = Rect( rect1.x + rect1.w + ( rect2.x - ( rect1.x + rect1.w ) ) / 2 - 5, rect1.y + rect1.h + 20, iconSprite.width(), iconSprite.height() ); | ~~~~~~~~~~~~~~~~^~ ../fheroes2/gui/player_info.cpp:68:161: warning: conversion from 'int32_t' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 68 | ( *it ).rect3 = Rect( rect1.x + rect1.w + ( rect2.x - ( rect1.x + rect1.w ) ) / 2 - 5, rect1.y + rect1.h + 20, iconSprite.width(), iconSprite.height() ); | ~~~~~~~~~~~~~~~~~^~ ../fheroes2/gui/player_info.cpp: In member function 'Player* Interface::PlayersInfo::GetFromOpponentNameClick(const Point&)': ../fheroes2/gui/player_info.cpp:85:53: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 85 | if ( Rect( ( *it ).rect1.x, ( *it ).rect1.y + ( *it ).rect1.h, ( *it ).rect1.w, 10 ) & pt ) | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~ ../fheroes2/gui/player_info.cpp: In member function 'void Interface::PlayersInfo::RedrawInfo(bool) const': ../fheroes2/gui/player_info.cpp:115:58: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 115 | const u32 humans_colors = conf.GetPlayers().GetColors( CONTROL_HUMAN, true ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/gui/player_info.cpp:127:45: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 127 | if ( humans_colors & player.GetColor() ) | ~~~~~~~~~~~~~~~^~ ../fheroes2/gui/player_info.cpp:128:23: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 128 | index = 9 + Color::GetIndex( player.GetColor() ); | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/gui/player_info.cpp:133:54: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 133 | index = ( player.isPlay() ? 3 : 15 ) + Color::GetIndex( player.GetColor() ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/gui/player_info.cpp:136:28: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 136 | index = 15 + Color::GetIndex( player.GetColor() ); | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/gui/player_info.cpp:142:54: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 142 | index = ( player.isPlay() ? 3 : 15 ) + Color::GetIndex( player.GetColor() ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/gui/player_info.cpp:145:27: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 145 | index = 3 + Color::GetIndex( player.GetColor() ); | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/gui/player_info.cpp: In member function 'bool Interface::PlayersInfo::QueueEventProcessing()': ../fheroes2/gui/player_info.cpp:251:47: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 251 | u32 humans = players.GetColors( CONTROL_HUMAN, true ); | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/gui/player_info.cpp:261:58: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 261 | if ( !( humans & player->GetColor() ) ) { | ~~~~~~~~~~~~~~~~^~ ../fheroes2/gui/player_info.cpp:276:47: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 276 | players.SetPlayerControl( humans, CONTROL_AI | CONTROL_HUMAN ); | ^~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: interface_icons.o ../fheroes2/gui/interface_icons.cpp: In member function 'void Interface::IconsBar::RedrawBackground(const Point&)': ../fheroes2/gui/interface_icons.cpp:150:57: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 150 | fheroes2::Blit( back, display, pos.x + 5, pos.y + 5 + ii * ( IconsBar::GetItemHeight() + 10 ) ); | ~~~~~~^~~ ../fheroes2/gui/interface_icons.cpp:150:61: warning: conversion to 'int32_t' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 150 | fheroes2::Blit( back, display, pos.x + 5, pos.y + 5 + ii * ( IconsBar::GetItemHeight() + 10 ) ); | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/gui/interface_icons.cpp: In member function 'void Interface::CastleIcons::SetPos(s32, s32)': ../fheroes2/gui/interface_icons.cpp:220:24: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 220 | SetTopLeft( Point( px, py ) ); | ^~ ../fheroes2/gui/interface_icons.cpp:220:28: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 220 | SetTopLeft( Point( px, py ) ); | ^~ ../fheroes2/gui/interface_icons.cpp:221:154: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 221 | SetScrollSplitter( fheroes2::AGG::GetICN( icnscroll, 4 ), fheroes2::Rect( px + ICONS_CURSOR_WIDTH + 3, py + 19, 10, ICONS_CURSOR_HEIGHT * iconsCount - 37 ) ); | ^ ../fheroes2/gui/interface_icons.cpp:223:87: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 223 | SetScrollButtonDn( icnscroll, 2, 3, fheroes2::Point( px + ICONS_CURSOR_WIDTH + 1, py + iconsCount * ICONS_CURSOR_HEIGHT - 15 ) ); | ^~ ../fheroes2/gui/interface_icons.cpp:223:125: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 223 | SetScrollButtonDn( icnscroll, 2, 3, fheroes2::Point( px + ICONS_CURSOR_WIDTH + 1, py + iconsCount * ICONS_CURSOR_HEIGHT - 15 ) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~ ../fheroes2/gui/interface_icons.cpp:224:22: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 224 | SetAreaMaxItems( iconsCount ); | ^~~~~~~~~~ ../fheroes2/gui/interface_icons.cpp:225:82: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 225 | SetAreaItems( fheroes2::Rect( px + 5, py + 5, ICONS_CURSOR_WIDTH, iconsCount * ICONS_CURSOR_HEIGHT ) ); | ^ ../fheroes2/gui/interface_icons.cpp: In member function 'void Interface::HeroesIcons::SetPos(s32, s32)': ../fheroes2/gui/interface_icons.cpp:306:24: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 306 | SetTopLeft( Point( px, py ) ); | ^~ ../fheroes2/gui/interface_icons.cpp:306:28: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 306 | SetTopLeft( Point( px, py ) ); | ^~ ../fheroes2/gui/interface_icons.cpp:307:154: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 307 | SetScrollSplitter( fheroes2::AGG::GetICN( icnscroll, 4 ), fheroes2::Rect( px + ICONS_CURSOR_WIDTH + 3, py + 19, 10, ICONS_CURSOR_HEIGHT * iconsCount - 37 ) ); | ^ ../fheroes2/gui/interface_icons.cpp:309:87: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 309 | SetScrollButtonDn( icnscroll, 2, 3, fheroes2::Point( px + ICONS_CURSOR_WIDTH + 1, py + iconsCount * ICONS_CURSOR_HEIGHT - 15 ) ); | ^~ ../fheroes2/gui/interface_icons.cpp:309:125: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 309 | SetScrollButtonDn( icnscroll, 2, 3, fheroes2::Point( px + ICONS_CURSOR_WIDTH + 1, py + iconsCount * ICONS_CURSOR_HEIGHT - 15 ) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~ ../fheroes2/gui/interface_icons.cpp:310:22: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 310 | SetAreaMaxItems( iconsCount ); | ^~~~~~~~~~ ../fheroes2/gui/interface_icons.cpp:311:82: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 311 | SetAreaItems( fheroes2::Rect( px + 5, py + 5, ICONS_CURSOR_WIDTH, iconsCount * ICONS_CURSOR_HEIGHT ) ); | ^ ../fheroes2/gui/interface_icons.cpp: In member function 'virtual void Interface::IconsPanel::SetPos(s32, s32)': ../fheroes2/gui/interface_icons.cpp:372:108: warning: conversion to 'u32' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 372 | const u32 count_h = ( fheroes2::Display::instance().height() - fheroes2::Display::DEFAULT_HEIGHT ) / TILEWIDTH; ../fheroes2/gui/interface_icons.cpp: In member function 'void Interface::IconsPanel::Select(const Heroes&)': ../fheroes2/gui/interface_icons.cpp:425:29: warning: type qualifiers ignored on cast result type [-Wignored-qualifiers] 425 | heroesIcons.SetCurrent( (const HEROES)&hr ); | ^~~~~~~~~~~~~~~~~ ../fheroes2/gui/interface_icons.cpp: In member function 'void Interface::IconsPanel::Select(const Castle&)': ../fheroes2/gui/interface_icons.cpp:431:29: warning: type qualifiers ignored on cast result type [-Wignored-qualifiers] 431 | castleIcons.SetCurrent( (const CASTLE)&cs ); | ^~~~~~~~~~~~~~~~~ In file included from ../fheroes2/gui/interface_icons.h:27, from ../fheroes2/game/game_interface.h:31, from ../fheroes2/gui/interface_icons.cpp:29: ../fheroes2/gui/interface_list.h: In instantiation of 'Item& Interface::ListBox::GetCurrent() [with Item = Castle*]': ../fheroes2/gui/interface_icons.cpp:171:50: required from here ../fheroes2/gui/interface_list.h:186:33: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 186 | return ( *content )[_currentId]; | ^~~~~~~~~~ ../fheroes2/gui/interface_list.h: In instantiation of 'Item& Interface::ListBox::GetCurrent() [with Item = Heroes*]': ../fheroes2/gui/interface_icons.cpp:250:50: required from here ../fheroes2/gui/interface_list.h:186:33: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] In file included from ../fheroes2/gui/interface_icons.h:27, from ../fheroes2/game/game_interface.h:31, from ../fheroes2/gui/interface_icons.cpp:29: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Heroes*]': ../fheroes2/gui/interface_icons.cpp:395:28: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Castle*]': ../fheroes2/gui/interface_icons.cpp:396:28: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/gui/interface_icons.cpp:35: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: ui_button.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: ui_tool.o ../fheroes2/gui/ui_tool.cpp: In function 'fheroes2::Image fheroes2::CreateRippleEffect(const fheroes2::Image&, int32_t, double, double)': ../fheroes2/gui/ui_tool.cpp:191:51: warning: conversion to 'size_t' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 191 | memcpy( outImageY + offset, inImageY, widthIn ); | ^~~~~~~ ../fheroes2/gui/ui_tool.cpp:192:59: warning: conversion to 'size_t' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 192 | memcpy( outTransformY + offset, inTransformY, widthIn ); | ^~~~~~~ In file included from ../engine/rect.h:31, from ../engine/localevent.h:26, from ../fheroes2/gui/ui_tool.cpp:22: ../fheroes2/gui/ui_tool.cpp: In function 'void fheroes2::FadeDisplay(const fheroes2::Image&, const Point&, uint8_t, int)': ../fheroes2/gui/ui_tool.cpp:215:20: warning: conversion to 'Uint32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 215 | DELAY( stepDelay ); | ^~~~~~~~~ ../engine/types.h:41:31: note: in definition of macro 'DELAY' 41 | #define DELAY( X ) SDL_Delay( X ) | ^ ../fheroes2/gui/ui_tool.cpp: In function 'void fheroes2::FadeDisplayWithPalette(const fheroes2::Image&, const Point&, uint8_t, int, int)': ../fheroes2/gui/ui_tool.cpp:232:20: warning: conversion to 'Uint32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 232 | DELAY( stepDelay ); | ^~~~~~~~~ ../engine/types.h:41:31: note: in definition of macro 'DELAY' 41 | #define DELAY( X ) SDL_Delay( X ) | ^ ../fheroes2/gui/ui_tool.cpp: In function 'void fheroes2::InvertedFade(const fheroes2::Image&, const Point&, const fheroes2::Image&, const Point&, uint8_t, int)': ../fheroes2/gui/ui_tool.cpp:263:20: warning: conversion to 'Uint32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 263 | DELAY( stepDelay ); | ^~~~~~~~~ ../engine/types.h:41:31: note: in definition of macro 'DELAY' 41 | #define DELAY( X ) SDL_Delay( X ) | ^ ../fheroes2/gui/ui_tool.cpp: In function 'void fheroes2::InvertedFadeWithPalette(const fheroes2::Image&, const Point&, const fheroes2::Image&, const Point&, uint8_t, int, int)': ../fheroes2/gui/ui_tool.cpp:281:20: warning: conversion to 'Uint32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 281 | DELAY( stepDelay ); | ^~~~~~~~~ ../engine/types.h:41:31: note: in definition of macro 'DELAY' 41 | #define DELAY( X ) SDL_Delay( X ) | ^ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: statusbar.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: text.o ../fheroes2/gui/text.cpp: In static member function 'static int TextAscii::CharWidth(int, int)': ../fheroes2/gui/text.cpp:69:82: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 69 | return ( c < 0x21 ? ( isSmallFont( f ) ? 4 : 6 ) : fheroes2::AGG::GetLetter( c, f ).width() ); | ^ ../fheroes2/gui/text.cpp:69:85: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 69 | return ( c < 0x21 ? ( isSmallFont( f ) ? 4 : 6 ) : fheroes2::AGG::GetLetter( c, f ).width() ); | ^ ../fheroes2/gui/text.cpp: In member function 'int TextAscii::w(u32, u32) const': ../fheroes2/gui/text.cpp:99:49: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 99 | res += CharWidth( message[ii], font ); | ^ ../fheroes2/gui/text.cpp:102:12: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 102 | return res; | ^~~ ../fheroes2/gui/text.cpp: In member function 'virtual void TextAscii::Blit(s32, s32, int, fheroes2::Image&)': ../fheroes2/gui/text.cpp:166:69: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'char' may change the sign of the result [-Wsign-conversion] 166 | const fheroes2::Sprite & sprite = fheroes2::AGG::GetLetter( *it, font ); | ^~~ ../fheroes2/gui/text.cpp:166:74: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 166 | const fheroes2::Sprite & sprite = fheroes2::AGG::GetLetter( *it, font ); | ^~~~ ../fheroes2/gui/text.cpp: In static member function 'static int TextUnicode::CharWidth(int, int)': ../fheroes2/gui/text.cpp:230:91: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 230 | return ( c < 0x0021 ? ( isSmallFont( f ) ? 4 : 6 ) : fheroes2::AGG::GetUnicodeLetter( c, f ).width() ); | ^ ../fheroes2/gui/text.cpp:230:94: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 230 | return ( c < 0x0021 ? ( isSmallFont( f ) ? 4 : 6 ) : fheroes2::AGG::GetUnicodeLetter( c, f ).width() ); | ^ ../fheroes2/gui/text.cpp: In static member function 'static int TextUnicode::CharHeight(int)': ../fheroes2/gui/text.cpp:235:29: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 235 | return isSmallFont( f ) ? ( AGG::GetFontHeight( true ) + 2 ) : ( AGG::GetFontHeight( false ) + 8 ); | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/gui/text.cpp: In static member function 'static int TextUnicode::CharAscent(int)': ../fheroes2/gui/text.cpp:238:34: warning: unused parameter 'f' [-Wunused-parameter] 238 | int TextUnicode::CharAscent( int f ) | ~~~~^ ../fheroes2/gui/text.cpp: In static member function 'static int TextUnicode::CharDescent(int)': ../fheroes2/gui/text.cpp:243:35: warning: unused parameter 'f' [-Wunused-parameter] 243 | int TextUnicode::CharDescent( int f ) | ~~~~^ ../fheroes2/gui/text.cpp: In member function 'int TextUnicode::w(u32, u32) const': ../fheroes2/gui/text.cpp:260:49: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 260 | res += CharWidth( message[ii], font ); | ^ ../fheroes2/gui/text.cpp:263:12: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 263 | return res; | ^~~ ../fheroes2/gui/text.cpp: In member function 'virtual void TextUnicode::Blit(s32, s32, int, fheroes2::Image&)': ../fheroes2/gui/text.cpp:328:80: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 328 | const fheroes2::Image & sprite = fheroes2::AGG::GetUnicodeLetter( *it, font ); | ^~~~ ../fheroes2/gui/text.cpp: In constructor 'Text::Text(const string&, int)': ../fheroes2/gui/text.cpp:364:20: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 364 | gw = message->w(); | ~~~~~~~~~~^~ ../fheroes2/gui/text.cpp:365:20: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 365 | gh = message->h(); | ~~~~~~~~~~^~ ../fheroes2/gui/text.cpp: In constructor 'Text::Text(const u16*, size_t, int)': ../fheroes2/gui/text.cpp:377:24: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 377 | gw = message->w(); | ~~~~~~~~~~^~ ../fheroes2/gui/text.cpp:378:24: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 378 | gh = message->h(); | ~~~~~~~~~~^~ ../fheroes2/gui/text.cpp: In member function 'void Text::Set(const string&, int)': ../fheroes2/gui/text.cpp:421:20: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 421 | gw = message->w(); | ~~~~~~~~~~^~ ../fheroes2/gui/text.cpp:422:20: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 422 | gh = message->h(); | ~~~~~~~~~~^~ ../fheroes2/gui/text.cpp: In member function 'void Text::Set(const string&)': ../fheroes2/gui/text.cpp:428:20: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 428 | gw = message->w(); | ~~~~~~~~~~^~ ../fheroes2/gui/text.cpp:429:20: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 429 | gh = message->h(); | ~~~~~~~~~~^~ ../fheroes2/gui/text.cpp: In member function 'void Text::Set(int)': ../fheroes2/gui/text.cpp:435:20: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 435 | gw = message->w(); | ~~~~~~~~~~^~ ../fheroes2/gui/text.cpp:436:20: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 436 | gh = message->h(); | ~~~~~~~~~~^~ ../fheroes2/gui/text.cpp: In static member function 'static u32 Text::width(const string&, int, u32, u32)': ../fheroes2/gui/text.cpp:472:26: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 472 | return text.w( start, count ); | ~~~~~~^~~~~~~~~~~~~~~~ ../fheroes2/gui/text.cpp:478:26: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 478 | return text.w( start, count ); | ~~~~~~^~~~~~~~~~~~~~~~ ../fheroes2/gui/text.cpp: In static member function 'static u32 Text::height(const string&, int, u32)': ../fheroes2/gui/text.cpp:490:28: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 490 | return text.h( width ); | ^~~~~ ../fheroes2/gui/text.cpp:490:26: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 490 | return text.h( width ); | ~~~~~~^~~~~~~~~ ../fheroes2/gui/text.cpp:496:28: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 496 | return text.h( width ); | ^~~~~ ../fheroes2/gui/text.cpp:496:26: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 496 | return text.h( width ); | ~~~~~~^~~~~~~~~ ../fheroes2/gui/text.cpp: In constructor 'TextBox::TextBox(const string&, int, const Rect&)': ../fheroes2/gui/text.cpp:555:22: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 555 | Set( msg, ft, rt.width ); | ~~~^~~~~ ../fheroes2/gui/text.cpp: In member function 'void TextBox::Append(const string&, int, u32)': ../fheroes2/gui/text.cpp:613:29: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 613 | fheroes2::Rect::width = width_; | ^~~~~~ ../fheroes2/gui/text.cpp:625:20: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 625 | if ( www + char_w >= width_ ) { | ^~~~~~ ../fheroes2/gui/text.cpp:632:64: warning: conversion to 'std::__cxx11::basic_string::size_type' {aka 'unsigned int'} from '__gnu_cxx::__normal_iterator >::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 632 | messages.push_back( Text( msg.substr( pos1 - msg.begin(), pos2 - pos1 - 1 ), ft ) ); | ~~~~~^~~~~~~~~~~~~ ../fheroes2/gui/text.cpp:632:91: warning: conversion to 'std::__cxx11::basic_string::size_type' {aka 'unsigned int'} from '__gnu_cxx::__normal_iterator >::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 632 | messages.push_back( Text( msg.substr( pos1 - msg.begin(), pos2 - pos1 - 1 ), ft ) ); | ~~~~~~~~~~~~^~~ ../fheroes2/gui/text.cpp:636:64: warning: conversion to 'std::__cxx11::basic_string::size_type' {aka 'unsigned int'} from '__gnu_cxx::__normal_iterator >::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 636 | messages.push_back( Text( msg.substr( pos1 - msg.begin(), pos2 - pos1 - 1 ), ft ) ); | ~~~~~^~~~~~~~~~~~~ ../fheroes2/gui/text.cpp:636:91: warning: conversion to 'std::__cxx11::basic_string::size_type' {aka 'unsigned int'} from '__gnu_cxx::__normal_iterator >::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 636 | messages.push_back( Text( msg.substr( pos1 - msg.begin(), pos2 - pos1 - 1 ), ft ) ); | ~~~~~~~~~~~~^~~ ../fheroes2/gui/text.cpp:640:60: warning: conversion to 'std::__cxx11::basic_string::size_type' {aka 'unsigned int'} from '__gnu_cxx::__normal_iterator >::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 640 | messages.push_back( Text( msg.substr( pos1 - msg.begin(), pos2 - pos1 ), ft ) ); | ~~~~~^~~~~~~~~~~~~ ../fheroes2/gui/text.cpp:640:80: warning: conversion to 'std::__cxx11::basic_string::size_type' {aka 'unsigned int'} from '__gnu_cxx::__normal_iterator >::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 640 | messages.push_back( Text( msg.substr( pos1 - msg.begin(), pos2 - pos1 ), ft ) ); | ~~~~~^~~~~~ ../fheroes2/gui/text.cpp:648:16: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 648 | www += char_w; | ^~~~~~ ../fheroes2/gui/text.cpp:654:52: warning: conversion to 'std::__cxx11::basic_string::size_type' {aka 'unsigned int'} from '__gnu_cxx::__normal_iterator >::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 654 | messages.push_back( Text( msg.substr( pos1 - msg.begin(), pos2 - pos1 ), ft ) ); | ~~~~~^~~~~~~~~~~~~ ../fheroes2/gui/text.cpp:654:72: warning: conversion to 'std::__cxx11::basic_string::size_type' {aka 'unsigned int'} from '__gnu_cxx::__normal_iterator >::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 654 | messages.push_back( Text( msg.substr( pos1 - msg.begin(), pos2 - pos1 ), ft ) ); | ~~~~~^~~~~~ ../fheroes2/gui/text.cpp: In member function 'void TextBox::Append(const std::vector&, int, u32)': ../fheroes2/gui/text.cpp:662:29: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 662 | fheroes2::Rect::width = width_; | ^~~~~~ ../fheroes2/gui/text.cpp:672:44: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 672 | u32 char_w = TextUnicode::CharWidth( *pos2, ft ); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ ../fheroes2/gui/text.cpp:681:57: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from '__gnu_cxx::__normal_iterator >::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 681 | messages.push_back( Text( &msg.at( pos1 - msg.begin() ), pos2 - pos1 - 1, ft ) ); | ~~~~~^~~~~~~~~~~~~ ../fheroes2/gui/text.cpp:681:86: warning: conversion to 'size_t' {aka 'unsigned int'} from '__gnu_cxx::__normal_iterator >::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 681 | messages.push_back( Text( &msg.at( pos1 - msg.begin() ), pos2 - pos1 - 1, ft ) ); | ~~~~~~~~~~~~^~~ ../fheroes2/gui/text.cpp:683:57: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from '__gnu_cxx::__normal_iterator >::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 683 | messages.push_back( Text( &msg.at( pos1 - msg.begin() ), pos2 - pos1, ft ) ); | ~~~~~^~~~~~~~~~~~~ ../fheroes2/gui/text.cpp:683:79: warning: conversion to 'size_t' {aka 'unsigned int'} from '__gnu_cxx::__normal_iterator >::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 683 | messages.push_back( Text( &msg.at( pos1 - msg.begin() ), pos2 - pos1, ft ) ); | ~~~~~^~~~~~ ../fheroes2/gui/text.cpp:696:49: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from '__gnu_cxx::__normal_iterator >::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 696 | messages.push_back( Text( &msg.at( pos1 - msg.begin() ), pos2 - pos1, ft ) ); | ~~~~~^~~~~~~~~~~~~ ../fheroes2/gui/text.cpp:696:71: warning: conversion to 'size_t' {aka 'unsigned int'} from '__gnu_cxx::__normal_iterator >::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 696 | messages.push_back( Text( &msg.at( pos1 - msg.begin() ), pos2 - pos1, ft ) ); | ~~~~~^~~~~~ ../fheroes2/gui/text.cpp: In constructor 'TextSprite::TextSprite(const string&, int, const Point&)': ../fheroes2/gui/text.cpp:738:61: warning: conversion to 'int32_t' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 738 | , _restorer( fheroes2::Display::instance(), pt.x, pt.y, gw, gh + 5 ) | ^~ ../fheroes2/gui/text.cpp:738:68: warning: conversion to 'int32_t' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 738 | , _restorer( fheroes2::Display::instance(), pt.x, pt.y, gw, gh + 5 ) | ~~~^~~ ../fheroes2/gui/text.cpp: In constructor 'TextSprite::TextSprite(const string&, int, s32, s32)': ../fheroes2/gui/text.cpp:744:57: warning: conversion to 'int32_t' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 744 | , _restorer( fheroes2::Display::instance(), ax, ay, gw, gh + 5 ) | ^~ ../fheroes2/gui/text.cpp:744:64: warning: conversion to 'int32_t' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 744 | , _restorer( fheroes2::Display::instance(), ax, ay, gw, gh + 5 ) | ~~~^~~ ../fheroes2/gui/text.cpp: In member function 'void TextSprite::SetText(const string&)': ../fheroes2/gui/text.cpp:765:53: warning: conversion to 'int32_t' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 765 | _restorer.update( _restorer.x(), _restorer.y(), gw, gh + 5 ); | ^~ ../fheroes2/gui/text.cpp:765:60: warning: conversion to 'int32_t' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 765 | _restorer.update( _restorer.x(), _restorer.y(), gw, gh + 5 ); | ~~~^~~ ../fheroes2/gui/text.cpp: In member function 'void TextSprite::SetText(const string&, int)': ../fheroes2/gui/text.cpp:772:53: warning: conversion to 'int32_t' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 772 | _restorer.update( _restorer.x(), _restorer.y(), gw, gh + 5 ); | ^~ ../fheroes2/gui/text.cpp:772:60: warning: conversion to 'int32_t' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 772 | _restorer.update( _restorer.x(), _restorer.y(), gw, gh + 5 ); | ~~~^~~ ../fheroes2/gui/text.cpp: In member function 'void TextSprite::SetFont(int)': ../fheroes2/gui/text.cpp:779:53: warning: conversion to 'int32_t' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 779 | _restorer.update( _restorer.x(), _restorer.y(), gw, gh + 5 ); | ^~ ../fheroes2/gui/text.cpp:779:60: warning: conversion to 'int32_t' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 779 | _restorer.update( _restorer.x(), _restorer.y(), gw, gh + 5 ); | ~~~^~~ ../fheroes2/gui/text.cpp: In member function 'void TextSprite::SetPos(s32, s32)': ../fheroes2/gui/text.cpp:784:31: warning: conversion to 'int32_t' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 784 | _restorer.update( ax, ay, gw, gh + 5 ); | ^~ ../fheroes2/gui/text.cpp:784:38: warning: conversion to 'int32_t' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 784 | _restorer.update( ax, ay, gw, gh + 5 ); | ~~~^~~ ../fheroes2/gui/text.cpp: In member function 'int TextSprite::w()': ../fheroes2/gui/text.cpp:789:12: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 789 | return gw; | ^~ ../fheroes2/gui/text.cpp: In member function 'int TextSprite::h()': ../fheroes2/gui/text.cpp:794:15: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 794 | return gh + 5; | ~~~^~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: splitter.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: direction.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: heroes_indicator.o ../fheroes2/heroes/heroes_indicator.cpp: In constructor 'ExperienceIndicator::ExperienceIndicator(const Heroes&)': ../fheroes2/heroes/heroes_indicator.cpp:205:63: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 205 | StringReplace( descriptions, "%{exp1}", hero.GetExperience() ); | ~~~~~~~~~~~~~~~~~~^~ ../fheroes2/heroes/heroes_indicator.cpp:206:72: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 206 | StringReplace( descriptions, "%{exp2}", hero.GetExperienceFromLevel( hero.GetLevelFromExperience( hero.GetExperience() ) ) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes_indicator.cpp: In member function 'void ExperienceIndicator::Redraw()': ../fheroes2/heroes/heroes_indicator.cpp:214:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 214 | Text text( GetString( hero.GetExperience() ), Font::SMALL ); | ~~~~~~~~~~~~~~~~~~^~ ../fheroes2/heroes/heroes_indicator.cpp: In constructor 'SpellPointsIndicator::SpellPointsIndicator(const Heroes&)': ../fheroes2/heroes/heroes_indicator.cpp:238:65: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 238 | StringReplace( descriptions, "%{point}", hero.GetSpellPoints() ); | ~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/heroes/heroes_indicator.cpp:239:66: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 239 | StringReplace( descriptions, "%{max}", hero.GetMaxSpellPoints() ); | ~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/heroes/heroes_indicator.cpp: In member function 'void SpellPointsIndicator::Redraw()': ../fheroes2/heroes/heroes_indicator.cpp:247:46: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 247 | Text text( GetString( hero.GetSpellPoints() ) + "/" + GetString( hero.GetMaxSpellPoints() ), Font::SMALL ); | ~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/heroes/heroes_indicator.cpp:247:92: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 247 | Text text( GetString( hero.GetSpellPoints() ) + "/" + GetString( hero.GetMaxSpellPoints() ), Font::SMALL ); | ~~~~~~~~~~~~~~~~~~~~~~^~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: heroes_base.o ../fheroes2/heroes/heroes_base.cpp: In function 'int ArtifactsModifiersResult(int, const u8*, u32, const HeroBase&, std::string*)': ../fheroes2/heroes/heroes_base.cpp:45:42: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 45 | int acount = base.HasArtifact( art ); | ~~~~~~~~~~~~~~~~^~~~~~~ ../fheroes2/heroes/heroes_base.cpp:47:41: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 47 | s32 mod = art.ExtraValue(); | ~~~~~~~~~~~~~~^~ ../fheroes2/heroes/heroes_base.cpp:66:64: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 66 | mod = base.Modes( Heroes::SHIPMASTER ) ? art.ExtraValue() : 0; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/heroes/heroes_base.cpp:35: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: heroes_dialog.o ../fheroes2/heroes/heroes_dialog.cpp: In member function 'int Heroes::OpenDialog(bool, bool)': ../fheroes2/heroes/heroes_dialog.cpp:107:59: warning: conversion from 'int32_t' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 107 | const Rect rectSpreadArmyFormat( dst_pt, sprite1.width(), sprite1.height() ); | ~~~~~~~~~~~~~^~ ../fheroes2/heroes/heroes_dialog.cpp:107:77: warning: conversion from 'int32_t' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 107 | const Rect rectSpreadArmyFormat( dst_pt, sprite1.width(), sprite1.height() ); | ~~~~~~~~~~~~~~^~ ../fheroes2/heroes/heroes_dialog.cpp:118:60: warning: conversion from 'int32_t' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 118 | const Rect rectGroupedArmyFormat( dst_pt, sprite2.width(), sprite2.height() ); | ~~~~~~~~~~~~~^~ ../fheroes2/heroes/heroes_dialog.cpp:118:78: warning: conversion from 'int32_t' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 118 | const Rect rectGroupedArmyFormat( dst_pt, sprite2.width(), sprite2.height() ); | ~~~~~~~~~~~~~~^~ ../fheroes2/heroes/heroes_dialog.cpp:141:82: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 141 | fheroes2::Blit( fheroes2::AGG::GetICN( ICN::CREST, Color::NONE == GetColor() ? Color::GetIndex( Settings::Get().CurrentColor() ) : Color::GetIndex( GetColor() ) ), | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/heroes/heroes_dialog.cpp:42: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: heroes_move.o ../fheroes2/heroes/heroes_move.cpp: In function 'fheroes2::Sprite SpriteHero(const Heroes&, int, bool)': ../fheroes2/heroes/heroes_move.cpp:168:58: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 168 | return fheroes2::AGG::GetICN( icn_hero, index_sprite + ( index % 9 ) ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes_move.cpp: In function 'fheroes2::Sprite SpriteFlag(const Heroes&, int, bool)': ../fheroes2/heroes/heroes_move.cpp:236:75: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 236 | fheroes2::Sprite flag = fheroes2::AGG::GetICN( icn_flag, index_sprite + frameId ); | ~~~~~~~~~~~~~^~~~~~~~~ ../fheroes2/heroes/heroes_move.cpp: In function 'fheroes2::Sprite SpriteShad(const Heroes&, int)': ../fheroes2/heroes/heroes_move.cpp:321:58: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 321 | return fheroes2::AGG::GetICN( icn_shad, index_sprite + ( index % 9 ) ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes_move.cpp: In function 'fheroes2::Sprite SpriteFroth(const Heroes&, int)': ../fheroes2/heroes/heroes_move.cpp:359:60: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 359 | return fheroes2::AGG::GetICN( ICN::FROTH, index_sprite + ( index % 9 ) ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes_move.cpp: In member function 'void Heroes::Redraw(fheroes2::Image&, s32, s32, bool) const': ../fheroes2/heroes/heroes_move.cpp:389:38: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 389 | flagFrameID = isShipMaster() ? 0 : Game::MapsAnimationFrame(); | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes_move.cpp:401:23: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 401 | Point dst_pt1( dx + ( reflect ? TILEWIDTH - sprite1.x() - sprite1.width() : sprite1.x() ), dy + sprite1.y() + TILEWIDTH ); | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes_move.cpp:401:113: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 401 | Point dst_pt1( dx + ( reflect ? TILEWIDTH - sprite1.x() - sprite1.width() : sprite1.x() ), dy + sprite1.y() + TILEWIDTH ); ../fheroes2/heroes/heroes_move.cpp:402:23: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 402 | Point dst_pt2( dx + ( reflect ? TILEWIDTH - sprite2.x() - sprite2.width() : sprite2.x() ), dy + sprite2.y() + TILEWIDTH ); | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes_move.cpp:402:113: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 402 | Point dst_pt2( dx + ( reflect ? TILEWIDTH - sprite2.x() - sprite2.width() : sprite2.x() ), dy + sprite2.y() + TILEWIDTH ); ../fheroes2/heroes/heroes_move.cpp:403:23: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 403 | Point dst_pt3( dx + sprite3.x(), dy + sprite3.y() + TILEWIDTH ); | ~~~^~~~~~~~~~~~~ ../fheroes2/heroes/heroes_move.cpp:403:55: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 403 | Point dst_pt3( dx + sprite3.x(), dy + sprite3.y() + TILEWIDTH ); ../fheroes2/heroes/heroes_move.cpp:404:23: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 404 | Point dst_pt4( dx + ( reflect ? TILEWIDTH - sprite4.x() - sprite4.width() : sprite4.x() ), dy + sprite4.y() + TILEWIDTH ); | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes_move.cpp:404:113: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 404 | Point dst_pt4( dx + ( reflect ? TILEWIDTH - sprite4.x() - sprite4.width() : sprite4.x() ), dy + sprite4.y() + TILEWIDTH ); ../fheroes2/heroes/heroes_move.cpp:450:19: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 450 | dst_pt1.x += ox; | ~~~~~~~~~~^~~~~ ../fheroes2/heroes/heroes_move.cpp:451:19: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 451 | dst_pt1.y += oy; | ~~~~~~~~~~^~~~~ ../fheroes2/heroes/heroes_move.cpp:452:19: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 452 | dst_pt2.x += ox; | ~~~~~~~~~~^~~~~ ../fheroes2/heroes/heroes_move.cpp:453:19: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 453 | dst_pt2.y += oy; | ~~~~~~~~~~^~~~~ ../fheroes2/heroes/heroes_move.cpp:454:19: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 454 | dst_pt3.x += ox; | ~~~~~~~~~~^~~~~ ../fheroes2/heroes/heroes_move.cpp:455:19: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 455 | dst_pt3.y += oy; | ~~~~~~~~~~^~~~~ ../fheroes2/heroes/heroes_move.cpp:456:19: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 456 | dst_pt4.x += ox; | ~~~~~~~~~~^~~~~ ../fheroes2/heroes/heroes_move.cpp:457:19: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 457 | dst_pt4.y += oy; | ~~~~~~~~~~^~~~~ ../fheroes2/heroes/heroes_move.cpp:474:118: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 474 | fheroes2::AlphaBlit( sprite4, blitArea.x, blitArea.y, dst, dst_pt4.x, dst_pt4.y, blitArea.w, blitArea.h, _alphaValue, reflect ); | ^~~~~~~~~~~ ../fheroes2/heroes/heroes_move.cpp:481:114: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 481 | fheroes2::AlphaBlit( sprite3, blitArea.x, blitArea.y, dst, dst_pt3.x, dst_pt3.y, blitArea.w, blitArea.h, _alphaValue ); | ^~~~~~~~~~~ ../fheroes2/heroes/heroes_move.cpp:486:126: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 486 | fheroes2::AlphaBlit( sprite1, blitAreaHero.x, blitAreaHero.y, dst, dst_pt1.x, dst_pt1.y, blitAreaHero.w, blitAreaHero.h, _alphaValue, reflect ); | ^~~~~~~~~~~ ../fheroes2/heroes/heroes_move.cpp:488:126: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 488 | fheroes2::AlphaBlit( sprite2, blitAreaFlag.x, blitAreaFlag.y, dst, dst_pt2.x, dst_pt2.y, blitAreaFlag.w, blitAreaFlag.h, _alphaValue, reflect ); | ^~~~~~~~~~~ ../fheroes2/heroes/heroes_move.cpp:491:49: warning: conversion to 'u32' {aka 'unsigned int'} from 's16' {aka 'short int'} may change the sign of the result [-Wsign-conversion] 491 | Maps::Tiles & tile = world.GetTiles( center.x, center.y ); | ~~~~~~~^ ../fheroes2/heroes/heroes_move.cpp:491:59: warning: conversion to 'u32' {aka 'unsigned int'} from 's16' {aka 'short int'} may change the sign of the result [-Wsign-conversion] 491 | Maps::Tiles & tile = world.GetTiles( center.x, center.y ); | ~~~~~~~^ ../fheroes2/heroes/heroes_move.cpp: In member function 'bool Heroes::MoveStep(bool)': ../fheroes2/heroes/heroes_move.cpp:583:51: warning: conversion to 'u32' {aka 'unsigned int'} from 's16' {aka 'short int'} may change the sign of the result [-Wsign-conversion] 583 | PlayWalkSound( world.GetTiles( mp.x, mp.y ).GetGround() ); | ~~~^ ../fheroes2/heroes/heroes_move.cpp:583:57: warning: conversion to 'u32' {aka 'unsigned int'} from 's16' {aka 'short int'} may change the sign of the result [-Wsign-conversion] 583 | PlayWalkSound( world.GetTiles( mp.x, mp.y ).GetGround() ); | ~~~^ ../fheroes2/heroes/heroes_move.cpp:593:51: warning: conversion to 'u32' {aka 'unsigned int'} from 's16' {aka 'short int'} may change the sign of the result [-Wsign-conversion] 593 | PlayWalkSound( world.GetTiles( mp.x, mp.y ).GetGround() ); | ~~~^ ../fheroes2/heroes/heroes_move.cpp:593:57: warning: conversion to 'u32' {aka 'unsigned int'} from 's16' {aka 'short int'} may change the sign of the result [-Wsign-conversion] 593 | PlayWalkSound( world.GetTiles( mp.x, mp.y ).GetGround() ); | ~~~^ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/heroes/heroes_move.cpp:36: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ In file included from ../fheroes2/gui/interface_icons.h:27, from ../fheroes2/game/game_interface.h:31, from ../fheroes2/heroes/heroes_move.cpp:28: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Castle*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Heroes*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: skill_bar.o ../fheroes2/gui/skill_bar.cpp: In member function 'virtual void PrimarySkillsBar::RedrawItem(int&, const Rect&, fheroes2::Image&)': ../fheroes2/gui/skill_bar.cpp:76:38: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 76 | const Point dstpt( pos.x + ( pos.w - ww ) / 2, pos.y + ( pos.h - ww ) / 2 ); | ~~~~~~^~~~~~~~~~~~~~~~~~~~ ../fheroes2/gui/skill_bar.cpp:76:66: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 76 | const Point dstpt( pos.x + ( pos.w - ww ) / 2, pos.y + ( pos.h - ww ) / 2 ); | ~~~~~~^~~~~~~~~~~~~~~~~~~~ ../fheroes2/gui/skill_bar.cpp:111:91: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 111 | const fheroes2::Sprite & sprite = fheroes2::AGG::GetICN( ICN::PRIMSKIL, skill - 1 ); | ~~~~~~^~~ ../fheroes2/gui/skill_bar.cpp: In member function 'virtual void SecondarySkillsBar::RedrawItem(Skill::Secondary&, const Rect&, fheroes2::Image&)': ../fheroes2/gui/skill_bar.cpp:210:90: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 210 | = use_mini_sprite ? fheroes2::AGG::GetICN( ICN::MINISS, skill.GetIndexSprite2() ) : fheroes2::AGG::GetICN( ICN::SECSKILL, skill.GetIndexSprite1() ); | ~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/gui/skill_bar.cpp:210:156: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 210 | = use_mini_sprite ? fheroes2::AGG::GetICN( ICN::MINISS, skill.GetIndexSprite2() ) : fheroes2::AGG::GetICN( ICN::SECSKILL, skill.GetIndexSprite1() ); | ~~~~~~~~~~~~~~~~~~~~~^~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: heroes_meeting.o ../fheroes2/heroes/heroes_meeting.cpp: In member function 'void Heroes::MeetingDialog(Heroes&)': ../fheroes2/heroes/heroes_meeting.cpp:50:66: warning: conversion from 'int32_t' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 50 | const Point cur_pt( ( display.width() - backSprite.width() ) / 2, ( display.height() - backSprite.height() ) / 2 ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ ../fheroes2/heroes/heroes_meeting.cpp:50:114: warning: conversion from 'int32_t' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 50 | const Point cur_pt( ( display.width() - backSprite.width() ) / 2, ( display.height() - backSprite.height() ) / 2 ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ ../fheroes2/heroes/heroes_meeting.cpp: In static member function 'static void Heroes::ScholarAction(Heroes&, Heroes&)': ../fheroes2/heroes/heroes_meeting.cpp:372:36: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'std::__iterator_traits<__gnu_cxx::__normal_iterator >, void>::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 372 | learn.resize( std::distance( learn.begin(), res ) ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes_meeting.cpp:377:36: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'std::__iterator_traits<__gnu_cxx::__normal_iterator >, void>::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 377 | learn.resize( std::distance( learn.begin(), res ) ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes_meeting.cpp:383:36: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'std::__iterator_traits<__gnu_cxx::__normal_iterator >, void>::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 383 | teach.resize( std::distance( teach.begin(), res ) ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes_meeting.cpp:388:36: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'std::__iterator_traits<__gnu_cxx::__normal_iterator >, void>::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 388 | teach.resize( std::distance( teach.begin(), res ) ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ In file included from ../fheroes2/gui/interface_icons.h:27, from ../fheroes2/game/game_interface.h:31, from ../fheroes2/heroes/heroes_meeting.cpp:31: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Castle*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Heroes*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: heroes_recruits.o In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/heroes/heroes_recruits.cpp:27: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: heroes.o ../fheroes2/heroes/heroes.cpp: In function 'int ObjectVisitedModifiersResult(int, const u8*, u32, const Heroes&, std::string*)': ../fheroes2/heroes/heroes.cpp:78:39: warning: unused parameter 'type' [-Wunused-parameter] 78 | int ObjectVisitedModifiersResult( int type, const u8 * objs, u32 size, const Heroes & hero, std::string * strs ) | ~~~~^~~~ ../fheroes2/heroes/heroes.cpp: In constructor 'Heroes::Heroes(int, int)': ../fheroes2/heroes/heroes.cpp:289:39: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 289 | AppendSpellToBook( Spell( spell ), true ); | ^~~~~ ../fheroes2/heroes/heroes.cpp: In member function 'int Heroes::GetMobilityIndexSprite() const': ../fheroes2/heroes/heroes.cpp:487:28: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] 487 | int index = !CanMove() ? 0 : move_point / 100; | ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes.cpp: In member function 'int Heroes::GetManaIndexSprite() const': ../fheroes2/heroes/heroes.cpp:494:30: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 494 | int r = GetSpellPoints() / 5; | ~~~~~~~~~~~~~~~~~^~~ ../fheroes2/heroes/heroes.cpp: In member function 'virtual u32 Heroes::GetMaxSpellPoints() const': ../fheroes2/heroes/heroes.cpp:603:15: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 603 | return 10 * GetKnowledge(); | ~~~^~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes.cpp: In member function 'u32 Heroes::GetMaxMovePoints() const': ../fheroes2/heroes/heroes.cpp:616:18: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 616 | point += point * GetSecondaryValues( Skill::Secondary::NAVIGATION ) / 100; | ^~~~~ ../fheroes2/heroes/heroes.cpp:616:79: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 616 | point += point * GetSecondaryValues( Skill::Secondary::NAVIGATION ) / 100; | ^~~ ../fheroes2/heroes/heroes.cpp:616:79: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] ../fheroes2/heroes/heroes.cpp:619:29: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 619 | acount = HasArtifact( Artifact::SAILORS_ASTROLABE_MOBILITY ); | ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes.cpp:624:83: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 624 | point += 500 * world.CountCapturedObject( MP2::OBJ_LIGHTHOUSE, GetColor() ); | ^ ../fheroes2/heroes/heroes.cpp:624:83: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] ../fheroes2/heroes/heroes.cpp:657:18: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 657 | point += point * GetSecondaryValues( Skill::Secondary::LOGISTICS ) / 100; | ^~~~~ ../fheroes2/heroes/heroes.cpp:657:78: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 657 | point += point * GetSecondaryValues( Skill::Secondary::LOGISTICS ) / 100; | ^~~ ../fheroes2/heroes/heroes.cpp:657:78: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] ../fheroes2/heroes/heroes.cpp:660:29: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 660 | acount = HasArtifact( Artifact::NOMAD_BOOTS_MOBILITY ); | ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes.cpp:664:29: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 664 | acount = HasArtifact( Artifact::TRAVELER_BOOTS_MOBILITY ); | ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes.cpp:673:25: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 673 | acount = HasArtifact( Artifact::TRUE_COMPASS_MOBILITY ); | ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes.cpp:681:12: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 681 | return point; | ^~~~~ ../fheroes2/heroes/heroes.cpp: In member function 'bool Heroes::Recruit(int, const Point&)': ../fheroes2/heroes/heroes.cpp:769:50: warning: conversion to 'u32' {aka 'unsigned int'} from 's16' {aka 'short int'} may change the sign of the result [-Wsign-conversion] 769 | Maps::Tiles & tiles = world.GetTiles( pt.x, pt.y ); | ~~~^ ../fheroes2/heroes/heroes.cpp:769:56: warning: conversion to 'u32' {aka 'unsigned int'} from 's16' {aka 'short int'} may change the sign of the result [-Wsign-conversion] 769 | Maps::Tiles & tiles = world.GetTiles( pt.x, pt.y ); | ~~~^ ../fheroes2/heroes/heroes.cpp: In member function 'void Heroes::ActionNewDay()': ../fheroes2/heroes/heroes.cpp:838:37: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 838 | int acount = HasArtifact( Artifact::POWER_RING ); | ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes.cpp:840:25: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 840 | curr += acount * Artifact( Artifact::POWER_RING ).ExtraValue(); | ^~~~~~ ../fheroes2/heroes/heroes.cpp: In member function 'bool Heroes::CanMove() const': ../fheroes2/heroes/heroes.cpp:1249:117: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1249 | return move_point >= ( tile.isRoad() ? Maps::Ground::roadPenalty : Maps::Ground::GetPenalty( tile, GetLevelSkill( Skill::Secondary::PATHFINDING ) ) ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes.cpp: In member function 'int Heroes::GetScoute() const': ../fheroes2/heroes/heroes.cpp:1345:29: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1345 | int acount = HasArtifact( Artifact::TELESCOPE ); | ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes.cpp:1347:23: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1347 | return ( acount ? acount * Game::GetViewDistance( Game::VIEW_TELESCOPE ) : 0 ) + Game::GetViewDistance( Game::VIEW_HEROES ) | ^~~~~~ ../fheroes2/heroes/heroes.cpp:1348:12: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] 1347 | return ( acount ? acount * Game::GetViewDistance( Game::VIEW_TELESCOPE ) : 0 ) + Game::GetViewDistance( Game::VIEW_HEROES ) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1348 | + GetSecondaryValues( Skill::Secondary::SCOUTING ); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes.cpp: In member function 'u32 Heroes::GetVisionsDistance() const': ../fheroes2/heroes/heroes.cpp:1353:50: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1353 | int dist = Spell( Spell::VISIONS ).ExtraValue(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/heroes/heroes.cpp:1354:29: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1354 | int acount = HasArtifact( Artifact::CRYSTAL_BALL ); | ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes.cpp:1359:12: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1359 | return dist; | ^~~~ ../fheroes2/heroes/heroes.cpp: In member function 'int Heroes::CanScouteTile(s32) const': ../fheroes2/heroes/heroes.cpp:1661:38: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1661 | int scouting = GetSecondaryValues( Skill::Secondary::SCOUTING ); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes.cpp:1691:73: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1691 | u32 dist = GetSecondaryValues( Skill::Secondary::SCOUTING ) ? GetScoute() : 0; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes.cpp: In member function 'void Heroes::MovePointsScaleFixed()': ../fheroes2/heroes/heroes.cpp:1705:42: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1705 | move_point_scale = move_point * 1000 / GetMaxMovePoints(); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes.cpp: In member function 'void Heroes::RecalculateMovePoints()': ../fheroes2/heroes/heroes.cpp:1711:43: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 1711 | move_point = GetMaxMovePoints() * move_point_scale / 1000; | ^~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes.cpp: In static member function 'static fheroes2::Image Heroes::GetPortrait(int, int)': ../fheroes2/heroes/heroes.cpp:1732:87: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1732 | return Heroes::SANDYSANDY > id ? fheroes2::AGG::GetICN( ICN::PORTMEDI, id + 1 ) : fheroes2::AGG::GetICN( ICN::PORTMEDI, BAX + 1 ); | ~~~^~~ ../fheroes2/heroes/heroes.cpp:1734:84: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1734 | return Heroes::SANDYSANDY > id ? fheroes2::AGG::GetICN( ICN::MINIPORT, id ) : fheroes2::AGG::GetICN( ICN::MINIPORT, BAX ); | ^~ ../fheroes2/heroes/heroes.cpp: In member function 'virtual void Heroes::PortraitRedraw(s32, s32, int, fheroes2::Image&) const': ../fheroes2/heroes/heroes.cpp:1763:109: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1763 | const fheroes2::Sprite & mobility = fheroes2::AGG::GetICN( ICN::MOBILITY, GetMobilityIndexSprite() ); | ~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/heroes/heroes.cpp:1764:97: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1764 | const fheroes2::Sprite & mana = fheroes2::AGG::GetICN( ICN::MANA, GetManaIndexSprite() ); | ~~~~~~~~~~~~~~~~~~^~ ../fheroes2/heroes/heroes.cpp:1766:65: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1766 | const int iconsw = Interface::IconsBar::GetItemWidth(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/heroes/heroes.cpp:1767:66: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1767 | const int iconsh = Interface::IconsBar::GetItemHeight(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/heroes/heroes.cpp: In member function 'void AllHeroes::Init()': ../fheroes2/heroes/heroes.cpp:1902:32: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1902 | push_back( new Heroes( hid, Race::KNGT ) ); | ^~~ ../fheroes2/heroes/heroes.cpp:1906:32: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1906 | push_back( new Heroes( hid, Race::BARB ) ); | ^~~ ../fheroes2/heroes/heroes.cpp:1910:32: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1910 | push_back( new Heroes( hid, Race::SORC ) ); | ^~~ ../fheroes2/heroes/heroes.cpp:1914:32: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1914 | push_back( new Heroes( hid, Race::WRLK ) ); | ^~~ ../fheroes2/heroes/heroes.cpp:1918:32: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1918 | push_back( new Heroes( hid, Race::WZRD ) ); | ^~~ ../fheroes2/heroes/heroes.cpp:1922:32: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1922 | push_back( new Heroes( hid, Race::NECR ) ); | ^~~ ../fheroes2/heroes/heroes.cpp: In member function 'Heroes* VecHeroes::Get(int) const': ../fheroes2/heroes/heroes.cpp:1960:52: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1960 | return 0 <= hid && hid < Heroes::UNKNOWN ? vec[hid] : NULL; | ^~~ ../fheroes2/heroes/heroes.cpp: In member function 'Heroes* AllHeroes::GetFreeman(int) const': ../fheroes2/heroes/heroes.cpp:2031:18: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 2031 | if ( at( ii )->isFreeman() && !at( ii )->Modes( Heroes::NOTDEFAULTS ) ) | ^~ ../fheroes2/heroes/heroes.cpp:2031:44: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 2031 | if ( at( ii )->isFreeman() && !at( ii )->Modes( Heroes::NOTDEFAULTS ) ) | ^~ ../fheroes2/heroes/heroes.cpp:2040:22: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 2040 | if ( at( ii )->isFreeman() ) | ^~ ../fheroes2/heroes/heroes.cpp:2050:16: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 2050 | return at( *Rand::Get( freeman_heroes ) ); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes.cpp: In function 'StreamBase& operator>>(StreamBase&, VecHeroes&)': ../fheroes2/heroes/heroes.cpp:2091:59: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2091 | *it = ( hid != Heroes::UNKNOWN ? world.GetHeroes( hid ) : NULL ); | ^~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/heroes/heroes.cpp:50: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ In file included from ../fheroes2/gui/interface_icons.h:27, from ../fheroes2/game/game_interface.h:31, from ../fheroes2/heroes/heroes.cpp:36: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Castle*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Heroes*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: heroes_action.o ../fheroes2/heroes/heroes_action.cpp: In function 'u32 DialogCaptureResourceObject(const string&, const string&, u32, u32)': ../fheroes2/heroes/heroes_action.cpp:99:104: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 99 | const fheroes2::Sprite & sprite = fheroes2::AGG::GetICN( ICN::RESOURCE, Resource::GetIndexSprite2( res ) ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:109:50: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 109 | payment_t info = ProfitConditions::FromMine( res ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:157:46: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 157 | return Dialog::SpriteInfo( hdr, msg, sf, buttons ); | ^~~~~~~ ../fheroes2/heroes/heroes_action.cpp:157:30: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 157 | return Dialog::SpriteInfo( hdr, msg, sf, buttons ); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes_action.cpp: In function 'u32 DialogGoldWithExp(const string&, const string&, u32, u32, u32)': ../fheroes2/heroes/heroes_action.cpp:170:27: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 170 | Text text( GetString( count ), Font::SMALL ); | ^~~~~ ../fheroes2/heroes/heroes_action.cpp:172:26: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 172 | text.Set( GetString( exp ) ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:175:49: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 175 | return Dialog::SpriteInfo( hdr, msg, image, buttons ); | ^~~~~~~ ../fheroes2/heroes/heroes_action.cpp:175:30: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | return Dialog::SpriteInfo( hdr, msg, image, buttons ); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes_action.cpp: In function 'u32 DialogArtifactWithExp(const string&, const string&, const Artifact&, u32, u32)': ../fheroes2/heroes/heroes_action.cpp:191:27: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 191 | Text text( GetString( exp ), Font::SMALL ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:194:49: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 194 | return Dialog::SpriteInfo( hdr, msg, image, buttons ); | ^~~~~~~ ../fheroes2/heroes/heroes_action.cpp:194:30: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 194 | return Dialog::SpriteInfo( hdr, msg, image, buttons ); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes_action.cpp: In function 'u32 DialogWithExp(const string&, const string&, u32, u32)': ../fheroes2/heroes/heroes_action.cpp:205:27: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 205 | Text text( GetString( exp ), Font::SMALL ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:208:49: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 208 | return Dialog::SpriteInfo( hdr, msg, image, buttons ); | ^~~~~~~ ../fheroes2/heroes/heroes_action.cpp:208:30: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 208 | return Dialog::SpriteInfo( hdr, msg, image, buttons ); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes_action.cpp: In function 'u32 DialogWithArtifactAndGold(const string&, const string&, const Artifact&, u32, u32)': ../fheroes2/heroes/heroes_action.cpp:224:27: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 224 | Text text( GetString( count ), Font::SMALL ); | ^~~~~ ../fheroes2/heroes/heroes_action.cpp:227:49: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 227 | return Dialog::SpriteInfo( hdr, msg, image, buttons ); | ^~~~~~~ ../fheroes2/heroes/heroes_action.cpp:227:30: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 227 | return Dialog::SpriteInfo( hdr, msg, image, buttons ); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes_action.cpp: In function 'u32 DialogWithGold(const string&, const string&, u32, u32)': ../fheroes2/heroes/heroes_action.cpp:239:27: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 239 | Text text( GetString( count ), Font::SMALL ); | ^~~~~ ../fheroes2/heroes/heroes_action.cpp:242:49: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 242 | return Dialog::SpriteInfo( hdr, msg, image, buttons ); | ^~~~~~~ ../fheroes2/heroes/heroes_action.cpp:242:30: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 242 | return Dialog::SpriteInfo( hdr, msg, image, buttons ); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes_action.cpp: In function 'u32 DialogMorale(const string&, const string&, bool, u32)': ../fheroes2/heroes/heroes_action.cpp:252:37: warning: conversion to 'u32' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 252 | u32 offset = sprite.width() * 4 / 3; | ~~~~~~~~~~~~~~~~~~~^~~ ../fheroes2/heroes/heroes_action.cpp:254:40: warning: conversion to 'u32' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 254 | fheroes2::Image image( sprite.width() + offset * ( count - 1 ), sprite.height() ); | ~~~~~~~~~~~~^~ ../fheroes2/heroes/heroes_action.cpp:254:43: warning: conversion to 'int32_t' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 254 | fheroes2::Image image( sprite.width() + offset * ( count - 1 ), sprite.height() ); | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes_action.cpp:258:47: warning: conversion to 'int32_t' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 258 | fheroes2::Blit( sprite, image, offset * ii, 0 ); | ~~~~~~~^~~~ ../fheroes2/heroes/heroes_action.cpp:260:30: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 260 | return Dialog::SpriteInfo( hdr, msg, image ); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes_action.cpp: In function 'u32 DialogLuck(const string&, const string&, bool, u32)': ../fheroes2/heroes/heroes_action.cpp:270:37: warning: conversion to 'u32' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 270 | u32 offset = sprite.width() * 4 / 3; | ~~~~~~~~~~~~~~~~~~~^~~ ../fheroes2/heroes/heroes_action.cpp:272:40: warning: conversion to 'u32' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 272 | fheroes2::Image image( sprite.width() + offset * ( count - 1 ), sprite.height() ); | ~~~~~~~~~~~~^~ ../fheroes2/heroes/heroes_action.cpp:272:43: warning: conversion to 'int32_t' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 272 | fheroes2::Image image( sprite.width() + offset * ( count - 1 ), sprite.height() ); | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes_action.cpp:276:47: warning: conversion to 'int32_t' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 276 | fheroes2::Blit( sprite, image, offset * ii, 0 ); | ~~~~~~~^~~~ ../fheroes2/heroes/heroes_action.cpp:278:30: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 278 | return Dialog::SpriteInfo( hdr, msg, image ); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void BattleLose(Heroes&, const Battle::Result&, bool, int)': ../fheroes2/heroes/heroes_action.cpp:291:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 291 | StringReplace( msg, "%{count}", exp ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:300:22: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 300 | hero.SetFreeman( reason ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp: In member function 'void Heroes::Action(s32)': ../fheroes2/heroes/heroes_action.cpp:411:37: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 411 | ActionToMonster( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:433:44: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 433 | ActionToObjectResource( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:440:38: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 440 | ActionToSkeleton( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:447:44: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 447 | ActionToPickupResource( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:452:43: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 452 | ActionToTreasureChest( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:455:41: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 455 | ActionToAncientLamp( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:458:37: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 458 | ActionToFlotSam( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:465:38: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 465 | ActionToArtifact( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:477:39: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 477 | ActionToWitchsHut( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:489:44: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 489 | ActionToGoodLuckObject( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:493:37: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 493 | ActionToPyramid( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:507:48: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 507 | ActionToPrimarySkillObject( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:515:46: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 515 | ActionToGoodMoraleObject( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:521:46: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 521 | ActionToPoorMoraleObject( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:526:46: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 526 | ActionToExperienceObject( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:529:40: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 529 | ActionToDaemonCave( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:542:46: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 542 | ActionToObservationTower( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:545:42: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 545 | ActionToMagellanMaps( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:553:43: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 553 | ActionToCaptureObject( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:557:42: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 557 | ActionToAbandoneMine( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:571:49: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 571 | ActionToDwellingJoinMonster( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:579:52: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 579 | ActionToDwellingRecruitMonster( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:586:51: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 586 | ActionToDwellingBattleMonster( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:590:44: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 590 | ActionToArtesianSpring( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:594:36: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 594 | ActionToXanadu( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:599:47: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 599 | ActionToUpgradeArmyObject( *this, object ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:607:37: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 607 | ActionToObelisk( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:611:43: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 611 | ActionToTreeKnowledge( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:618:36: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 618 | ActionToSphinx( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:627:52: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 627 | ActionToDwellingRecruitMonster( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:633:37: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 633 | ActionToStables( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:636:35: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 636 | ActionToArena( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:639:44: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 639 | ActionToGoodLuckObject( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:642:36: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 642 | ActionToSirens( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:645:34: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 645 | ActionToJail( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:648:37: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 648 | ActionToHutMagi( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:651:37: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 651 | ActionToEyeMagi( *this, object ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:655:37: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 655 | ActionToBarrier( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:658:44: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 658 | ActionToTravellersTent( *this, object, dst_index ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToMonster(Heroes&, u32, s32)': ../fheroes2/heroes/heroes_action.cpp:672:27: warning: comparison of integer expressions of different signedness: 'int' and 'u32' {aka 'unsigned int'} [-Wsign-compare] 672 | if ( tile.GetObject() == obj ) | ~~~~~~~~~~~~~~~~~^~~~~~ ../fheroes2/heroes/heroes_action.cpp:697:42: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 697 | const u32 gold = troop.GetCost().gold; | ~~~~~~~~~~~~~~~~^~~~ ../fheroes2/heroes/heroes_action.cpp:743:57: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 743 | map_troop->count = army.GetCountMonsters( troop() ); | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToBoat(Heroes&, s32)': ../fheroes2/heroes/heroes_action.cpp:911:35: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 911 | hero.FadeOut( Point( offset.x * Game::HumanHeroAnimSkip(), offset.y * Game::HumanHeroAnimSkip() ) ); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes_action.cpp:911:73: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 911 | hero.FadeOut( Point( offset.x * Game::HumanHeroAnimSkip(), offset.y * Game::HumanHeroAnimSkip() ) ); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToCoast(Heroes&, s32)': ../fheroes2/heroes/heroes_action.cpp:941:34: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 941 | hero.FadeIn( Point( offset.x * Game::HumanHeroAnimSkip(), offset.y * Game::HumanHeroAnimSkip() ) ); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes_action.cpp:941:72: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 941 | hero.FadeIn( Point( offset.x * Game::HumanHeroAnimSkip(), offset.y * Game::HumanHeroAnimSkip() ) ); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToPickupResource(Heroes&, u32, s32)': ../fheroes2/heroes/heroes_action.cpp:953:27: warning: comparison of integer expressions of different signedness: 'int' and 'u32' {aka 'unsigned int'} [-Wsign-compare] 953 | if ( tile.GetObject() == obj ) | ~~~~~~~~~~~~~~~~~^~~~~~ ../fheroes2/heroes/heroes_action.cpp:957:71: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 957 | MapSign * sign = dynamic_cast( world.GetMapObject( dst_index ) ); | ^~~~~~~~~ ../fheroes2/heroes/heroes_action.cpp:958:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 958 | Dialog::Message( MP2::StringObject( obj ), ( sign ? sign->message : "No message provided" ), Font::BIG, Dialog::OK ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:964:54: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 964 | Dialog::ResourceInfo( MP2::StringObject( obj ), _( "Ransacking an enemy camp, you discover a hidden cache of treasures." ), funds ); | ^~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToObjectResource(Heroes&, u32, s32)': ../fheroes2/heroes/heroes_action.cpp:998:54: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 998 | const std::string & caption = MP2::StringObject( obj ); | ^~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToSkeleton(Heroes&, u32, s32)': ../fheroes2/heroes/heroes_action.cpp:1066:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1066 | u32 gold = GoldInsteadArtifact( obj ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:1088:41: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1088 | hero.SetVisitedWideTile( dst_index, obj, Visit::GLOBAL ); | ^~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToFlotSam(Heroes&, u32, s32)': ../fheroes2/heroes/heroes_action.cpp:1147:50: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1147 | Dialog::ResourceInfo( MP2::StringObject( obj ), msg, funds ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:1152:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1152 | Dialog::Message( MP2::StringObject( obj ), msg, Font::BIG, Dialog::OK ); | ^~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToShrine(Heroes&, s32)': ../fheroes2/heroes/heroes_action.cpp:1166:40: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1166 | const u32 spell_level = spell.Level(); | ~~~~~~~~~~~^~ ../fheroes2/heroes/heroes_action.cpp:1195:92: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1195 | if ( !Settings::Get().ExtHeroBuySpellBookFromShrine() || !hero.BuySpellBook( NULL, spell_level ) ) { | ^~~~~~~~~~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToWitchsHut(Heroes&, u32, s32)': ../fheroes2/heroes/heroes_action.cpp:1239:49: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1239 | Dialog::Message( MP2::StringObject( obj ), msg, Font::BIG, Dialog::OK ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:1245:49: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1245 | Dialog::Message( MP2::StringObject( obj ), msg, Font::BIG, Dialog::OK ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:1252:60: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1252 | Dialog::SecondarySkillInfo( MP2::StringObject( obj ), msg, skill ); | ^~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToGoodLuckObject(Heroes&, u32, s32)': ../fheroes2/heroes/heroes_action.cpp:1262:46: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1262 | bool visited = hero.isObjectTypeVisited( obj ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:1293:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1293 | Dialog::Message( MP2::StringObject( obj ), msg, Font::BIG, Dialog::OK ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:1299:40: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1299 | DialogLuck( MP2::StringObject( obj ), msg, true, 1 ); | ^~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToPyramid(Heroes&, u32, s32)': ../fheroes2/heroes/heroes_action.cpp:1349:57: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1349 | Dialog::Message( MP2::StringObject( obj ), msg, Font::BIG, Dialog::OK ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:1361:44: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1361 | DialogLuck( MP2::StringObject( obj ), msg, false, 2 ); | ^~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToSign(Heroes&, s32)': ../fheroes2/heroes/heroes_action.cpp:1373:67: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 1373 | MapSign * sign = dynamic_cast( world.GetMapObject( dst_index ) ); | ^~~~~~~~~ ../fheroes2/heroes/heroes_action.cpp:1371:29: warning: unused parameter 'hero' [-Wunused-parameter] 1371 | void ActionToSign( Heroes & hero, s32 dst_index ) | ~~~~~~~~~^~~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToTradingPost(Heroes&)': ../fheroes2/heroes/heroes_action.cpp:1400:36: warning: unused parameter 'hero' [-Wunused-parameter] 1400 | void ActionToTradingPost( Heroes & hero ) | ~~~~~~~~~^~~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToPrimarySkillObject(Heroes&, u32, s32)': ../fheroes2/heroes/heroes_action.cpp:1449:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1449 | Dialog::Message( MP2::StringObject( obj ), msg, Font::BIG, Dialog::OK ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:1455:54: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1455 | Dialog::PrimarySkillInfo( MP2::StringObject( obj ), msg, skill ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:1458:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1458 | hero.SetVisitedWideTile( dst_index, obj ); | ^~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToPoorMoraleObject(Heroes&, u32, s32)': ../fheroes2/heroes/heroes_action.cpp:1490:61: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1490 | if ( Dialog::YES == Dialog::Message( MP2::StringObject( obj ), ask, Font::BIG, Dialog::YES | Dialog::NO ) ) { | ^~~ ../fheroes2/heroes/heroes_action.cpp:1504:53: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1504 | gold = GoldInsteadArtifact( obj ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:1505:60: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1505 | DialogWithGold( MP2::StringObject( obj ), win, gold ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:1508:71: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1508 | DialogWithArtifactAndGold( MP2::StringObject( obj ), win, art, gold ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:1513:56: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1513 | DialogWithGold( MP2::StringObject( obj ), win, gold ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:1532:46: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1532 | DialogMorale( MP2::StringObject( obj ), msg, false, 1 ); | ^~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToGoodMoraleObject(Heroes&, u32, s32)': ../fheroes2/heroes/heroes_action.cpp:1543:46: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1543 | bool visited = hero.isObjectTypeVisited( obj ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:1575:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1575 | Dialog::Message( MP2::StringObject( obj ), msg, Font::BIG, Dialog::OK ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:1581:42: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1581 | DialogMorale( MP2::StringObject( obj ), msg, true, ( obj == MP2::OBJ_TEMPLE ? 2 : 1 ) ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:1585:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1585 | hero.SetVisitedWideTile( dst_index, obj ); | ^~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToExperienceObject(Heroes&, u32, s32)': ../fheroes2/heroes/heroes_action.cpp:1613:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1613 | Dialog::Message( MP2::StringObject( obj ), msg, Font::BIG, Dialog::OK ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:1622:43: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1622 | DialogWithExp( MP2::StringObject( obj ), msg, exp ); | ^~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToArtifact(Heroes&, u32, s32)': ../fheroes2/heroes/heroes_action.cpp:1667:27: warning: comparison of integer expressions of different signedness: 'int' and 'u32' {aka 'unsigned int'} [-Wsign-compare] 1667 | if ( tile.GetObject() == obj ) | ~~~~~~~~~~~~~~~~~^~~~~~ ../fheroes2/heroes/heroes_action.cpp:1673:40: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1673 | u32 cond = tile.QuantityVariant(); | ~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/heroes/heroes_action.cpp:1677:34: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1677 | cond = map_artifact->condition; | ~~~~~~~~~~~~~~^~~~~~~~~ ../fheroes2/heroes/heroes_action.cpp:1697:52: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] 1697 | StringReplace( msg, "%{count}", rc.second ); | ~~~^~~~~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToTreasureChest(Heroes&, u32, s32)': ../fheroes2/heroes/heroes_action.cpp:1811:50: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1811 | const std::string & hdr = MP2::StringObject( obj ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:1823:49: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1823 | gold = GoldInsteadArtifact( obj ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:1825:52: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1825 | StringReplace( msg, "%{gold}", gold ); | ^~~~ ../fheroes2/heroes/heroes_action.cpp:1830:52: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1830 | StringReplace( msg, "%{gold}", gold ); | ^~~~ ../fheroes2/heroes/heroes_action.cpp:1838:48: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1838 | StringReplace( msg, "%{gold}", gold ); | ^~~~ ../fheroes2/heroes/heroes_action.cpp:1861:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1861 | gold = GoldInsteadArtifact( obj ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:1863:48: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1863 | StringReplace( msg, "%{gold}", gold ); | ^~~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToAncientLamp(Heroes&, u32, s32)': ../fheroes2/heroes/heroes_action.cpp:1894:56: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1894 | == Dialog::Message( MP2::StringObject( obj ), _( "You stumble upon a dented and tarnished lamp lodged deep in the earth. Do you wish to rub the lamp?" ), | ^~~ ../fheroes2/heroes/heroes_action.cpp:1896:64: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1896 | RecruitMonsterFromTile( hero, tile, MP2::StringObject( obj ), troop, true ); | ^~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToCaptureObject(Heroes&, u32, s32)': ../fheroes2/heroes/heroes_action.cpp:2009:37: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2009 | header = MP2::StringObject( obj ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:2015:37: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2015 | header = MP2::StringObject( obj ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:2020:49: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 2020 | resource = tile.QuantityResourceCount().first; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ ../fheroes2/heroes/heroes_action.cpp:2021:38: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2021 | header = Maps::GetMinesName( resource ); | ^~~~~~~~ ../fheroes2/heroes/heroes_action.cpp:2049:37: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2049 | header = MP2::StringObject( obj ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:2055:37: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2055 | header = MP2::StringObject( obj ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:2056:60: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2056 | StringReplace( body, "%{name}", MP2::StringObject( obj ) ); | ^~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToDwellingJoinMonster(Heroes&, u32, s32)': ../fheroes2/heroes/heroes_action.cpp:2133:65: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2133 | if ( Dialog::YES == Dialog::Message( MP2::StringObject( obj ), message, Font::BIG, Dialog::YES | Dialog::NO ) ) { | ^~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToDwellingRecruitMonster(Heroes&, u32, s32)': ../fheroes2/heroes/heroes_action.cpp:2217:41: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2217 | AGG::PlayMusic( MUS::FromMapObject( obj ), false ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:2222:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2222 | Dialog::Message( MP2::StringObject( obj ), msg_void, Font::BIG, Dialog::OK ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:2223:66: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2223 | else if ( Dialog::YES == Dialog::Message( MP2::StringObject( obj ), msg_full, Font::BIG, Dialog::YES | Dialog::NO ) ) | ^~~ ../fheroes2/heroes/heroes_action.cpp:2224:64: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2224 | RecruitMonsterFromTile( hero, tile, MP2::StringObject( obj ), troop, false ); | ^~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToDwellingBattleMonster(Heroes&, u32, s32)': ../fheroes2/heroes/heroes_action.cpp:2277:49: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2277 | Dialog::Message( MP2::StringObject( obj ), str_empty, Font::BIG, Dialog::OK ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:2283:65: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2283 | if ( Dialog::YES == Dialog::Message( MP2::StringObject( obj ), str_warn, Font::BIG, Dialog::YES | Dialog::NO ) ) { | ^~~ ../fheroes2/heroes/heroes_action.cpp:2300:84: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2300 | if ( troop.isValid() && Dialog::YES == Dialog::Message( MP2::StringObject( obj ), str_scss, Font::BIG, Dialog::YES | Dialog::NO ) ) | ^~~ ../fheroes2/heroes/heroes_action.cpp:2301:68: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2301 | RecruitMonsterFromTile( hero, tile, MP2::StringObject( obj ), troop, false ); | ^~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToObservationTower(Heroes&, u32, s32)': ../fheroes2/heroes/heroes_action.cpp:2311:41: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2311 | Dialog::Message( MP2::StringObject( obj ), _( "From the observation tower, you are able to see distant lands." ), Font::BIG, Dialog::OK ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:2312:53: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2312 | Maps::ClearFog( dst_index, Game::GetViewDistance( Game::VIEW_OBSERVATION_TOWER ), hero.GetColor() ); | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToArtesianSpring(Heroes&, u32, s32)': ../fheroes2/heroes/heroes_action.cpp:2341:49: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2341 | hero.SetVisitedWideTile( dst_index, obj, Visit::LOCAL ); | ^~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToXanadu(Heroes&, u32, s32)': ../fheroes2/heroes/heroes_action.cpp:2352:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2352 | Dialog::Message( MP2::StringObject( obj ), | ^~~ ../fheroes2/heroes/heroes_action.cpp:2378:49: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2378 | Dialog::Message( MP2::StringObject( obj ), _( "The butler admits you to see the master of the house. He trains you in the four skills a hero should know." ), | ^~~ ../fheroes2/heroes/heroes_action.cpp:2388:36: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2388 | MP2::StringObject( obj ), | ^~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToUpgradeArmyObject(Heroes&, u32)': ../fheroes2/heroes/heroes_action.cpp:2469:46: warning: conversion to 'int32_t' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2469 | fheroes2::Blit( border, surface, offsetX, 0 ); | ^~~~~~~ ../fheroes2/heroes/heroes_action.cpp:2473:90: warning: conversion to 'int32_t' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2473 | fheroes2::Blit( fheroes2::AGG::GetICN( ICN::STRIP, 4 ), surface, offsetX + 6, 6 ); | ~~~~~~~~^~~ ../fheroes2/heroes/heroes_action.cpp:2476:90: warning: conversion to 'int32_t' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2476 | fheroes2::Blit( fheroes2::AGG::GetICN( ICN::STRIP, 5 ), surface, offsetX + 6, 6 ); | ~~~~~~~~^~~ ../fheroes2/heroes/heroes_action.cpp:2479:90: warning: conversion to 'int32_t' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2479 | fheroes2::Blit( fheroes2::AGG::GetICN( ICN::STRIP, 6 ), surface, offsetX + 6, 6 ); | ~~~~~~~~^~~ ../fheroes2/heroes/heroes_action.cpp:2482:90: warning: conversion to 'int32_t' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2482 | fheroes2::Blit( fheroes2::AGG::GetICN( ICN::STRIP, 7 ), surface, offsetX + 6, 6 ); | ~~~~~~~~^~~ ../fheroes2/heroes/heroes_action.cpp:2485:90: warning: conversion to 'int32_t' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2485 | fheroes2::Blit( fheroes2::AGG::GetICN( ICN::STRIP, 8 ), surface, offsetX + 6, 6 ); | ~~~~~~~~^~~ ../fheroes2/heroes/heroes_action.cpp:2488:90: warning: conversion to 'int32_t' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2488 | fheroes2::Blit( fheroes2::AGG::GetICN( ICN::STRIP, 9 ), surface, offsetX + 6, 6 ); | ~~~~~~~~^~~ ../fheroes2/heroes/heroes_action.cpp:2491:91: warning: conversion to 'int32_t' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2491 | fheroes2::Blit( fheroes2::AGG::GetICN( ICN::STRIP, 10 ), surface, offsetX + 6, 6 ); | ~~~~~~~~^~~ ../fheroes2/heroes/heroes_action.cpp:2496:62: warning: conversion to 'u32' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 2496 | fheroes2::Blit( mon, surface, offsetX + 6 + mon.x(), 6 + mon.y() ); | ~~~~~^~ ../fheroes2/heroes/heroes_action.cpp:2496:55: warning: conversion to 'int32_t' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2496 | fheroes2::Blit( mon, surface, offsetX + 6 + mon.x(), 6 + mon.y() ); | ~~~~~~~~~~~~^~~~~~~~~ ../fheroes2/heroes/heroes_action.cpp:2497:41: warning: conversion to 'u32' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 2497 | offsetX += border.width() + 4; | ^ ../fheroes2/heroes/heroes_action.cpp:2499:48: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2499 | Dialog::SpriteInfo( MP2::StringObject( obj ), msg1, surface ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:2505:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2505 | Dialog::Message( MP2::StringObject( obj ), msg2, Font::BIG, Dialog::OK ); | ^~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToMagellanMaps(Heroes&, u32, s32)': ../fheroes2/heroes/heroes_action.cpp:2516:36: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2516 | if ( hero.isObjectTypeVisited( obj, Visit::GLOBAL ) ) { | ^~~ ../fheroes2/heroes/heroes_action.cpp:2517:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2517 | Dialog::Message( MP2::StringObject( obj ), "empty", Font::BIG, Dialog::OK ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:2523:36: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2523 | MP2::StringObject( obj ), | ^~~ ../fheroes2/heroes/heroes_action.cpp:2535:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2535 | Dialog::Message( MP2::StringObject( obj ), _( "The captain sighs. \"You don't have enough money, eh? You can't expect me to give my maps away for free!\"" ), | ^~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToObelisk(Heroes&, u32, s32)': ../fheroes2/heroes/heroes_action.cpp:2586:32: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2586 | MP2::StringObject( obj ), | ^~~ ../fheroes2/heroes/heroes_action.cpp:2592:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2592 | Dialog::Message( MP2::StringObject( obj ), _( "You have already been to this obelisk." ), Font::BIG, Dialog::OK ); | ^~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToTreeKnowledge(Heroes&, u32, s32)': ../fheroes2/heroes/heroes_action.cpp:2602:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2602 | Dialog::Message( MP2::StringObject( obj ), | ^~~ ../fheroes2/heroes/heroes_action.cpp:2616:52: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2616 | Dialog::SpriteInfo( MP2::StringObject( obj ), msg, sprite ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:2628:52: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] 2628 | StringReplace( msg, "%{count}", rc.second ); | ~~~^~~~~~ ../fheroes2/heroes/heroes_action.cpp:2629:84: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2629 | conditions = Dialog::YES == Dialog::SpriteInfo( MP2::StringObject( obj ), msg, fheroes2::AGG::GetICN( ICN::EXPMRL, 4 ), Dialog::YES | Dialog::NO ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:2638:52: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] 2638 | StringReplace( msg, "%{count}", rc.second ); | ~~~^~~~~~ ../fheroes2/heroes/heroes_action.cpp:2639:53: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2639 | Dialog::Message( MP2::StringObject( obj ), msg, Font::BIG, Dialog::OK ); | ^~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToOracle(Heroes&)': ../fheroes2/heroes/heroes_action.cpp:2653:31: warning: unused parameter 'hero' [-Wunused-parameter] 2653 | void ActionToOracle( Heroes & hero ) | ~~~~~~~~~^~~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToDaemonCave(Heroes&, u32, s32)': ../fheroes2/heroes/heroes_action.cpp:2666:49: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2666 | == Dialog::Message( MP2::StringObject( obj ), _( "The entrance to the cave is dark, and a foul, sulfurous smell issues from the cave mouth. Will you enter?" ), | ^~~ ../fheroes2/heroes/heroes_action.cpp:2668:43: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 2668 | u32 variant = tile.QuantityVariant(); | ~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/heroes/heroes_action.cpp:2691:53: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2691 | StringReplace( msg, "%{count}", gold ); | ^~~~ ../fheroes2/heroes/heroes_action.cpp:2723:49: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2723 | StringReplace( msg, "%{count}", gold ); | ^~~~ ../fheroes2/heroes/heroes_action.cpp:2737:49: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2737 | StringReplace( msg, "%{count}", gold ); | ^~~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToAlchemistsTower(Heroes&)': ../fheroes2/heroes/heroes_action.cpp:2779:45: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2779 | StringReplace( msg, "%{count}", cursed ); | ^~~~~~ ../fheroes2/heroes/heroes_action.cpp:2787:42: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'std::__iterator_traits<__gnu_cxx::__normal_iterator >, void>::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 2787 | bag.resize( std::distance( bag.begin(), std::remove_if( bag.begin(), bag.end(), std::mem_fun_ref( &Artifact::isAlchemistRemove ) ) ) ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToStables(Heroes&, u32, s32)': ../fheroes2/heroes/heroes_action.cpp:2803:52: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2803 | const bool visited = hero.isObjectTypeVisited( obj ); | ^~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToArena(Heroes&, u32, s32)': ../fheroes2/heroes/heroes_action.cpp:2836:36: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2836 | if ( hero.isObjectTypeVisited( obj ) ) { | ^~~ ../fheroes2/heroes/heroes_action.cpp:2837:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2837 | Dialog::Message( MP2::StringObject( obj ), _( "The Arena guards turn you away." ), Font::BIG, Dialog::OK ); | ^~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToSirens(Heroes&, u32, s32)': ../fheroes2/heroes/heroes_action.cpp:2850:36: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2850 | if ( hero.isObjectTypeVisited( obj ) ) { | ^~~ ../fheroes2/heroes/heroes_action.cpp:2851:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2851 | Dialog::Message( MP2::StringObject( obj ), | ^~~ ../fheroes2/heroes/heroes_action.cpp:2859:39: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2859 | StringReplace( str, "%{exp}", exp ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:2863:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2863 | Dialog::Message( MP2::StringObject( obj ), str, Font::BIG, Dialog::OK ); | ^~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToJail(Heroes&, u32, s32)': ../fheroes2/heroes/heroes_action.cpp:2878:32: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2878 | MP2::StringObject( obj ), | ^~~ ../fheroes2/heroes/heroes_action.cpp:2895:62: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2895 | StringReplace( str, "%{count}", Kingdom::GetMaxHeroes() ); | ~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/heroes/heroes_action.cpp:2896:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2896 | Dialog::Message( MP2::StringObject( obj ), str, Font::BIG, Dialog::OK ); | ^~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToHutMagi(Heroes&, u32, s32)': ../fheroes2/heroes/heroes_action.cpp:2904:41: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2904 | Dialog::Message( MP2::StringObject( obj ), | ^~~ ../fheroes2/heroes/heroes_action.cpp:2908:37: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2908 | if ( !hero.isObjectTypeVisited( obj, Visit::GLOBAL ) ) { | ^~~ ../fheroes2/heroes/heroes_action.cpp:2915:59: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2915 | Maps::ClearFog( *it, Game::GetViewDistance( Game::VIEW_MAGI_EYES ), hero.GetColor() ); | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToEyeMagi(Heroes&, u32)': ../fheroes2/heroes/heroes_action.cpp:2939:41: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2939 | Dialog::Message( MP2::StringObject( obj ), _( "This eye seems to be intently studying its surroundings." ), Font::BIG, Dialog::OK ); | ^~~ ../fheroes2/heroes/heroes_action.cpp:2937:32: warning: unused parameter 'hero' [-Wunused-parameter] 2937 | void ActionToEyeMagi( Heroes & hero, u32 obj ) | ~~~~~~~~~^~~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToSphinx(Heroes&, u32, s32)': ../fheroes2/heroes/heroes_action.cpp:2946:73: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 2946 | MapSphinx * riddle = dynamic_cast( world.GetMapObject( dst_index ) ); | ^~~~~~~~~ ../fheroes2/heroes/heroes_action.cpp:2966:70: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 2966 | DialogWithArtifactAndGold( "", say, art, res.gold ); | ~~~~^~~~ ../fheroes2/heroes/heroes_action.cpp:2997:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2997 | Dialog::Message( MP2::StringObject( obj ), _( "You come across a giant Sphinx. The Sphinx remains strangely quiet." ), Font::BIG, Dialog::OK ); | ^~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToBarrier(Heroes&, u32, s32)': ../fheroes2/heroes/heroes_action.cpp:3010:32: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 3010 | MP2::StringObject( obj ), | ^~~ ../fheroes2/heroes/heroes_action.cpp:3020:32: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 3020 | MP2::StringObject( obj ), | ^~~ ../fheroes2/heroes/heroes_action.cpp: In function 'void ActionToTravellersTent(Heroes&, u32, s32)': ../fheroes2/heroes/heroes_action.cpp:3032:28: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 3032 | MP2::StringObject( obj ), | ^~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/heroes/heroes_action.cpp:42: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ In file included from ../fheroes2/gui/interface_icons.h:27, from ../fheroes2/game/game_interface.h:31, from ../fheroes2/heroes/heroes_action.cpp:29: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Castle*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Heroes*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: route.o In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/heroes/route.cpp:31: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: color.o In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/kingdom/color.cpp:28: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: heroes_spell.o ../fheroes2/heroes/heroes_spell.cpp: In function 'bool ActionSpellDimensionDoor(Heroes&)': ../fheroes2/heroes/heroes_spell.cpp:413:78: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 413 | const u32 distance = Spell::CalculateDimensionDoorDistance( hero.GetPower(), hero.GetArmy().GetHitPoints() ); | ~~~~~~~~~~~~~^~ ../fheroes2/heroes/heroes_spell.cpp: In function 'bool ActionSpellTownGate(Heroes&)': ../fheroes2/heroes/heroes_spell.cpp:470:52: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 470 | int min2 = Maps::GetApproximateDistance( center, ( *it )->GetIndex() ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/heroes_spell.cpp: In function 'bool ActionSpellVisions(Heroes&)': ../fheroes2/heroes/heroes_spell.cpp:580:59: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 580 | StringReplace( hdr, "%{count}", troop.GetCount() ); | ~~~~~~~~~~~~~~^~ ../fheroes2/heroes/heroes_spell.cpp:596:58: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] 596 | StringReplace( msg, "%{count}", join.second ); | ~~~~~^~~~~~ ../fheroes2/heroes/heroes_spell.cpp:613:41: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 613 | StringReplace( msg, "%{count}", dist ); | ^~~~ ../fheroes2/heroes/heroes_spell.cpp: In function 'bool ActionSpellSetGuardian(Heroes&, const Spell&)': ../fheroes2/heroes/heroes_spell.cpp:632:36: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 632 | const u32 count = hero.GetPower() * spell.ExtraValue(); | ~~~~~~~~~~~~~^~ In file included from ../fheroes2/gui/interface_icons.h:27, from ../fheroes2/game/game_interface.h:31, from ../fheroes2/heroes/heroes_spell.cpp:28: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = int]': ../fheroes2/heroes/heroes_spell.cpp:533:20: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ In file included from ../fheroes2/gui/interface_icons.h:27, from ../fheroes2/game/game_interface.h:31, from ../fheroes2/heroes/heroes_spell.cpp:28: ../fheroes2/gui/interface_list.h: In instantiation of 'Item& Interface::ListBox::GetCurrent() [with Item = int]': ../fheroes2/heroes/heroes_spell.cpp:556:90: required from here ../fheroes2/gui/interface_list.h:186:33: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 186 | return ( *content )[_currentId]; | ^~~~~~~~~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/heroes/heroes_spell.cpp:36: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ In file included from ../fheroes2/gui/interface_icons.h:27, from ../fheroes2/game/game_interface.h:31, from ../fheroes2/heroes/heroes_spell.cpp:28: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Castle*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Heroes*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: morale.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: luck.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: kingdom.o ../fheroes2/kingdom/kingdom.cpp: In member function 'u32 Kingdom::CountVisitedObjects(int) const': ../fheroes2/kingdom/kingdom.cpp:351:25: warning: conversion to 'u32' {aka 'unsigned int'} from 'std::__iterator_traits, void>::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 351 | return std::count_if( visit_object.begin(), visit_object.end(), std::bind2nd( std::mem_fun_ref( &IndexObject::isObject ), object ) ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/kingdom/kingdom.cpp: In member function 'void Kingdom::ApplyPlayWithStartingHero()': ../fheroes2/kingdom/kingdom.cpp:483:44: warning: conversion to 'u32' {aka 'unsigned int'} from 's16' {aka 'short int'} may change the sign of the result [-Wsign-conversion] 483 | Heroes * hero = world.GetTiles( cp.x, cp.y + 1 ).GetHeroes(); | ~~~^ ../fheroes2/kingdom/kingdom.cpp:483:52: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 483 | Heroes * hero = world.GetTiles( cp.x, cp.y + 1 ).GetHeroes(); | ~~~~~^~~ ../fheroes2/kingdom/kingdom.cpp: In member function 'Funds Kingdom::GetIncome(int) const': ../fheroes2/kingdom/kingdom.cpp:573:89: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 573 | totalIncome.gold += ( **ith ).GetSecondaryValues( Skill::Secondary::ESTATES ); | ^ ../fheroes2/kingdom/kingdom.cpp:573:89: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] ../fheroes2/kingdom/kingdom.cpp:577:94: warning: conversion from 'double' to 's32' {aka 'int'} may change value [-Wfloat-conversion] 577 | totalIncome.gold *= Difficulty::GetGoldIncomeBonus( Settings::Get().GameDifficulty() ); | ^ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/kingdom/kingdom.cpp:38: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ In file included from ../fheroes2/gui/interface_icons.h:27, from ../fheroes2/game/game_interface.h:31, from ../fheroes2/kingdom/kingdom.cpp:30: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Castle*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Heroes*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: payment.o ../fheroes2/kingdom/payment.cpp: In function 'void LoadCostFromXMLElement(cost_t&, const TiXmlElement&)': ../fheroes2/kingdom/payment.cpp:56:17: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 56 | cost.gold = value; | ^~~~~ ../fheroes2/kingdom/payment.cpp:58:17: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 58 | cost.wood = value; | ^~~~~ ../fheroes2/kingdom/payment.cpp:60:20: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 60 | cost.mercury = value; | ^~~~~ ../fheroes2/kingdom/payment.cpp:62:16: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 62 | cost.ore = value; | ^~~~~ ../fheroes2/kingdom/payment.cpp:64:19: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 64 | cost.sulfur = value; | ^~~~~ ../fheroes2/kingdom/payment.cpp:66:20: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 66 | cost.crystal = value; | ^~~~~ ../fheroes2/kingdom/payment.cpp:68:17: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 68 | cost.gems = value; | ^~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: profit.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: speed.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: race.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: puzzle.o ../fheroes2/kingdom/puzzle.cpp: In function 'void ShowStandardDialog(const Puzzle&, const fheroes2::Image&)': ../fheroes2/kingdom/puzzle.cpp:155:60: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 155 | Point dst_pt( radarPos.x + 32, radarPos.y + radarPos.h - 37 ); | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~ ../fheroes2/kingdom/puzzle.cpp: In function 'void ShowExtendedDialog(const Puzzle&, const fheroes2::Image&)': ../fheroes2/kingdom/puzzle.cpp:185:46: warning: conversion to 'u32' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 185 | sf.width(), sf.height() ); | ~~~~~~~~^~ ../fheroes2/kingdom/puzzle.cpp:185:59: warning: conversion to 'u32' {aka 'unsigned int'} from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 185 | sf.width(), sf.height() ); | ~~~~~~~~~^~ ../fheroes2/kingdom/puzzle.cpp:204:60: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 204 | Point dst_pt( radarPos.x + 32, radarPos.y + radarPos.h - 37 ); | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/kingdom/puzzle.cpp:36: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ In file included from ../fheroes2/gui/interface_icons.h:27, from ../fheroes2/game/game_interface.h:31, from ../fheroes2/kingdom/puzzle.cpp:29: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Castle*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Heroes*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: kingdom_overview.o ../fheroes2/kingdom/kingdom_overview.cpp: In constructor 'StatsHeroesList::StatsHeroesList(const Point&, KingdomHeroes&)': ../fheroes2/kingdom/kingdom_overview.cpp:139:30: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'std::__iterator_traits<__gnu_cxx::__normal_iterator >, void>::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 139 | content[std::distance( heroes.begin(), it )].Init( *it ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/kingdom/kingdom_overview.cpp: In member function 'virtual void StatsHeroesList::ActionListSingleClick(HeroRow&, const Point&, s32, s32)': ../fheroes2/kingdom/kingdom_overview.cpp:152:80: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 152 | && ( fheroes2::Rect( ox + 5, oy + 4, Interface::IconsBar::GetItemWidth(), Interface::IconsBar::GetItemHeight() ) & fheroes2::Point( cursor.x, cursor.y ) ) ) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/kingdom/kingdom_overview.cpp:152:118: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 152 | && ( fheroes2::Rect( ox + 5, oy + 4, Interface::IconsBar::GetItemWidth(), Interface::IconsBar::GetItemHeight() ) & fheroes2::Point( cursor.x, cursor.y ) ) ) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/kingdom/kingdom_overview.cpp: In member function 'virtual void StatsHeroesList::ActionListPressRight(HeroRow&, const Point&, s32, s32)': ../fheroes2/kingdom/kingdom_overview.cpp:159:80: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 159 | && ( fheroes2::Rect( ox + 5, oy + 4, Interface::IconsBar::GetItemWidth(), Interface::IconsBar::GetItemHeight() ) & fheroes2::Point( cursor.x, cursor.y ) ) ) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/kingdom/kingdom_overview.cpp:159:118: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 159 | && ( fheroes2::Rect( ox + 5, oy + 4, Interface::IconsBar::GetItemWidth(), Interface::IconsBar::GetItemHeight() ) & fheroes2::Point( cursor.x, cursor.y ) ) ) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/kingdom/kingdom_overview.cpp: In constructor 'StatsCastlesList::StatsCastlesList(const Point&, KingdomCastles&)': ../fheroes2/kingdom/kingdom_overview.cpp:351:30: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'std::__iterator_traits<__gnu_cxx::__normal_iterator >, void>::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 351 | content[std::distance( castles.begin(), it )].Init( *it ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/kingdom/kingdom_overview.cpp: In member function 'virtual void StatsCastlesList::ActionListSingleClick(CstlRow&, const Point&, s32, s32)': ../fheroes2/kingdom/kingdom_overview.cpp:365:81: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 365 | if ( fheroes2::Rect( ox + 17, oy + 19, Interface::IconsBar::GetItemWidth(), Interface::IconsBar::GetItemHeight() ) & fheroes2::Point( cursor.x, cursor.y ) ) { | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/kingdom/kingdom_overview.cpp:365:119: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 365 | if ( fheroes2::Rect( ox + 17, oy + 19, Interface::IconsBar::GetItemWidth(), Interface::IconsBar::GetItemHeight() ) & fheroes2::Point( cursor.x, cursor.y ) ) { | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/kingdom/kingdom_overview.cpp:371:85: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 371 | if ( fheroes2::Rect( ox + 82, oy + 19, Interface::IconsBar::GetItemWidth(), Interface::IconsBar::GetItemHeight() ) & fheroes2::Point( cursor.x, cursor.y ) ) { | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/kingdom/kingdom_overview.cpp:371:123: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 371 | if ( fheroes2::Rect( ox + 82, oy + 19, Interface::IconsBar::GetItemWidth(), Interface::IconsBar::GetItemHeight() ) & fheroes2::Point( cursor.x, cursor.y ) ) { | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/kingdom/kingdom_overview.cpp: In member function 'virtual void StatsCastlesList::ActionListPressRight(CstlRow&, const Point&, s32, s32)': ../fheroes2/kingdom/kingdom_overview.cpp:384:83: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 384 | if ( ( fheroes2::Rect( ox + 17, oy + 19, Interface::IconsBar::GetItemWidth(), Interface::IconsBar::GetItemHeight() ) & fheroes2::Point( cursor.x, cursor.y ) ) ) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/kingdom/kingdom_overview.cpp:384:121: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 384 | if ( ( fheroes2::Rect( ox + 17, oy + 19, Interface::IconsBar::GetItemWidth(), Interface::IconsBar::GetItemHeight() ) & fheroes2::Point( cursor.x, cursor.y ) ) ) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/kingdom/kingdom_overview.cpp:386:86: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 386 | else if ( fheroes2::Rect( ox + 82, oy + 19, Interface::IconsBar::GetItemWidth(), Interface::IconsBar::GetItemHeight() ) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/kingdom/kingdom_overview.cpp:386:124: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 386 | else if ( fheroes2::Rect( ox + 82, oy + 19, Interface::IconsBar::GetItemWidth(), Interface::IconsBar::GetItemHeight() ) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ In file included from ../fheroes2/gui/interface_icons.h:27, from ../fheroes2/kingdom/kingdom_overview.cpp:31: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = CstlRow]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = HeroRow]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/kingdom/kingdom_overview.cpp:38: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ In file included from ../fheroes2/gui/interface_icons.h:27, from ../fheroes2/kingdom/kingdom_overview.cpp:31: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Castle*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Heroes*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: week.o ../fheroes2/kingdom/week.cpp: In static member function 'static int Week::WeekRand()': ../fheroes2/kingdom/week.cpp:118:95: warning: enumerated and non-enumerated type in conditional expression [-Wextra] 118 | return ( 0 == ( world.CountWeek() + 1 ) % 3 ) && ( !Settings::Get().ExtWorldBanWeekOf() ) ? MONSTERS : Rand::Get( ANT, CONDOR ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/kingdom/week.cpp:118:95: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] ../fheroes2/kingdom/week.cpp: In static member function 'static int Week::MonthRand()': ../fheroes2/kingdom/week.cpp:123:94: warning: enumerated and non-enumerated type in conditional expression [-Wextra] 123 | return ( 0 == ( world.GetMonth() + 1 ) % 3 ) && ( !Settings::Get().ExtWorldBanWeekOf() ) ? MONSTERS | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ 124 | : Rand::Get( Settings::Get().ExtWorldBanPlagues() ? ANT : PLAGUE, CONDOR ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/kingdom/week.cpp:123:94: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/kingdom/week.cpp:28: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: ground.o In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/maps/ground.cpp:25: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: skill.o ../fheroes2/heroes/skill.cpp: In member function 'std::string Skill::Secondary::GetDescription() const': ../fheroes2/heroes/skill.cpp:572:37: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 572 | StringReplace( str, "%{count}", count ); | ^~~~~ ../fheroes2/heroes/skill.cpp: In function 'int Skill::SecondaryPriorityFromRace(int, const std::vector&)': ../fheroes2/heroes/skill.cpp:751:71: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 751 | parts.Push( secskills[ii], SecondaryGetWeightSkillFromRace( race, secskills[ii] ) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/heroes/skill.cpp: In function 'int Skill::GetLeadershipModifiers(int, std::string*)': ../fheroes2/heroes/skill.cpp:812:54: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 812 | StringAppendModifiers( *strs, skill.GetValues() ); | ~~~~~~~~~~~~~~~^~ ../fheroes2/heroes/skill.cpp:816:27: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 816 | return skill.GetValues(); | ~~~~~~~~~~~~~~~^~ ../fheroes2/heroes/skill.cpp: In function 'int Skill::GetLuckModifiers(int, std::string*)': ../fheroes2/heroes/skill.cpp:825:54: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 825 | StringAppendModifiers( *strs, skill.GetValues() ); | ~~~~~~~~~~~~~~~^~ ../fheroes2/heroes/skill.cpp:829:27: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 829 | return skill.GetValues(); | ~~~~~~~~~~~~~~~^~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: maps_actions.o In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/maps/maps_actions.cpp:31: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: mp2.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: maps.o ../fheroes2/maps/maps.cpp: In constructor 'Maps::IndexesDistance::IndexesDistance(s32, s32, u32, int)': ../fheroes2/maps/maps.cpp:53:45: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 53 | Assign( from, GetAroundIndexes( center, dist, sort ), sort ); | ^~~~ ../fheroes2/maps/maps.cpp: In function 'Point Maps::GetPoint(s32)': ../fheroes2/maps/maps.cpp:240:25: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 240 | return Point( index % world.w(), index / world.w() ); | ~~~~~~^~~~~~~~~~~ ../fheroes2/maps/maps.cpp:240:44: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 240 | return Point( index % world.w(), index / world.w() ); | ~~~~~~^~~~~~~~~~~ ../fheroes2/maps/maps.cpp: In function 'Maps::Indexes Maps::GetAroundIndexes(s32, int, bool)': ../fheroes2/maps/maps.cpp:327:27: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 327 | results.reserve( dist * 12 ); | ~~~~~^~~~ ../fheroes2/maps/maps.cpp: In function 'Maps::Indexes Maps::GetDistanceIndexes(s32, int)': ../fheroes2/maps/maps.cpp:346:27: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 346 | results.reserve( dist * 6 ); | ~~~~~^~~ ../fheroes2/maps/maps.cpp: In function 'Maps::Indexes Maps::ScanAroundObject(s32, u32, int)': ../fheroes2/maps/maps.cpp:412:55: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 412 | Indexes results = Maps::GetAroundIndexes( center, dist, true ); | ^~~~ ../fheroes2/maps/maps.cpp: In function 'Maps::Indexes Maps::ScanAroundObjects(s32, u32, const u8*)': ../fheroes2/maps/maps.cpp:418:55: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 418 | Indexes results = Maps::GetAroundIndexes( center, dist, true ); | ^~~~ ../fheroes2/maps/maps.cpp: In function 'void Maps::MinimizeAreaForCastle(const Point&)': ../fheroes2/maps/maps.cpp:533:59: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 533 | Maps::Tiles & tile = world.GetTiles( center.x + xx, center.y + yy ); | ~~~~~~~~~^~~~ ../fheroes2/maps/maps.cpp:533:74: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 533 | Maps::Tiles & tile = world.GetTiles( center.x + xx, center.y + yy ); | ~~~~~~~~~^~~~ ../fheroes2/maps/maps.cpp:542:59: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 542 | Maps::Tiles & tile = world.GetTiles( center.x + xx, center.y + yy ); | ~~~~~~~~~^~~~ ../fheroes2/maps/maps.cpp:542:74: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 542 | Maps::Tiles & tile = world.GetTiles( center.x + xx, center.y + yy ); | ~~~~~~~~~^~~~ ../fheroes2/maps/maps.cpp:552:28: warning: conversion to 'u32' {aka 'unsigned int'} from 's16' {aka 'short int'} may change the sign of the result [-Wsign-conversion] 552 | world.GetTiles( center.x, center.y ).SetObject( MP2::OBJ_CASTLE ); | ~~~~~~~^ ../fheroes2/maps/maps.cpp:552:38: warning: conversion to 'u32' {aka 'unsigned int'} from 's16' {aka 'short int'} may change the sign of the result [-Wsign-conversion] 552 | world.GetTiles( center.x, center.y ).SetObject( MP2::OBJ_CASTLE ); | ~~~~~~~^ ../fheroes2/maps/maps.cpp: In function 'void Maps::UpdateCastleSprite(const Point&, int, bool, bool)': ../fheroes2/maps/maps.cpp:570:63: warning: conversion to 'u32' {aka 'unsigned int'} from 's16' {aka 'short int'} may change the sign of the result [-Wsign-conversion] 570 | const Maps::Tiles & entranceTile = world.GetTiles( center.x, center.y ); | ~~~~~~~^ ../fheroes2/maps/maps.cpp:570:73: warning: conversion to 'u32' {aka 'unsigned int'} from 's16' {aka 'short int'} may change the sign of the result [-Wsign-conversion] 570 | const Maps::Tiles & entranceTile = world.GetTiles( center.x, center.y ); | ~~~~~~~^ ../fheroes2/maps/maps.cpp:616:65: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 616 | tile.ReplaceObjectSprite( castleID, 38, 35 * 4, lookupID, fullTownIndex ); // OBJNTWRD to OBJNTOWN | ^~~~~~~~ ../fheroes2/maps/maps.cpp:616:75: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 616 | tile.ReplaceObjectSprite( castleID, 38, 35 * 4, lookupID, fullTownIndex ); // OBJNTWRD to OBJNTOWN | ^~~~~~~~~~~~~ ../fheroes2/maps/maps.cpp:624:50: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 624 | addon->index = fullTownIndex - 16; | ~~~~~~~~~~~~~~^~~~ ../fheroes2/maps/maps.cpp:632:98: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 632 | world.GetTiles( shadowTile ).ReplaceObjectSprite( castleID, 38, 37 * 4, lookupID + 32, fullTownIndex ); // OBJNTWRD to OBJNTWSH | ~~~~~~~~~^~~~ ../fheroes2/maps/maps.cpp:632:104: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 632 | world.GetTiles( shadowTile ).ReplaceObjectSprite( castleID, 38, 37 * 4, lookupID + 32, fullTownIndex ); // OBJNTWRD to OBJNTWSH | ^~~~~~~~~~~~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/maps/maps.cpp:35: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: maps_tiles_quantity.o ../fheroes2/maps/maps_tiles_quantity.cpp: In member function 'void Maps::Tiles::QuantitySetVariant(int)': ../fheroes2/maps/maps_tiles_quantity.cpp:86:15: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 86 | quantity2 |= variant << 4; | ~~~~~~~~~~^~~~~~~~~~~~~~~ ../fheroes2/maps/maps_tiles_quantity.cpp: In member function 'void Maps::Tiles::QuantitySetExt(int)': ../fheroes2/maps/maps_tiles_quantity.cpp:92:15: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 92 | quantity2 |= ( 0x0f & ext ); | ~~~~~~~~~~^~~~~~~~~~~~~~~~~ ../fheroes2/maps/maps_tiles_quantity.cpp: In member function 'void Maps::Tiles::QuantitySetSkill(int)': ../fheroes2/maps/maps_tiles_quantity.cpp:123:21: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 123 | quantity1 = skill; | ^~~~~ ../fheroes2/maps/maps_tiles_quantity.cpp: In member function 'Spell Maps::Tiles::QuantitySpell() const': ../fheroes2/maps/maps_tiles_quantity.cpp:135:47: warning: enumerated and non-enumerated type in conditional expression [-Wextra] 135 | return Spell( QuantityVariant() == 15 ? quantity1 : Spell::NONE ); | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/maps/maps_tiles_quantity.cpp: In member function 'void Maps::Tiles::QuantitySetSpell(int)': ../fheroes2/maps/maps_tiles_quantity.cpp:158:21: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 158 | quantity1 = spell; | ^~~~~ ../fheroes2/maps/maps_tiles_quantity.cpp: In member function 'Artifact Maps::Tiles::QuantityArtifact() const': ../fheroes2/maps/maps_tiles_quantity.cpp:170:36: warning: enumerated and non-enumerated type in conditional expression [-Wextra] 170 | return Artifact( quantity2 ? Artifact::UNKNOWN : quantity1 ); | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/maps/maps_tiles_quantity.cpp: In member function 'void Maps::Tiles::QuantitySetArtifact(int)': ../fheroes2/maps/maps_tiles_quantity.cpp:199:17: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 199 | quantity1 = art; | ^~~ ../fheroes2/maps/maps_tiles_quantity.cpp: In member function 'void Maps::Tiles::QuantitySetResource(int, u32)': ../fheroes2/maps/maps_tiles_quantity.cpp:204:17: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 204 | quantity1 = res; | ^~~ ../fheroes2/maps/maps_tiles_quantity.cpp:205:39: warning: conversion from 'u32' {aka 'unsigned int'} to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 205 | quantity2 = res == Resource::GOLD ? count / 100 : count; | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ../fheroes2/maps/maps_tiles_quantity.cpp: In member function 'ResourceCount Maps::Tiles::QuantityResourceCount() const': ../fheroes2/maps/maps_tiles_quantity.cpp:275:77: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 275 | return ResourceCount( Resource::FromIndexSprite2( QuantityExt() - 1 ), 3 ); | ~~~~~~~~~~~~~~^~~ ../fheroes2/maps/maps_tiles_quantity.cpp:277:77: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 277 | return ResourceCount( Resource::FromIndexSprite2( QuantityExt() - 1 ), 5 ); | ~~~~~~~~~~~~~~^~~ ../fheroes2/maps/maps_tiles_quantity.cpp: In member function 'void Maps::Tiles::QuantitySetColor(int)': ../fheroes2/maps/maps_tiles_quantity.cpp:340:21: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 340 | quantity1 = col; | ^~~ ../fheroes2/maps/maps_tiles_quantity.cpp: In member function 'void Maps::Tiles::QuantityUpdate(bool)': ../fheroes2/maps/maps_tiles_quantity.cpp:527:51: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 527 | int cond = Rand::Get( 1, 10 ) < 4 ? Rand::Get( 1, 13 ) : 0; | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/maps/maps_tiles_quantity.cpp:537:83: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 537 | QuantitySetExt( Resource::GetIndexSprite2( Resource::Rand() ) + 1 ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ ../fheroes2/maps/maps_tiles_quantity.cpp:744:29: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 744 | int cond = Rand::Get( 1, 4 ); | ~~~~~~~~~^~~~~~~~ ../fheroes2/maps/maps_tiles_quantity.cpp: In member function 'void Maps::Tiles::MonsterSetJoinCondition(int)': ../fheroes2/maps/maps_tiles_quantity.cpp:918:15: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 918 | quantity3 |= ( cond & 0x03 ); | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../fheroes2/maps/maps_tiles_quantity.cpp: In member function 'void Maps::Tiles::MonsterSetCount(u32)': ../fheroes2/maps/maps_tiles_quantity.cpp:958:23: warning: conversion from 'u32' {aka 'unsigned int'} to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 958 | quantity1 = count >> 8; | ~~~~~~^~~~ ../fheroes2/maps/maps_tiles_quantity.cpp: In static member function 'static void Maps::Tiles::PlaceMonsterOnTile(Maps::Tiles&, const Monster&, u32)': ../fheroes2/maps/maps_tiles_quantity.cpp:973:43: warning: conversion from 'u32' {aka 'unsigned int'} to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 973 | tile.objectIndex = mons.GetSpriteIndex(); | ~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/maps/maps_tiles_quantity.cpp: In static member function 'static void Maps::Tiles::UpdateMonsterInfo(Maps::Tiles&)': ../fheroes2/maps/maps_tiles_quantity.cpp:1031:35: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 1031 | tile.objectIndex = mons() - 1; // ICN::MONS32 start from PEASANT | ~~~~~~~^~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/maps/maps_tiles_quantity.cpp:30: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: maps_objects.o ../fheroes2/maps/maps_objects.cpp: In member function 'void MapEvent::LoadFromMP2(s32, StreamBuf)': ../fheroes2/maps/maps_objects.cpp:57:17: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 57 | SetUID( index ); | ^~~~~ ../fheroes2/maps/maps_objects.cpp:60:36: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 60 | resources.wood = st.getLE32(); | ~~~~~~~~~~^~ ../fheroes2/maps/maps_objects.cpp:61:39: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 61 | resources.mercury = st.getLE32(); | ~~~~~~~~~~^~ ../fheroes2/maps/maps_objects.cpp:62:35: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 62 | resources.ore = st.getLE32(); | ~~~~~~~~~~^~ ../fheroes2/maps/maps_objects.cpp:63:38: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 63 | resources.sulfur = st.getLE32(); | ~~~~~~~~~~^~ ../fheroes2/maps/maps_objects.cpp:64:39: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 64 | resources.crystal = st.getLE32(); | ~~~~~~~~~~^~ ../fheroes2/maps/maps_objects.cpp:65:36: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 65 | resources.gems = st.getLE32(); | ~~~~~~~~~~^~ ../fheroes2/maps/maps_objects.cpp:66:36: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 66 | resources.gold = st.getLE32(); | ~~~~~~~~~~^~ ../fheroes2/maps/maps_objects.cpp:106:50: warning: suggest braces around empty body in an 'else' statement [-Wempty-body] 106 | DEBUG( DBG_GAME, DBG_WARN, "unknown id" ); | ^ ../fheroes2/maps/maps_objects.cpp: In member function 'void MapSphinx::LoadFromMP2(s32, StreamBuf)': ../fheroes2/maps/maps_objects.cpp:132:17: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 132 | SetUID( index ); | ^~~~~ ../fheroes2/maps/maps_objects.cpp:135:36: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 135 | resources.wood = st.getLE32(); | ~~~~~~~~~~^~ ../fheroes2/maps/maps_objects.cpp:136:39: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 136 | resources.mercury = st.getLE32(); | ~~~~~~~~~~^~ ../fheroes2/maps/maps_objects.cpp:137:35: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 137 | resources.ore = st.getLE32(); | ~~~~~~~~~~^~ ../fheroes2/maps/maps_objects.cpp:138:38: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 138 | resources.sulfur = st.getLE32(); | ~~~~~~~~~~^~ ../fheroes2/maps/maps_objects.cpp:139:39: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 139 | resources.crystal = st.getLE32(); | ~~~~~~~~~~^~ ../fheroes2/maps/maps_objects.cpp:140:36: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 140 | resources.gems = st.getLE32(); | ~~~~~~~~~~^~ ../fheroes2/maps/maps_objects.cpp:141:36: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 141 | resources.gold = st.getLE32(); | ~~~~~~~~~~^~ ../fheroes2/maps/maps_objects.cpp:147:27: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 147 | u32 count = st.get(); | ~~~~~~^~ ../fheroes2/maps/maps_objects.cpp:166:50: warning: suggest braces around empty body in an 'else' statement [-Wempty-body] 166 | DEBUG( DBG_GAME, DBG_WARN, "unknown id" ); | ^ ../fheroes2/maps/maps_objects.cpp: In member function 'void MapSign::LoadFromMP2(s32, StreamBuf)': ../fheroes2/maps/maps_objects.cpp:218:13: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 218 | SetUID( index ); | ^~~~~ ../fheroes2/maps/maps_objects.cpp: In member function 'Troop MapMonster::QuantityTroop() const': ../fheroes2/maps/maps_objects.cpp:305:28: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 305 | return Troop( monster, count ); | ^~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: position.o In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/maps/position.cpp:27: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: visit.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: objcrck.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: mounts.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: maps_fileinfo.o ../fheroes2/maps/maps_fileinfo.cpp: In member function 'void Maps::FileInfo::Reset()': ../fheroes2/maps/maps_fileinfo.cpp:186:35: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 186 | unions[ii] = ByteToColor( ii ); | ^~ ../fheroes2/maps/maps_fileinfo.cpp:186:33: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 186 | unions[ii] = ByteToColor( ii ); | ~~~~~~~~~~~^~~~~~ ../fheroes2/maps/maps_fileinfo.cpp: In member function 'bool Maps::FileInfo::ReadMAP(const string&)': ../fheroes2/maps/maps_fileinfo.cpp:232:36: warning: conversion from 'u32' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 232 | size_w = st.getLE32(); | ~~~~~~~~~~^~ ../fheroes2/maps/maps_fileinfo.cpp:233:36: warning: conversion from 'u32' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 233 | size_h = st.getLE32(); | ~~~~~~~~~~^~ ../fheroes2/maps/maps_fileinfo.cpp:253:44: warning: conversion from 'u32' {aka 'unsigned int'} to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 253 | kingdom_colors = st.getLE32(); | ~~~~~~~~~~^~ ../fheroes2/maps/maps_fileinfo.cpp:254:48: warning: conversion from 'u32' {aka 'unsigned int'} to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 254 | allow_human_colors = st.getLE32(); | ~~~~~~~~~~^~ ../fheroes2/maps/maps_fileinfo.cpp:255:47: warning: conversion from 'u32' {aka 'unsigned int'} to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 255 | allow_comp_colors = st.getLE32(); | ~~~~~~~~~~^~ ../fheroes2/maps/maps_fileinfo.cpp:258:39: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 258 | int v = st.getLE32(); | ~~~~~~~~~~^~ ../fheroes2/maps/maps_fileinfo.cpp:259:49: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 259 | races[col] = 1 < CountBits( v ) ? Race::MULT : v; | ^ ../fheroes2/maps/maps_fileinfo.cpp:259:53: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 259 | races[col] = 1 < CountBits( v ) ? Race::MULT : v; | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ../fheroes2/maps/maps_fileinfo.cpp:291:43: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 291 | cond1[it] = st.getLE32(); | ~~~~~~~~~~^~ ../fheroes2/maps/maps_fileinfo.cpp:294:43: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 294 | cond2[it] = st.getLE32(); | ~~~~~~~~~~^~ ../fheroes2/maps/maps_fileinfo.cpp:306:36: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 306 | wins1 = cond1[2]; | ~~~~~~~^ ../fheroes2/maps/maps_fileinfo.cpp:307:36: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 307 | wins2 = cond1[3]; | ~~~~~~~^ ../fheroes2/maps/maps_fileinfo.cpp:312:36: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 312 | wins1 = cond1[2]; | ~~~~~~~^ ../fheroes2/maps/maps_fileinfo.cpp:313:36: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 313 | wins2 = cond1[3]; | ~~~~~~~^ ../fheroes2/maps/maps_fileinfo.cpp:318:36: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 318 | wins1 = cond1[2]; | ~~~~~~~^ ../fheroes2/maps/maps_fileinfo.cpp:328:38: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 328 | wins1 = cond1[2] / 1000; | ~~~~~~~~~^~~~~~ ../fheroes2/maps/maps_fileinfo.cpp:342:36: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 342 | loss1 = cond2[2]; | ~~~~~~~^ ../fheroes2/maps/maps_fileinfo.cpp:343:36: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 343 | loss2 = cond2[3]; | ~~~~~~~^ ../fheroes2/maps/maps_fileinfo.cpp:348:36: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 348 | loss1 = cond2[2]; | ~~~~~~~^ ../fheroes2/maps/maps_fileinfo.cpp:349:36: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 349 | loss2 = cond2[3]; | ~~~~~~~^ ../fheroes2/maps/maps_fileinfo.cpp:354:36: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 354 | loss1 = cond2[2]; | ~~~~~~~^ ../fheroes2/maps/maps_fileinfo.cpp: In member function 'bool Maps::FileInfo::ReadMP2(const string&)': ../fheroes2/maps/maps_fileinfo.cpp:433:20: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 433 | size_w = fs.get(); | ~~~~~~^~ ../fheroes2/maps/maps_fileinfo.cpp:436:20: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 436 | size_h = fs.get(); | ~~~~~~^~ ../fheroes2/maps/maps_fileinfo.cpp:443:32: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 443 | kingdom_colors |= *it; | ^~ ../fheroes2/maps/maps_fileinfo.cpp:448:36: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 448 | allow_human_colors |= *it; | ^~ ../fheroes2/maps/maps_fileinfo.cpp:453:35: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 453 | allow_comp_colors |= *it; | ^~ ../fheroes2/maps/maps_fileinfo.cpp:461:29: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 461 | conditions_wins = fs.get(); | ~~~~~~^~ ../fheroes2/maps/maps_fileinfo.cpp:474:29: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 474 | conditions_loss = fs.get(); | ~~~~~~^~ ../fheroes2/maps/maps_fileinfo.cpp:488:41: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 488 | races[Color::GetIndex( *it )] = race; | ^~~~ ../fheroes2/maps/maps_fileinfo.cpp:490:27: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 490 | rnd_races |= *it; | ^~ ../fheroes2/maps/maps_fileinfo.cpp: In member function 'void Maps::FileInfo::FillUnions()': ../fheroes2/maps/maps_fileinfo.cpp:523:31: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 523 | int cl = ByteToColor( ii ); | ^~ ../fheroes2/maps/maps_fileinfo.cpp:526:26: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 526 | unions[ii] = side1; | ^~~~~ ../fheroes2/maps/maps_fileinfo.cpp:528:26: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 528 | unions[ii] = side2; | ^~~~~ ../fheroes2/maps/maps_fileinfo.cpp:530:26: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 530 | unions[ii] = cl; | ^~ ../fheroes2/maps/maps_fileinfo.cpp: In member function 'Point Maps::FileInfo::WinsMapsPositionObject() const': ../fheroes2/maps/maps_fileinfo.cpp:637:19: warning: conversion to 's16' {aka 'short int'} from 'u16' {aka 'short unsigned int'} may change the sign of the result [-Wsign-conversion] 637 | return Point( wins1, wins2 ); | ^~~~~ ../fheroes2/maps/maps_fileinfo.cpp:637:26: warning: conversion to 's16' {aka 'short int'} from 'u16' {aka 'short unsigned int'} may change the sign of the result [-Wsign-conversion] 637 | return Point( wins1, wins2 ); | ^~~~~ ../fheroes2/maps/maps_fileinfo.cpp: In member function 'Point Maps::FileInfo::LossMapsPositionObject() const': ../fheroes2/maps/maps_fileinfo.cpp:642:19: warning: conversion to 's16' {aka 'short int'} from 'u16' {aka 'short unsigned int'} may change the sign of the result [-Wsign-conversion] 642 | return Point( loss1, loss2 ); | ^~~~~ ../fheroes2/maps/maps_fileinfo.cpp:642:26: warning: conversion to 's16' {aka 'short int'} from 'u16' {aka 'short unsigned int'} may change the sign of the result [-Wsign-conversion] 642 | return Point( loss1, loss2 ); | ^~~~~ ../fheroes2/maps/maps_fileinfo.cpp: In member function 'bool Maps::FileInfo::isAllowCountPlayers(u32) const': ../fheroes2/maps/maps_fileinfo.cpp:677:34: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 677 | u32 human_only = Color::Count( HumanOnlyColors() ); | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ../fheroes2/maps/maps_fileinfo.cpp:678:34: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 678 | u32 comp_human = Color::Count( AllowCompHumanColors() ); | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/maps/maps_fileinfo.cpp: In function 'bool PrepareMapsFileInfoList(MapsFileInfoList&, bool)': ../fheroes2/maps/maps_fileinfo.cpp:753:90: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from '__gnu_cxx::__normal_iterator >::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 753 | lists.resize( std::unique( lists.begin(), lists.end(), Maps::FileInfo::NameCompare ) - lists.begin() ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ ../fheroes2/maps/maps_fileinfo.cpp:758:40: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'std::__iterator_traits<__gnu_cxx::__normal_iterator >, void>::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 758 | lists.resize( std::distance( lists.begin(), it ) ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ../fheroes2/maps/maps_fileinfo.cpp:767:40: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'std::__iterator_traits<__gnu_cxx::__normal_iterator >, void>::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 767 | lists.resize( std::distance( lists.begin(), it ) ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/maps/maps_fileinfo.cpp:39: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: objdirt.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: objgras.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: maps_tiles.o ../fheroes2/maps/maps_tiles.cpp: In constructor 'Maps::TilesAddon::TilesAddon(int, u32, int, u32)': ../fheroes2/maps/maps_tiles.cpp:125:14: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 125 | , level( lv ) | ^~ ../fheroes2/maps/maps_tiles.cpp:126:15: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 126 | , object( obj ) | ^~~ ../fheroes2/maps/maps_tiles.cpp:127:14: warning: conversion from 'u32' {aka 'unsigned int'} to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 127 | , index( ii ) | ^~ ../fheroes2/maps/maps_tiles.cpp: In static member function 'static int Maps::Tiles::GetPassable(uint32_t, uint32_t)': ../fheroes2/maps/maps_tiles.cpp:257:40: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 257 | const int icn = MP2::GetICNObject( tileset ); | ^~~~~~~ ../fheroes2/maps/maps_tiles.cpp: In static member function 'static bool Maps::TilesAddon::ForceLevel2(const Maps::TilesAddon&)': ../fheroes2/maps/maps_tiles.cpp:825:56: warning: unused parameter 'ta' [-Wunused-parameter] 825 | bool Maps::TilesAddon::ForceLevel2( const TilesAddon & ta ) | ~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/maps/maps_tiles.cpp: In member function 'void Maps::Tiles::SetIndex(int)': ../fheroes2/maps/maps_tiles.cpp:895:18: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 895 | maps_index = index; | ^~~~~ ../fheroes2/maps/maps_tiles.cpp: In member function 'void Maps::Tiles::SetQuantity3(int)': ../fheroes2/maps/maps_tiles.cpp:907:17: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 907 | quantity3 = value; | ^~~~~ ../fheroes2/maps/maps_tiles.cpp: In member function 'void Maps::Tiles::SetHeroes(Heroes*)': ../fheroes2/maps/maps_tiles.cpp:919:32: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 919 | heroID = hero->GetID() + 1; | ~~~~~~~~~~~~~~^~~ ../fheroes2/maps/maps_tiles.cpp: In member function 's32 Maps::Tiles::GetIndex() const': ../fheroes2/maps/maps_tiles.cpp:943:12: warning: conversion to 's32' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 943 | return maps_index; | ^~~~~~~~~~ ../fheroes2/maps/maps_tiles.cpp: In member function 'void Maps::Tiles::SetObject(int)': ../fheroes2/maps/maps_tiles.cpp:958:18: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 958 | mp2_object = object; | ^~~~~~ ../fheroes2/maps/maps_tiles.cpp: In member function 'void Maps::Tiles::SetTile(u32, u32)': ../fheroes2/maps/maps_tiles.cpp:1041:44: warning: conversion from 'u32' {aka 'unsigned int'} to 'uint16_t' {aka 'short unsigned int'} may change value [-Wconversion] 1041 | pack_sprite_index = PackTileSpriteIndex( sprite_index, shape ); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/maps/maps_tiles.cpp: In member function 'void Maps::Tiles::UpdatePassable()': ../fheroes2/maps/maps_tiles.cpp:1189:44: warning: conversion from 'int' to 'uint16_t' {aka 'short unsigned int'} may change value [-Wconversion] 1189 | tilePassable = MP2::GetObjectDirect( obj ); | ~~~~~~~~~~~~~~~~~~~~^~~~~~~ ../fheroes2/maps/maps_tiles.cpp:1248:68: warning: conversion from 'int' to 'uint16_t' {aka 'short unsigned int'} may change value [-Wconversion] 1248 | tilePassable &= Tiles::GetPassable( objectTileset, objectIndex ); | ^ ../fheroes2/maps/maps_tiles.cpp:1251:71: warning: conversion from 'int' to 'uint16_t' {aka 'short unsigned int'} may change value [-Wconversion] 1251 | tilePassable &= Tiles::GetPassable( it->object, it->index ); | ^ ../fheroes2/maps/maps_tiles.cpp:1280:31: warning: conversion from 'int' to 'uint16_t' {aka 'short unsigned int'} may change value [-Wconversion] 1280 | left.tilePassable &= ~Direction::TOP_RIGHT; | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/maps/maps_tiles.cpp:1286:26: warning: conversion from 'int' to 'uint16_t' {aka 'short unsigned int'} may change value [-Wconversion] 1286 | tilePassable &= ~Direction::TOP_LEFT; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/maps/maps_tiles.cpp: In static member function 'static void Maps::Tiles::RedrawEmptyTile(fheroes2::Image&, const Point&)': ../fheroes2/maps/maps_tiles.cpp:1455:70: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1455 | area.DrawTile( dst, fheroes2::AGG::GetTIL( TIL::STON, 20 + ( mp.x % 4 ), 0 ), mp ); | ~~~^~~~~~~~~~~~~~ ../fheroes2/maps/maps_tiles.cpp:1458:70: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1458 | area.DrawTile( dst, fheroes2::AGG::GetTIL( TIL::STON, 24 + ( mp.y % 4 ), 0 ), mp ); | ~~~^~~~~~~~~~~~~~ ../fheroes2/maps/maps_tiles.cpp:1461:70: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1461 | area.DrawTile( dst, fheroes2::AGG::GetTIL( TIL::STON, 28 + ( mp.x % 4 ), 0 ), mp ); | ~~~^~~~~~~~~~~~~~ ../fheroes2/maps/maps_tiles.cpp:1464:70: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1464 | area.DrawTile( dst, fheroes2::AGG::GetTIL( TIL::STON, 32 + ( mp.y % 4 ), 0 ), mp ); | ~~~^~~~~~~~~~~~~~ ../fheroes2/maps/maps_tiles.cpp:1467:91: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1467 | area.DrawTile( dst, fheroes2::AGG::GetTIL( TIL::STON, ( abs( mp.y ) % 4 ) * 4 + abs( mp.x ) % 4, 0 ), mp ); | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~ ../fheroes2/maps/maps_tiles.cpp: In member function 'void Maps::Tiles::RedrawPassable(fheroes2::Image&) const': ../fheroes2/maps/maps_tiles.cpp:1501:53: warning: unused parameter 'dst' [-Wunused-parameter] 1501 | void Maps::Tiles::RedrawPassable( fheroes2::Image & dst ) const | ~~~~~~~~~~~~~~~~~~^~~ ../fheroes2/maps/maps_tiles.cpp: In member function 'void Maps::Tiles::RedrawMonster(fheroes2::Image&) const': ../fheroes2/maps/maps_tiles.cpp:1574:91: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1574 | const fheroes2::Sprite & sprite = fheroes2::AGG::GetICN( ICN::MINIMON, spriteIndicies.first ); | ~~~~~~~~~~~~~~~^~~~~ ../fheroes2/maps/maps_tiles.cpp:1578:103: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1578 | const fheroes2::Sprite & animatedSprite = fheroes2::AGG::GetICN( ICN::MINIMON, spriteIndicies.second ); | ~~~~~~~~~~~~~~~^~~~~~ ../fheroes2/maps/maps_tiles.cpp: In member function 'void Maps::Tiles::RedrawTop(fheroes2::Image&) const': ../fheroes2/maps/maps_tiles.cpp:1678:45: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 1678 | const uint8_t spellID = GetQuantity3(); | ~~~~~~~~~~~~^~ ../fheroes2/maps/maps_tiles.cpp: In member function 'void Maps::Tiles::SetObjectPassable(bool)': ../fheroes2/maps/maps_tiles.cpp:1894:26: warning: conversion from 'int' to 'uint16_t' {aka 'short unsigned int'} may change value [-Wconversion] 1894 | tilePassable &= ~Direction::TOP_LEFT; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/maps/maps_tiles.cpp: In member function 'bool Maps::Tiles::isShadow() const': ../fheroes2/maps/maps_tiles.cpp:1921:81: warning: comparison of integer expressions of different signedness: 'std::__cxx11::list::size_type' {aka 'unsigned int'} and 'std::__iterator_traits, void>::difference_type' {aka 'int'} [-Wsign-compare] 1921 | return isShadowSprite( objectTileset, objectIndex ) && addons_level1.size() != std::count_if( addons_level1.begin(), addons_level1.end(), TilesAddon::isShadow ); | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/maps/maps_tiles.cpp: In member function 'void Maps::Tiles::CorrectFlags32(u32, bool)': ../fheroes2/maps/maps_tiles.cpp:2051:25: warning: conversion from 'u32' {aka 'unsigned int'} to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 2051 | taddon->index = index; | ^~~~~ ../fheroes2/maps/maps_tiles.cpp: In member function 'void Maps::Tiles::UpdateObjectSprite(uint32_t, uint8_t, uint8_t, int)': ../fheroes2/maps/maps_tiles.cpp:2153:35: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 2153 | it->index = it->index + indexChange; | ~~~~~~~~~~^~~~~~~~~~~~~ ../fheroes2/maps/maps_tiles.cpp:2159:37: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 2159 | it2->index = it2->index + indexChange; | ~~~~~~~~~~~^~~~~~~~~~~~~ ../fheroes2/maps/maps_tiles.cpp:2165:21: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 2165 | objectIndex += indexChange; | ~~~~~~~~~~~~^~~~~~~~~~~~~~ ../fheroes2/maps/maps_tiles.cpp: In static member function 'static void Maps::Tiles::UpdateRNDArtifactSprite(Maps::Tiles&)': ../fheroes2/maps/maps_tiles.cpp:2304:42: warning: conversion from 'u32' {aka 'unsigned int'} to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 2304 | const uint8_t index = art.IndexSprite(); | ~~~~~~~~~~~~~~~^~ ../fheroes2/maps/maps_tiles.cpp: In static member function 'static void Maps::Tiles::UpdateRNDResourceSprite(Maps::Tiles&)': ../fheroes2/maps/maps_tiles.cpp:2322:48: warning: conversion from 'u32' {aka 'unsigned int'} to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 2322 | tile.objectIndex = Resource::GetIndexSprite( Resource::Rand() ); | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~ ../fheroes2/maps/maps_tiles.cpp: In static member function 'static std::pair Maps::Tiles::GetMonsterSpriteIndices(const Maps::Tiles&, uint32_t)': ../fheroes2/maps/maps_tiles.cpp:2372:116: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 2372 | spriteIndices.second = monsterIndex * 9 + 1 + monsterAnimationSequence[( Game::MapsAnimationFrame() + mp.x * mp.y ) % ARRAY_COUNT( monsterAnimationSequence )]; | ~~~~~^~~~~~ ../fheroes2/maps/maps_tiles.cpp:2372:53: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 2372 | spriteIndices.second = monsterIndex * 9 + 1 + monsterAnimationSequence[( Game::MapsAnimationFrame() + mp.x * mp.y ) % ARRAY_COUNT( monsterAnimationSequence )]; | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/maps/maps_tiles.cpp: In member function 'void Maps::Tiles::ClearFog(int)': ../fheroes2/maps/maps_tiles.cpp:2385:16: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 2385 | fog_colors &= ~colors; | ~~~~~~~~~~~^~~~~~~~~~ ../fheroes2/maps/maps_tiles.cpp: In member function 'void Maps::Tiles::RedrawFogs(fheroes2::Image&, int) const': ../fheroes2/maps/maps_tiles.cpp:2412:85: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 2412 | const fheroes2::Image & sf = fheroes2::AGG::GetTIL( TIL::CLOF32, GetIndex() % 4, 0 ); | ~~~~~~~~~~~^~~ ../fheroes2/maps/maps_tiles.cpp:2658:89: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 2658 | const fheroes2::Image & sf = fheroes2::AGG::GetTIL( TIL::CLOF32, GetIndex() % 4, 0 ); | ~~~~~~~~~~~^~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/maps/maps_tiles.cpp:53: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ In file included from ../fheroes2/gui/interface_icons.h:27, from ../fheroes2/game/game_interface.h:31, from ../fheroes2/maps/maps_tiles.cpp:30: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Castle*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Heroes*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: objdsrt.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: monster.o ../fheroes2/monster/monster.cpp:317:5: warning: missing initializer for member 'Monster::monstersprite_t::m82_move' [-Wmissing-field-initializers] 317 | }; | ^ ../fheroes2/monster/monster.cpp:317:5: warning: missing initializer for member 'Monster::monstersprite_t::m82_wnce' [-Wmissing-field-initializers] ../fheroes2/monster/monster.cpp: In function 'StreamBase& operator<<(StreamBase&, const MonsterStaticData&)': ../fheroes2/monster/monster.cpp:341:70: warning: unused parameter 'obj' [-Wunused-parameter] 341 | StreamBase & operator<<( StreamBase & msg, const MonsterStaticData & obj ) | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ ../fheroes2/monster/monster.cpp: In function 'StreamBase& operator>>(StreamBase&, MonsterStaticData&)': ../fheroes2/monster/monster.cpp:350:64: warning: unused parameter 'obj' [-Wunused-parameter] 350 | StreamBase & operator>>( StreamBase & msg, MonsterStaticData & obj ) | ~~~~~~~~~~~~~~~~~~~~^~~ ../fheroes2/monster/monster.cpp: In static member function 'static uint32_t Monster::GetICNByMonsterID(uint32_t)': ../fheroes2/monster/monster.cpp:368:41: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 368 | return monsters_info[monsterID].icn_file; | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~ ../fheroes2/monster/monster.cpp: In static member function 'static void Monster::UpdateStats(const string&)': ../fheroes2/monster/monster.cpp:433:35: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 433 | ptr->attack = value; | ^~~~~ ../fheroes2/monster/monster.cpp:436:36: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 436 | ptr->defense = value; | ^~~~~ ../fheroes2/monster/monster.cpp:439:38: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 439 | ptr->damageMin = value; | ^~~~~ ../fheroes2/monster/monster.cpp:442:38: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 442 | ptr->damageMax = value; | ^~~~~ ../fheroes2/monster/monster.cpp:445:31: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 445 | ptr->hp = value; | ^~~~~ ../fheroes2/monster/monster.cpp:447:44: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 447 | ptr->speed = Speed::FromInt( value ); | ~~~~~~~~~~~~~~^~~~~~~~~ ../fheroes2/monster/monster.cpp:449:30: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 449 | ptr->grown = value; | ^~~~~ ../fheroes2/monster/monster.cpp:451:30: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 451 | ptr->shots = value; | ^~~~~ ../fheroes2/monster/monster.cpp:453:29: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 453 | cost.gold = value; | ^~~~~ ../fheroes2/monster/monster.cpp:455:29: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 455 | cost.wood = value; | ^~~~~ ../fheroes2/monster/monster.cpp:457:32: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 457 | cost.mercury = value; | ^~~~~ ../fheroes2/monster/monster.cpp:459:28: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 459 | cost.ore = value; | ^~~~~ ../fheroes2/monster/monster.cpp:461:31: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 461 | cost.sulfur = value; | ^~~~~ ../fheroes2/monster/monster.cpp:463:32: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 463 | cost.crystal = value; | ^~~~~ ../fheroes2/monster/monster.cpp:465:29: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 465 | cost.gems = value; | ^~~~~ ../fheroes2/monster/monster.cpp: In member function 'double Monster::GetMonsterStrength(int, int) const': ../fheroes2/monster/monster.cpp:651:27: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 651 | attack = GetAttack(); | ~~~~~~~~~^~ ../fheroes2/monster/monster.cpp:654:28: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 654 | attack = GetDefense(); | ~~~~~~~~~~^~ ../fheroes2/monster/monster.cpp:703:38: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 703 | const int speedDiff = GetSpeed() - 4; | ~~~~~~~~~~~^~~ ../fheroes2/monster/monster.cpp: In static member function 'static Monster Monster::Rand(Monster::level_t)': ../fheroes2/monster/monster.cpp:1364:34: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1364 | return Monster( Rand::Get( PEASANT, WATER_ELEMENT ) ); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/monster/monster.cpp:1368:36: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1368 | const Monster monster( i ); | ^ ../fheroes2/monster/monster.cpp: In member function 'u32 Monster::GetSpriteIndex() const': ../fheroes2/monster/monster.cpp:1989:25: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1989 | return UNKNOWN < id ? id - 1 : 0; | ~~~~~~~~~~~~~^~~~~~~~~~~~ ../fheroes2/monster/monster.cpp: In member function 'payment_t Monster::GetUpgradeCost() const': ../fheroes2/monster/monster.cpp:2007:38: warning: conversion from 's32' {aka 'int'} to 'float' may change value [-Wconversion] 2007 | pay.wood = static_cast( pay.wood * GetUpgradeRatio() ); | ~~~~^~~~ ../fheroes2/monster/monster.cpp:2008:41: warning: conversion from 's32' {aka 'int'} to 'float' may change value [-Wconversion] 2008 | pay.mercury = static_cast( pay.mercury * GetUpgradeRatio() ); | ~~~~^~~~~~~ ../fheroes2/monster/monster.cpp:2009:37: warning: conversion from 's32' {aka 'int'} to 'float' may change value [-Wconversion] 2009 | pay.ore = static_cast( pay.ore * GetUpgradeRatio() ); | ~~~~^~~ ../fheroes2/monster/monster.cpp:2010:40: warning: conversion from 's32' {aka 'int'} to 'float' may change value [-Wconversion] 2010 | pay.sulfur = static_cast( pay.sulfur * GetUpgradeRatio() ); | ~~~~^~~~~~ ../fheroes2/monster/monster.cpp:2011:41: warning: conversion from 's32' {aka 'int'} to 'float' may change value [-Wconversion] 2011 | pay.crystal = static_cast( pay.crystal * GetUpgradeRatio() ); | ~~~~^~~~~~~ ../fheroes2/monster/monster.cpp:2012:38: warning: conversion from 's32' {aka 'int'} to 'float' may change value [-Wconversion] 2012 | pay.gems = static_cast( pay.gems * GetUpgradeRatio() ); | ~~~~^~~~ ../fheroes2/monster/monster.cpp:2013:38: warning: conversion from 's32' {aka 'int'} to 'float' may change value [-Wconversion] 2013 | pay.gold = static_cast( pay.gold * GetUpgradeRatio() ); | ~~~~^~~~ ../fheroes2/monster/monster.cpp: In function 'StreamBase& operator<<(StreamBase&, const Monster&)': ../fheroes2/monster/monster.cpp:2187:60: warning: unused parameter 'obj' [-Wunused-parameter] 2187 | StreamBase & operator<<( StreamBase & msg, const Monster & obj ) | ~~~~~~~~~~~~~~~~^~~ ../fheroes2/monster/monster.cpp: In function 'StreamBase& operator>>(StreamBase&, Monster&)': ../fheroes2/monster/monster.cpp:2192:54: warning: unused parameter 'obj' [-Wunused-parameter] 2192 | StreamBase & operator>>( StreamBase & msg, Monster & obj ) | ~~~~~~~~~~^~~ ../fheroes2/monster/monster.cpp: At global scope: ../fheroes2/monster/monster.cpp:324:10: warning: 'void {anonymous}::verifyValidAnimationFrame(const Monster::animframe_t&)' defined but not used [-Wunused-function] 324 | void verifyValidAnimationFrame( const Monster::animframe_t & frameInfo ) | ^~~~~~~~~~~~~~~~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: objswmp.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: objwatr.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: objsnow.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: objlava.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: trees.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: objmult.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: objtown.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: maps_text.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: pocketpc_dialog.o ../fheroes2/pocketpc/pocketpc_dialog.cpp: In function 'void RedrawTouchButton(const fheroes2::Image&, const Rect&, const char*)': ../fheroes2/pocketpc/pocketpc_dialog.cpp:131:36: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 131 | const u32 count = ( rt.width - ww ) / ww; | ~~~^~~~~ ../fheroes2/pocketpc/pocketpc_dialog.cpp:133:56: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 133 | fheroes2::Blit( sf, ww, 0, display, rt.x + ww * ( ii + 1 ), rt.y, ww, sf.height() ); | ~~~^ ../fheroes2/pocketpc/pocketpc_dialog.cpp:133:58: warning: conversion to 'int32_t' {aka 'int'} from 'unsigned int' may change the sign of the result [-Wsign-conversion] 133 | fheroes2::Blit( sf, ww, 0, display, rt.x + ww * ( ii + 1 ), rt.y, ww, sf.height() ); | ~~~~~^~~~~~~~~~~~~~~~~ ../fheroes2/pocketpc/pocketpc_dialog.cpp:136:37: warning: conversion to 'unsigned int' from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 136 | fheroes2::Blit( sf, sf.width() - ww, 0, display, rt.x + rt.width - ww, rt.y, ww, sf.height() ); | ~~~~~~~~^~ ../fheroes2/pocketpc/pocketpc_dialog.cpp:136:63: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 136 | fheroes2::Blit( sf, sf.width() - ww, 0, display, rt.x + rt.width - ww, rt.y, ww, sf.height() ); | ~~~~~^~~~~~~~~~ ../fheroes2/pocketpc/pocketpc_dialog.cpp:136:40: warning: conversion to 'int32_t' {aka 'int'} from 'unsigned int' may change the sign of the result [-Wsign-conversion] 136 | fheroes2::Blit( sf, sf.width() - ww, 0, display, rt.x + rt.width - ww, rt.y, ww, sf.height() ); | ~~~~~~~~~~~^~~~ ../fheroes2/pocketpc/pocketpc_dialog.cpp:136:74: warning: conversion to 'int32_t' {aka 'int'} from 'unsigned int' may change the sign of the result [-Wsign-conversion] 136 | fheroes2::Blit( sf, sf.width() - ww, 0, display, rt.x + rt.width - ww, rt.y, ww, sf.height() ); | ~~~~~~~~~~~~~~~~^~~~ ../fheroes2/pocketpc/pocketpc_dialog.cpp: In function 'void PocketPC::KeyboardDialog(std::string&)': ../fheroes2/pocketpc/pocketpc_dialog.cpp:156:59: warning: conversion to 'unsigned int' from 'int32_t' {aka 'int'} may change the sign of the result [-Wsign-conversion] 156 | fheroes2::ImageRestorer back( display, ( display.width() - width ) / 2, 0, width, height ); | ~~~~~~~~~~~~~^~ ../fheroes2/pocketpc/pocketpc_dialog.cpp:156:72: warning: conversion to 'int32_t' {aka 'int'} from 'unsigned int' may change the sign of the result [-Wsign-conversion] 156 | fheroes2::ImageRestorer back( display, ( display.width() - width ) / 2, 0, width, height ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: objxloc.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: artifact_ultimate.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: resource.o ../fheroes2/resource/resource.cpp: In constructor 'Funds::Funds(int, u32)': ../fheroes2/resource/resource.cpp:63:15: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 63 | ore = count; | ^~~~~ ../fheroes2/resource/resource.cpp:66:16: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 66 | wood = count; | ^~~~~ ../fheroes2/resource/resource.cpp:69:19: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 69 | mercury = count; | ^~~~~ ../fheroes2/resource/resource.cpp:72:18: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 72 | sulfur = count; | ^~~~~ ../fheroes2/resource/resource.cpp:75:16: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 75 | gems = count; | ^~~~~ ../fheroes2/resource/resource.cpp:78:19: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 78 | crystal = count; | ^~~~~ ../fheroes2/resource/resource.cpp:81:16: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 81 | gold = count; | ^~~~~ ../fheroes2/resource/resource.cpp: In constructor 'Funds::Funds(const ResourceCount&)': ../fheroes2/resource/resource.cpp:111:19: warning: conversion to 's32' {aka 'int'} from 'unsigned int' may change the sign of the result [-Wsign-conversion] 111 | *ptr = rs.second; | ~~~^~~~~~ ../fheroes2/resource/resource.cpp: In member function 'Funds Funds::operator*(u32) const': ../fheroes2/resource/resource.cpp:280:16: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 280 | res.wood = wood * mul; | ^~~~ ../fheroes2/resource/resource.cpp:280:21: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 280 | res.wood = wood * mul; | ~~~~~^~~~~ ../fheroes2/resource/resource.cpp:281:19: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 281 | res.mercury = mercury * mul; | ^~~~~~~ ../fheroes2/resource/resource.cpp:281:27: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 281 | res.mercury = mercury * mul; | ~~~~~~~~^~~~~ ../fheroes2/resource/resource.cpp:282:15: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 282 | res.ore = ore * mul; | ^~~ ../fheroes2/resource/resource.cpp:282:19: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 282 | res.ore = ore * mul; | ~~~~^~~~~ ../fheroes2/resource/resource.cpp:283:18: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 283 | res.sulfur = sulfur * mul; | ^~~~~~ ../fheroes2/resource/resource.cpp:283:25: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 283 | res.sulfur = sulfur * mul; | ~~~~~~~^~~~~ ../fheroes2/resource/resource.cpp:284:19: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 284 | res.crystal = crystal * mul; | ^~~~~~~ ../fheroes2/resource/resource.cpp:284:27: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 284 | res.crystal = crystal * mul; | ~~~~~~~~^~~~~ ../fheroes2/resource/resource.cpp:285:16: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 285 | res.gems = gems * mul; | ^~~~ ../fheroes2/resource/resource.cpp:285:21: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 285 | res.gems = gems * mul; | ~~~~~^~~~~ ../fheroes2/resource/resource.cpp:286:16: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 286 | res.gold = gold * mul; | ^~~~ ../fheroes2/resource/resource.cpp:286:21: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 286 | res.gold = gold * mul; | ~~~~~^~~~~ ../fheroes2/resource/resource.cpp: In member function 'Funds& Funds::operator*=(u32)': ../fheroes2/resource/resource.cpp:293:13: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 293 | wood *= mul; | ^~~ ../fheroes2/resource/resource.cpp:293:10: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 293 | wood *= mul; | ~~~~~^~~~~~ ../fheroes2/resource/resource.cpp:294:16: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 294 | mercury *= mul; | ^~~ ../fheroes2/resource/resource.cpp:294:13: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 294 | mercury *= mul; | ~~~~~~~~^~~~~~ ../fheroes2/resource/resource.cpp:295:12: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 295 | ore *= mul; | ^~~ ../fheroes2/resource/resource.cpp:295:9: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 295 | ore *= mul; | ~~~~^~~~~~ ../fheroes2/resource/resource.cpp:296:15: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 296 | sulfur *= mul; | ^~~ ../fheroes2/resource/resource.cpp:296:12: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 296 | sulfur *= mul; | ~~~~~~~^~~~~~ ../fheroes2/resource/resource.cpp:297:16: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 297 | crystal *= mul; | ^~~ ../fheroes2/resource/resource.cpp:297:13: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 297 | crystal *= mul; | ~~~~~~~~^~~~~~ ../fheroes2/resource/resource.cpp:298:13: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 298 | gems *= mul; | ^~~ ../fheroes2/resource/resource.cpp:298:10: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 298 | gems *= mul; | ~~~~~^~~~~~ ../fheroes2/resource/resource.cpp:299:13: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 299 | gold *= mul; | ^~~ ../fheroes2/resource/resource.cpp:299:10: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 299 | gold *= mul; | ~~~~~^~~~~~ ../fheroes2/resource/resource.cpp: In constructor 'Resource::BoxSprite::BoxSprite(const Funds&, u32)': ../fheroes2/resource/resource.cpp:537:19: warning: conversion from 'u32' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 537 | : Rect( 0, 0, width, 0 ) | ^~~~~ ../fheroes2/resource/resource.cpp: In member function 'void Resource::BoxSprite::SetPos(s32, s32)': ../fheroes2/resource/resource.cpp:551:9: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 551 | x = px; | ^~ ../fheroes2/resource/resource.cpp:552:9: warning: conversion from 's32' {aka 'int'} to 's16' {aka 'short int'} may change value [-Wconversion] 552 | y = py; | ^~ ../fheroes2/resource/resource.cpp: In function 'void RedrawResourceSprite(const fheroes2::Image&, const Point&, u32, u32, u32, s32)': ../fheroes2/resource/resource.cpp:557:39: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 557 | const fheroes2::Point dst_pt( pos.x + width / 2 + count * width, pos.y + offset ); | ~~~~^ ../fheroes2/resource/resource.cpp:557:74: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 557 | const fheroes2::Point dst_pt( pos.x + width / 2 + count * width, pos.y + offset ); | ~~~~^ ../fheroes2/resource/resource.cpp:557:53: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 557 | const fheroes2::Point dst_pt( pos.x + width / 2 + count * width, pos.y + offset ); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ ../fheroes2/resource/resource.cpp:557:76: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 557 | const fheroes2::Point dst_pt( pos.x + width / 2 + count * width, pos.y + offset ); | ~~~~~~^~~~~~~~ ../fheroes2/resource/resource.cpp: In member function 'void Resource::BoxSprite::Redraw() const': ../fheroes2/resource/resource.cpp:613:49: warning: conversion to 'int32_t' {aka 'int'} from 'unsigned int' may change the sign of the result [-Wsign-conversion] 613 | const int32_t offsetX = isManyResources ? width / 2 : 0; | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ ../fheroes2/resource/resource.cpp:615:46: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 615 | RedrawResourceSprite( res1, Point( x + offsetX, y ), 0, width, offsetY, valueVsSprite[id].first ); | ~~^~~~~~~~~ ../fheroes2/resource/resource.cpp:616:46: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 616 | RedrawResourceSprite( res2, Point( x + offsetX, y ), 1, width, offsetY, valueVsSprite[id + 1].first ); | ~~^~~~~~~~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/resource/resource.cpp:30: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: gamedefs.o make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: artifact.o ../fheroes2/resource/artifact.cpp: In static member function 'static void Artifact::UpdateStats(const string&)': ../fheroes2/resource/artifact.cpp:252:39: warning: conversion to 'int' from 'size_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 252 | if ( value && !SkipExtra( index ) ) | ^~~~~ ../fheroes2/resource/artifact.cpp:253:30: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 253 | ptr->extra = value; | ^~~~~ ../fheroes2/resource/artifact.cpp:255:27: warning: conversion to 'int' from 'size_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 255 | Artifact art( index ); | ^~~~~ ../fheroes2/resource/artifact.cpp: In member function 'std::string Artifact::GetDescription() const': ../fheroes2/resource/artifact.cpp:329:41: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 329 | StringReplace( str, "%{count}", count ); | ^~~~~ ../fheroes2/resource/artifact.cpp: In member function 'u32 Artifact::IndexSprite() const': ../fheroes2/resource/artifact.cpp:574:25: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 574 | return id < UNKNOWN ? id * 2 + 1 : 0; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ../fheroes2/resource/artifact.cpp: In member function 'u32 Artifact::IndexSprite32() const': ../fheroes2/resource/artifact.cpp:579:12: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 579 | return id; | ^~ ../fheroes2/resource/artifact.cpp: In member function 'u32 Artifact::IndexSprite64() const': ../fheroes2/resource/artifact.cpp:584:15: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 584 | return id + 1; | ~~~^~~ ../fheroes2/resource/artifact.cpp: In member function 'void Artifact::SetSpell(int)': ../fheroes2/resource/artifact.cpp:598:37: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 598 | ext = Spell::Rand( Rand::Get( 1, 5 ), adv ).GetID(); | ~~~~~~~~~^~~~~~~~ ../fheroes2/resource/artifact.cpp: In static member function 'static int Artifact::Rand(Artifact::level_t)': ../fheroes2/resource/artifact.cpp:635:32: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 635 | if ( ( lvl & Artifact( art ).Level() ) && !( artifacts[art].bits & ART_DISABLED ) && !( artifacts[art].bits & ART_RNDUSED ) ) | ^~~ ../fheroes2/resource/artifact.cpp:636:26: warning: conversion to 'std::vector::value_type' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 636 | v.push_back( art ); | ^~~ ../fheroes2/resource/artifact.cpp:641:36: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 641 | if ( ( lvl & Artifact( art ).Level() ) && !( artifacts[art].bits & ART_DISABLED ) ) | ^~~ ../fheroes2/resource/artifact.cpp:642:30: warning: conversion to 'std::vector::value_type' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 642 | v.push_back( art ); | ^~~ ../fheroes2/resource/artifact.cpp: In static member function 'static Artifact Artifact::FromMP2IndexSprite(u32)': ../fheroes2/resource/artifact.cpp:654:40: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 654 | return Artifact( ( index - 1 ) / 2 ); | ~~~~~~~~~~~~~~^~~ ../fheroes2/resource/artifact.cpp:656:40: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 656 | return Artifact( ( index - 1 ) / 2 ); | ~~~~~~~~~~~~~~^~~ ../fheroes2/resource/artifact.cpp: In member function 'virtual bool ArtifactsBar::ActionBarDoubleClick(Artifact&)': ../fheroes2/resource/artifact.cpp:1023:59: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1023 | StringReplace( text, "%{sp}", spell.SpellPoint() ); | ~~~~~~~~~~~~~~~~^~ ../fheroes2/resource/artifact.cpp:1028:62: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1028 | StringReplace( text, "%{mp}", spell.MovePoint() ); | ~~~~~~~~~~~~~~~^~ ../fheroes2/resource/artifact.cpp:1032:46: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1032 | answer = Dialog::ResourceInfo( "", text, cost, Dialog::YES | Dialog::NO ); | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/resource/artifact.cpp:1034:41: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1034 | answer = Dialog::Message( "", text, Font::BIG, Dialog::YES | Dialog::NO ); | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/resource/artifact.cpp:37: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: spell_storage.o ../fheroes2/spell/spell_storage.cpp: In member function 'void SpellStorage::Append(const SpellStorage&)': ../fheroes2/spell/spell_storage.cpp:56:43: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from '__gnu_cxx::__normal_iterator >::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 56 | resize( std::unique( begin(), end() ) - begin() ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: spell.o ../fheroes2/spell/spell.cpp: In static member function 'static void Spell::UpdateStats(const string&)': ../fheroes2/spell/spell.cpp:155:31: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 155 | ptr->sp = value; | ^~~~~ ../fheroes2/spell/spell.cpp:158:31: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 158 | ptr->mp = value; | ^~~~~ ../fheroes2/spell/spell.cpp:161:34: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 161 | ptr->extra = value; | ^~~~~ ../fheroes2/spell/spell.cpp: In static member function 'static Spell Spell::Rand(int, bool)': ../fheroes2/spell/spell.cpp:567:28: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 567 | const Spell spell( sp ); | ^~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: players.o ../fheroes2/system/players.cpp: In member function 'int Player::GetID() const': ../fheroes2/system/players.cpp:127:12: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 127 | return id; | ^~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/system/players.cpp:29: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: spell_book.o ../fheroes2/spell/spell_book.cpp: In member function 'Spell SpellBook::Open(const HeroBase&, int, bool) const': ../fheroes2/spell/spell_book.cpp:137:64: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 137 | StringReplace( str, "%{point}", hero.GetSpellPoints() ); | ~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/spell/spell_book.cpp:154:64: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 154 | StringReplace( str, "%{point}", hero.GetSpellPoints() ); | ~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/spell/spell_book.cpp:171:74: warning: conversion to 'size_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 171 | SpellStorage::const_iterator spell = spells2.begin() + ( index + current_index ); | ^~~~~ ../fheroes2/spell/spell_book.cpp:171:80: warning: conversion to '__gnu_cxx::__normal_iterator >::difference_type' {aka 'int'} from 'size_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 171 | SpellStorage::const_iterator spell = spells2.begin() + ( index + current_index ); | ~~~~~~~~^~~~~~~~~~~~~~~~~ ../fheroes2/spell/spell_book.cpp:182:81: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 182 | StringReplace( str, "%{mana}", ( *spell ).SpellPoint( &hero ) ); | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../fheroes2/spell/spell_book.cpp:183:80: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 183 | StringReplace( str, "%{point}", hero.GetSpellPoints() ); | ~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/spell/spell_book.cpp:203:74: warning: conversion to 'size_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 203 | SpellStorage::const_iterator spell = spells2.begin() + ( index + current_index ); | ^~~~~ ../fheroes2/spell/spell_book.cpp:203:80: warning: conversion to '__gnu_cxx::__normal_iterator >::difference_type' {aka 'int'} from 'size_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 203 | SpellStorage::const_iterator spell = spells2.begin() + ( index + current_index ); | ~~~~~~~~^~~~~~~~~~~~~~~~~ ../fheroes2/spell/spell_book.cpp: In member function 'void SpellBook::Edit(const HeroBase&)': ../fheroes2/spell/spell_book.cpp:282:74: warning: conversion to 'size_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 282 | SpellStorage::const_iterator spell = spells2.begin() + ( index + current_index ); | ^~~~~ ../fheroes2/spell/spell_book.cpp:282:80: warning: conversion to '__gnu_cxx::__normal_iterator >::difference_type' {aka 'int'} from 'size_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 282 | SpellStorage::const_iterator spell = spells2.begin() + ( index + current_index ); | ~~~~~~~~^~~~~~~~~~~~~~~~~ ../fheroes2/spell/spell_book.cpp:301:74: warning: conversion to 'size_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 301 | SpellStorage::const_iterator spell = spells2.begin() + ( index + current_index ); | ^~~~~ ../fheroes2/spell/spell_book.cpp:301:80: warning: conversion to '__gnu_cxx::__normal_iterator >::difference_type' {aka 'int'} from 'size_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 301 | SpellStorage::const_iterator spell = spells2.begin() + ( index + current_index ); | ~~~~~~~~^~~~~~~~~~~~~~~~~ ../fheroes2/spell/spell_book.cpp: In member function 'SpellStorage SpellBook::SetFilter(int, const HeroBase*) const': ../fheroes2/spell/spell_book.cpp:335:34: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'std::__iterator_traits<__gnu_cxx::__normal_iterator >, void>::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 335 | res.resize( std::distance( res.begin(), std::remove_if( res.begin(), res.end(), std::bind2nd( SpellFiltered(), filter ) ) ) ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/spell/spell_book.cpp:344:38: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'std::__iterator_traits<__gnu_cxx::__normal_iterator >, void>::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 344 | res.resize( std::distance( res.begin(), itend ) ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/spell/spell_book.cpp: In function 'void SpellBookRedrawMP(const Point&, u32)': ../fheroes2/spell/spell_book.cpp:357:41: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 357 | Text text( mp > 100 ? GetString( mp / 100 ) : " ", Font::SMALL ); | ~~~^~~~~ ../fheroes2/spell/spell_book.cpp:361:49: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 361 | text.Set( mp > 10 ? GetString( ( mp % 100 ) / 10 ) : " ", Font::SMALL ); | ~~~~~~~~~~~~~^~~~ ../fheroes2/spell/spell_book.cpp:365:38: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 365 | text.Set( mp > 0 ? GetString( mp % 10 ) : "0", Font::SMALL ); | ~~~^~~~ ../fheroes2/spell/spell_book.cpp: In function 'void SpellBookRedrawSpells(const SpellStorage&, Rects&, size_t, s32, s32, const HeroBase&)': ../fheroes2/spell/spell_book.cpp:423:77: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 423 | TextBox box( std::string( spell.GetName() ) + " [" + GetString( spellCost ) + "]", isAvailable ? Font::SMALL : Font::GRAY_SMALL, 80 ); | ^~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: world_pathfinding.o ../fheroes2/world/world_pathfinding.cpp: In member function 'bool WorldPathfinder::isBlockedByObject(int, bool) const': ../fheroes2/world/world_pathfinding.cpp:135:30: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 135 | currentNode = _cache[currentNode]._from; | ^~~~~~~~~~~ ../fheroes2/world/world_pathfinding.cpp: In member function 'void WorldPathfinder::processWorldMap(int)': ../fheroes2/world/world_pathfinding.cpp:160:12: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 160 | _cache[pathStart] = PathfindingNode( -1, 0, 0 ); | ^~~~~~~~~ ../fheroes2/world/world_pathfinding.cpp: In member function 'void WorldPathfinder::checkAdjacentNodes(std::vector&, int, int, bool)': ../fheroes2/world/world_pathfinding.cpp:173:50: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 173 | const PathfindingNode & currentNode = _cache[currentNodeIdx]; | ^~~~~~~~~~~~~~ ../fheroes2/world/world_pathfinding.cpp:182:48: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 182 | PathfindingNode & newNode = _cache[newIndex]; | ^~~~~~~~ ../fheroes2/world/world_pathfinding.cpp:188:51: warning: conversion from 'int' to 'uint16_t' {aka 'short unsigned int'} may change value [-Wconversion] 188 | newNode._objectID = tile.GetObject(); | ~~~~~~~~~~~~~~^~ ../fheroes2/world/world_pathfinding.cpp: In member function 'void PlayerWorldPathfinder::reEvaluateIfNeeded(const Heroes&)': ../fheroes2/world/world_pathfinding.cpp:211:46: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 211 | const uint32_t skill = hero.GetLevelSkill( Skill::Secondary::PATHFINDING ); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/world/world_pathfinding.cpp:215:29: warning: conversion from 'uint32_t' {aka 'unsigned int'} to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 215 | _pathfindingSkill = skill; | ^~~~~ ../fheroes2/world/world_pathfinding.cpp: In member function 'virtual std::__cxx11::list PlayerWorldPathfinder::buildPath(int) const': ../fheroes2/world/world_pathfinding.cpp:228:47: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 228 | const PathfindingNode & node = _cache[currentNode]; | ^~~~~~~~~~~ ../fheroes2/world/world_pathfinding.cpp:229:79: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 229 | const uint32_t cost = ( node._from != -1 ) ? node._cost - _cache[node._from]._cost : node._cost; | ~~~~~^~~~~ ../fheroes2/world/world_pathfinding.cpp:234:46: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 234 | if ( node._from != -1 && _cache[node._from]._from == currentNode ) { | ~~~~~^~~~~ ../fheroes2/world/world_pathfinding.cpp: In member function 'virtual void PlayerWorldPathfinder::processCurrentNode(std::vector&, int, int, bool)': ../fheroes2/world/world_pathfinding.cpp:258:50: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 258 | const uint32_t moveCost = _cache[currentNodeIdx]._cost + getMovementPenalty( currentNodeIdx, monsterIndex, direction, _pathfindingSkill ); | ^~~~~~~~~~~~~~ ../fheroes2/world/world_pathfinding.cpp:259:56: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 259 | PathfindingNode & monsterNode = _cache[monsterIndex]; | ^~~~~~~~~~~~ ../fheroes2/world/world_pathfinding.cpp: In member function 'void AIWorldPathfinder::reEvaluateIfNeeded(const Heroes&)': ../fheroes2/world/world_pathfinding.cpp:286:107: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 286 | reEvaluateIfNeeded( hero.GetIndex(), hero.GetColor(), hero.GetArmy().GetStrength(), hero.GetLevelSkill( Skill::Secondary::PATHFINDING ) ); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/world/world_pathfinding.cpp: In member function 'virtual void AIWorldPathfinder::processCurrentNode(std::vector&, int, int, bool)': ../fheroes2/world/world_pathfinding.cpp:305:44: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 305 | PathfindingNode & currentNode = _cache[currentNodeIdx]; | ^~~~~~~~~~~~~~ ../fheroes2/world/world_pathfinding.cpp:346:53: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 346 | PathfindingNode & teleportNode = _cache[teleportIdx]; | ^~~~~~~~~~~ ../fheroes2/world/world_pathfinding.cpp: In member function 'int AIWorldPathfinder::getFogDiscoveryTile(const Heroes&)': ../fheroes2/world/world_pathfinding.cpp:370:18: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 370 | tilesVisited[start] = true; | ^~~~~ ../fheroes2/world/world_pathfinding.cpp:384:41: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 384 | else if ( !tilesVisited[newIndex] ) { | ^~~~~~~~ ../fheroes2/world/world_pathfinding.cpp:385:34: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 385 | tilesVisited[newIndex] = true; | ^~~~~~~~ ../fheroes2/world/world_pathfinding.cpp:388:33: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 388 | if ( _cache[newIndex]._cost && monsters.empty() ) | ^~~~~~~~ ../fheroes2/world/world_pathfinding.cpp: In member function 'std::vector AIWorldPathfinder::getObjectsOnTheWay(int, bool)': ../fheroes2/world/world_pathfinding.cpp:401:90: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 401 | if ( _pathStart == -1 || _currentColor == Color::NONE || targetIndex == -1 || _cache[targetIndex]._cost == 0 ) | ^~~~~~~~~~~ ../fheroes2/world/world_pathfinding.cpp:422:47: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 422 | const PathfindingNode & node = _cache[currentNode]; | ^~~~~~~~~~~ ../fheroes2/world/world_pathfinding.cpp:430:63: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 430 | const PathfindingNode & adjacent = _cache[newIndex]; | ^~~~~~~~ ../fheroes2/world/world_pathfinding.cpp:441:46: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 441 | if ( node._from != -1 && _cache[node._from]._from == currentNode ) { | ~~~~~^~~~~ ../fheroes2/world/world_pathfinding.cpp:406:16: warning: unused variable 'isWater' [-Wunused-variable] 406 | const bool isWater = world.GetTiles( _pathStart ).isWater(); | ^~~~~~~ ../fheroes2/world/world_pathfinding.cpp: In member function 'virtual std::__cxx11::list AIWorldPathfinder::buildPath(int) const': ../fheroes2/world/world_pathfinding.cpp:468:47: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 468 | const PathfindingNode & node = _cache[currentNode]; | ^~~~~~~~~~~ ../fheroes2/world/world_pathfinding.cpp:469:79: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 469 | const uint32_t cost = ( node._from != -1 ) ? node._cost - _cache[node._from]._cost : node._cost; | ~~~~~^~~~~ ../fheroes2/world/world_pathfinding.cpp:474:46: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 474 | if ( node._from != -1 && _cache[node._from]._from == currentNode ) { | ~~~~~^~~~~ ../fheroes2/world/world_pathfinding.cpp: In member function 'uint32_t AIWorldPathfinder::getDistance(const Heroes&, int)': ../fheroes2/world/world_pathfinding.cpp:494:19: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 494 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../fheroes2/world/world_pathfinding.cpp: In member function 'uint32_t AIWorldPathfinder::getDistance(int, int, int, double, uint8_t)': ../fheroes2/world/world_pathfinding.cpp:500:19: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 500 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world_pathfinding.cpp:23: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: settings.o ../fheroes2/system/settings.cpp: In function 'const char* GetGeneralSettingDescription(int)': ../fheroes2/system/settings.cpp:175:22: warning: comparison of integer expressions of different signedness: 'const u32' {aka 'const unsigned int'} and 'int' [-Wsign-compare] 175 | if ( ptr->id == settingId ) | ~~~~~~~~^~~~~~~~~~~~ ../fheroes2/system/settings.cpp: In member function 'bool Settings::Read(const string&)': ../fheroes2/system/settings.cpp:698:33: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 698 | le.SetMouseOffsetX( ival ); | ^~~~ ../fheroes2/system/settings.cpp:702:33: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 702 | le.SetMouseOffsetY( ival ); | ^~~~ ../fheroes2/system/settings.cpp:706:51: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 706 | le.SetTapDelayForRightClickEmulation( ival ); | ^~~~ ../fheroes2/system/settings.cpp:727:34: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 727 | video_mode.w = GetInt( width ); | ~~~~~~^~~~~~~~~ ../fheroes2/system/settings.cpp:728:34: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 728 | video_mode.h = GetInt( height ); | ~~~~~~^~~~~~~~~~ ../fheroes2/system/settings.cpp: In member function 'bool Settings::Save(const string&) const': ../fheroes2/system/settings.cpp:802:39: warning: conversion to 'std::streamsize' {aka 'int'} from 'std::__cxx11::basic_string::size_type' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 802 | file.write( data.data(), data.size() ); | ~~~~~~~~~^~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: world_loadmap.o ../fheroes2/world/world_loadmap.cpp: In function 'TiXmlElement& Maps::operator>>(TiXmlElement&, Maps::Addons&)': ../fheroes2/world/world_loadmap.cpp:80:50: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 80 | levels.push_back( TilesAddon( level, uid, icn, index ) ); | ^~~ ../fheroes2/world/world_loadmap.cpp:80:60: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 80 | levels.push_back( TilesAddon( level, uid, icn, index ) ); | ^~~~~ ../fheroes2/world/world_loadmap.cpp: In function 'TiXmlElement& Maps::operator>>(TiXmlElement&, Maps::Tiles&)': ../fheroes2/world/world_loadmap.cpp:96:23: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 96 | tile.SetTile( sprite, shape ); | ^~~~~~ ../fheroes2/world/world_loadmap.cpp:96:31: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 96 | tile.SetTile( sprite, shape ); | ^~~~~ ../fheroes2/world/world_loadmap.cpp: In function 'TiXmlElement& operator>>(TiXmlElement&, MapsTiles&)': ../fheroes2/world/world_loadmap.cpp:119:46: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 119 | Maps::Tiles & tile = world.GetTiles( posx, posy ); | ^~~~ ../fheroes2/world/world_loadmap.cpp:119:52: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 119 | Maps::Tiles & tile = world.GetTiles( posx, posy ); | ^~~~ ../fheroes2/world/world_loadmap.cpp:111:60: warning: unused parameter 'tiles' [-Wunused-parameter] 111 | TiXmlElement & operator>>( TiXmlElement & doc, MapsTiles & tiles ) | ~~~~~~~~~~~~^~~~~ ../fheroes2/world/world_loadmap.cpp: In function 'TiXmlElement& operator>>(TiXmlElement&, Army&)': ../fheroes2/world/world_loadmap.cpp:137:48: warning: conversion to 'size_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 137 | Troop * troop = army.GetTroop( position++ ); | ~~~~~~~~^~ ../fheroes2/world/world_loadmap.cpp:139:31: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 139 | troop->Set( type, count ); | ^~~~~ ../fheroes2/world/world_loadmap.cpp: In function 'TiXmlElement& operator>>(TiXmlElement&, Castle&)': ../fheroes2/world/world_loadmap.cpp:161:28: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 161 | town.SetCenter( Point( posx, posy ) ); | ^~~~ ../fheroes2/world/world_loadmap.cpp:161:34: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 161 | town.SetCenter( Point( posx, posy ) ); | ^~~~ ../fheroes2/world/world_loadmap.cpp:166:26: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 166 | town.building |= build; | ^~~~~ ../fheroes2/world/world_loadmap.cpp:168:26: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 168 | town.building |= dwell; | ^~~~~ ../fheroes2/world/world_loadmap.cpp:201:50: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 201 | u32 kingdom_race = Players::GetPlayerRace( town.GetColor() ); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ ../fheroes2/world/world_loadmap.cpp:202:106: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 202 | race = Color::NONE != town.GetColor() && ( Race::ALL & kingdom_race ) ? kingdom_race : Race::Rand(); | ~~~~~~~~~~^~ ../fheroes2/world/world_loadmap.cpp:202:79: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] 202 | race = Color::NONE != town.GetColor() && ( Race::ALL & kingdom_race ) ? kingdom_race : Race::Rand(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/world/world_loadmap.cpp: In function 'TiXmlElement& operator>>(TiXmlElement&, Heroes&)': ../fheroes2/world/world_loadmap.cpp:280:28: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 280 | hero.SetCenter( Point( posx, posy ) ); | ^~~~ ../fheroes2/world/world_loadmap.cpp:280:34: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 280 | hero.SetCenter( Point( posx, posy ) ); | ^~~~ ../fheroes2/world/world_loadmap.cpp:306:23: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 306 | hero.experience = exp; | ^~~ ../fheroes2/world/world_loadmap.cpp:312:37: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 312 | hero.patrol_center = Point( posx, posy ); | ^~~~ ../fheroes2/world/world_loadmap.cpp:312:43: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 312 | hero.patrol_center = Point( posx, posy ); | ^~~~ ../fheroes2/world/world_loadmap.cpp: In function 'TiXmlElement& operator>>(TiXmlElement&, AllHeroes&)': ../fheroes2/world/world_loadmap.cpp:376:52: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 376 | const Maps::Tiles & tile = world.GetTiles( posx, posy ); | ^~~~ ../fheroes2/world/world_loadmap.cpp:376:58: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 376 | const Maps::Tiles & tile = world.GetTiles( posx, posy ); | ^~~~ ../fheroes2/world/world_loadmap.cpp:377:46: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 377 | const uint8_t object = tile.GetObject(); | ~~~~~~~~~~~~~~^~ ../fheroes2/world/world_loadmap.cpp:366:60: warning: unused parameter 'heroes' [-Wunused-parameter] 366 | TiXmlElement & operator>>( TiXmlElement & doc, AllHeroes & heroes ) | ~~~~~~~~~~~~^~~~~~ ../fheroes2/world/world_loadmap.cpp: In function 'TiXmlElement& operator>>(TiXmlElement&, MapSphinx&)': ../fheroes2/world/world_loadmap.cpp:460:30: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 460 | riddle.SetCenter( Point( posx, posy ) ); | ^~~~ ../fheroes2/world/world_loadmap.cpp:460:36: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 460 | riddle.SetCenter( Point( posx, posy ) ); | ^~~~ ../fheroes2/world/world_loadmap.cpp:461:20: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 461 | riddle.SetUID( uid ); | ^~~ ../fheroes2/world/world_loadmap.cpp: In function 'TiXmlElement& operator>>(TiXmlElement&, MapEvent&)': ../fheroes2/world/world_loadmap.cpp:496:29: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 496 | event.SetCenter( Point( posx, posy ) ); | ^~~~ ../fheroes2/world/world_loadmap.cpp:496:35: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 496 | event.SetCenter( Point( posx, posy ) ); | ^~~~ ../fheroes2/world/world_loadmap.cpp:497:19: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 497 | event.SetUID( uid ); | ^~~ ../fheroes2/world/world_loadmap.cpp: In function 'TiXmlElement& operator>>(TiXmlElement&, EventDate&)': ../fheroes2/world/world_loadmap.cpp:524:19: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 524 | event.first = day1; | ^~~~ ../fheroes2/world/world_loadmap.cpp:525:24: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 525 | event.subsequent = day2; | ^~~~ ../fheroes2/world/world_loadmap.cpp: In function 'TiXmlElement& operator>>(TiXmlElement&, MapSign&)': ../fheroes2/world/world_loadmap.cpp:567:27: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 567 | obj.SetCenter( Point( posx, posy ) ); | ^~~~ ../fheroes2/world/world_loadmap.cpp:567:33: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 567 | obj.SetCenter( Point( posx, posy ) ); | ^~~~ ../fheroes2/world/world_loadmap.cpp:568:17: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 568 | obj.SetUID( uid ); | ^~~ ../fheroes2/world/world_loadmap.cpp: In function 'TiXmlElement& operator>>(TiXmlElement&, MapResource&)': ../fheroes2/world/world_loadmap.cpp:584:27: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 584 | obj.SetCenter( Point( posx, posy ) ); | ^~~~ ../fheroes2/world/world_loadmap.cpp:584:33: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 584 | obj.SetCenter( Point( posx, posy ) ); | ^~~~ ../fheroes2/world/world_loadmap.cpp:585:17: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 585 | obj.SetUID( uid ); | ^~~ ../fheroes2/world/world_loadmap.cpp:586:41: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 586 | obj.resource = ResourceCount( type, count ); | ^~~~~ ../fheroes2/world/world_loadmap.cpp: In function 'TiXmlElement& operator>>(TiXmlElement&, MapMonster&)': ../fheroes2/world/world_loadmap.cpp:601:27: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 601 | obj.SetCenter( Point( posx, posy ) ); | ^~~~ ../fheroes2/world/world_loadmap.cpp:601:33: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 601 | obj.SetCenter( Point( posx, posy ) ); | ^~~~ ../fheroes2/world/world_loadmap.cpp:602:17: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 602 | obj.SetUID( uid ); | ^~~ ../fheroes2/world/world_loadmap.cpp:642:17: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 642 | count = mul * obj.monster.GetRNDSize( true ); | ^~~ ../fheroes2/world/world_loadmap.cpp:642:21: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 642 | count = mul * obj.monster.GetRNDSize( true ); | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/world/world_loadmap.cpp: In function 'TiXmlElement& operator>>(TiXmlElement&, MapArtifact&)': ../fheroes2/world/world_loadmap.cpp:660:27: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 660 | obj.SetCenter( Point( posx, posy ) ); | ^~~~ ../fheroes2/world/world_loadmap.cpp:660:33: warning: conversion from 'int' to 's16' {aka 'short int'} may change value [-Wconversion] 660 | obj.SetCenter( Point( posx, posy ) ); | ^~~~ ../fheroes2/world/world_loadmap.cpp:661:17: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 661 | obj.SetUID( uid ); | ^~~ ../fheroes2/world/world_loadmap.cpp:670:39: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 670 | cond = Rand::Get( 1, 10 ) < 4 ? Rand::Get( 1, 13 ) : 0; | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/world/world_loadmap.cpp: In function 'TiXmlElement& operator>>(TiXmlElement&, World&)': ../fheroes2/world/world_loadmap.cpp:854:12: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 854 | sw.w = value; | ^~~~~ ../fheroes2/world/world_loadmap.cpp:857:12: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 857 | sw.h = value; | ^~~~~ ../fheroes2/world/world_loadmap.cpp:866:28: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 866 | GameStatic::uniq = value; | ^~~~~ ../fheroes2/world/world_loadmap.cpp: In member function 'bool World::LoadMapMP2(const string&)': ../fheroes2/world/world_loadmap.cpp:995:24: warning: conversion to 'size_t' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 995 | fs.skip( w() * h() * SIZEOFMP2TILE ); ../fheroes2/world/world_loadmap.cpp:1004:42: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 1004 | mp2addon.objectNameN1 = fs.get() * 2; | ~~~~~~~~~^~~ ../fheroes2/world/world_loadmap.cpp:1005:38: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 1005 | mp2addon.indexNameN1 = fs.get(); | ~~~~~~^~ ../fheroes2/world/world_loadmap.cpp:1006:36: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 1006 | mp2addon.quantityN = fs.get(); | ~~~~~~^~ ../fheroes2/world/world_loadmap.cpp:1007:39: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 1007 | mp2addon.objectNameN2 = fs.get(); | ~~~~~~^~ ../fheroes2/world/world_loadmap.cpp:1008:38: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 1008 | mp2addon.indexNameN2 = fs.get(); | ~~~~~~^~ ../fheroes2/world/world_loadmap.cpp:1020:27: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 1020 | vec_tiles.resize( w() * h() ); | ~~~~^~~~~ ../fheroes2/world/world_loadmap.cpp:1024:43: warning: conversion to 'size_t' {aka 'unsigned int'} from 'std::__iterator_traits<__gnu_cxx::__normal_iterator >, void>::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 1024 | const size_t index = std::distance( vec_tiles.begin(), it ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/world/world_loadmap.cpp:1030:37: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 1030 | mp2tile.objectName1 = fs.get(); | ~~~~~~^~ ../fheroes2/world/world_loadmap.cpp:1031:36: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 1031 | mp2tile.indexName1 = fs.get(); | ~~~~~~^~ ../fheroes2/world/world_loadmap.cpp:1032:35: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 1032 | mp2tile.quantity1 = fs.get(); | ~~~~~~^~ ../fheroes2/world/world_loadmap.cpp:1033:35: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 1033 | mp2tile.quantity2 = fs.get(); | ~~~~~~^~ ../fheroes2/world/world_loadmap.cpp:1034:37: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 1034 | mp2tile.objectName2 = fs.get(); | ~~~~~~^~ ../fheroes2/world/world_loadmap.cpp:1035:36: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 1035 | mp2tile.indexName2 = fs.get(); | ~~~~~~^~ ../fheroes2/world/world_loadmap.cpp:1036:31: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 1036 | mp2tile.flags = fs.get(); | ~~~~~~^~ ../fheroes2/world/world_loadmap.cpp:1037:35: warning: conversion from 'int' to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 1037 | mp2tile.mapObject = fs.get(); | ~~~~~~^~ ../fheroes2/world/world_loadmap.cpp:1049:35: warning: conversion to 'std::vector::value_type' {aka 'int'} from 'size_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1049 | vec_object.push_back( index ); | ^~~~~ ../fheroes2/world/world_loadmap.cpp:1061:20: warning: conversion to 's32' {aka 'int'} from 'size_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1061 | tile.Init( index, mp2tile ); | ^~~~~ ../fheroes2/world/world_loadmap.cpp:1085:24: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1085 | u32 cx = fs.get(); | ~~~~~~^~ ../fheroes2/world/world_loadmap.cpp:1086:24: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1086 | u32 cy = fs.get(); | ~~~~~~^~ ../fheroes2/world/world_loadmap.cpp:1087:24: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1087 | u32 id = fs.get(); | ~~~~~~^~ ../fheroes2/world/world_loadmap.cpp:1096:48: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1096 | vec_castles.push_back( new Castle( cx, cy, Race::KNGT ) ); | ^~ ../fheroes2/world/world_loadmap.cpp:1096:52: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1096 | vec_castles.push_back( new Castle( cx, cy, Race::KNGT ) ); | ^~ ../fheroes2/world/world_loadmap.cpp:1101:48: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1101 | vec_castles.push_back( new Castle( cx, cy, Race::BARB ) ); | ^~ ../fheroes2/world/world_loadmap.cpp:1101:52: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1101 | vec_castles.push_back( new Castle( cx, cy, Race::BARB ) ); | ^~ ../fheroes2/world/world_loadmap.cpp:1106:48: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1106 | vec_castles.push_back( new Castle( cx, cy, Race::SORC ) ); | ^~ ../fheroes2/world/world_loadmap.cpp:1106:52: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1106 | vec_castles.push_back( new Castle( cx, cy, Race::SORC ) ); | ^~ ../fheroes2/world/world_loadmap.cpp:1111:48: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1111 | vec_castles.push_back( new Castle( cx, cy, Race::WRLK ) ); | ^~ ../fheroes2/world/world_loadmap.cpp:1111:52: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1111 | vec_castles.push_back( new Castle( cx, cy, Race::WRLK ) ); | ^~ ../fheroes2/world/world_loadmap.cpp:1116:48: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1116 | vec_castles.push_back( new Castle( cx, cy, Race::WZRD ) ); | ^~ ../fheroes2/world/world_loadmap.cpp:1116:52: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1116 | vec_castles.push_back( new Castle( cx, cy, Race::WZRD ) ); | ^~ ../fheroes2/world/world_loadmap.cpp:1121:48: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1121 | vec_castles.push_back( new Castle( cx, cy, Race::NECR ) ); | ^~ ../fheroes2/world/world_loadmap.cpp:1121:52: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1121 | vec_castles.push_back( new Castle( cx, cy, Race::NECR ) ); | ^~ ../fheroes2/world/world_loadmap.cpp:1126:48: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1126 | vec_castles.push_back( new Castle( cx, cy, Race::NONE ) ); | ^~ ../fheroes2/world/world_loadmap.cpp:1126:52: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1126 | vec_castles.push_back( new Castle( cx, cy, Race::NONE ) ); | ^~ ../fheroes2/world/world_loadmap.cpp:1136:57: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1136 | map_captureobj.Set( Maps::GetIndexFromAbsPoint( cx, cy ), MP2::OBJ_CASTLE, Color::NONE ); | ^~ ../fheroes2/world/world_loadmap.cpp:1136:61: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1136 | map_captureobj.Set( Maps::GetIndexFromAbsPoint( cx, cy ), MP2::OBJ_CASTLE, Color::NONE ); | ^~ ../fheroes2/world/world_loadmap.cpp:1145:24: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1145 | u32 cx = fs.get(); | ~~~~~~^~ ../fheroes2/world/world_loadmap.cpp:1146:24: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1146 | u32 cy = fs.get(); | ~~~~~~^~ ../fheroes2/world/world_loadmap.cpp:1147:24: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1147 | u32 id = fs.get(); | ~~~~~~^~ ../fheroes2/world/world_loadmap.cpp:1156:61: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1156 | map_captureobj.Set( Maps::GetIndexFromAbsPoint( cx, cy ), MP2::OBJ_SAWMILL, Color::NONE ); | ^~ ../fheroes2/world/world_loadmap.cpp:1156:65: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1156 | map_captureobj.Set( Maps::GetIndexFromAbsPoint( cx, cy ), MP2::OBJ_SAWMILL, Color::NONE ); | ^~ ../fheroes2/world/world_loadmap.cpp:1160:61: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1160 | map_captureobj.Set( Maps::GetIndexFromAbsPoint( cx, cy ), MP2::OBJ_ALCHEMYLAB, Color::NONE ); | ^~ ../fheroes2/world/world_loadmap.cpp:1160:65: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1160 | map_captureobj.Set( Maps::GetIndexFromAbsPoint( cx, cy ), MP2::OBJ_ALCHEMYLAB, Color::NONE ); | ^~ ../fheroes2/world/world_loadmap.cpp:1172:61: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1172 | map_captureobj.Set( Maps::GetIndexFromAbsPoint( cx, cy ), MP2::OBJ_MINES, Color::NONE ); | ^~ ../fheroes2/world/world_loadmap.cpp:1172:65: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1172 | map_captureobj.Set( Maps::GetIndexFromAbsPoint( cx, cy ), MP2::OBJ_MINES, Color::NONE ); | ^~ ../fheroes2/world/world_loadmap.cpp:1176:61: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1176 | map_captureobj.Set( Maps::GetIndexFromAbsPoint( cx, cy ), MP2::OBJ_LIGHTHOUSE, Color::NONE ); | ^~ ../fheroes2/world/world_loadmap.cpp:1176:65: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1176 | map_captureobj.Set( Maps::GetIndexFromAbsPoint( cx, cy ), MP2::OBJ_LIGHTHOUSE, Color::NONE ); | ^~ ../fheroes2/world/world_loadmap.cpp:1180:61: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1180 | map_captureobj.Set( Maps::GetIndexFromAbsPoint( cx, cy ), MP2::OBJ_DRAGONCITY, Color::NONE ); | ^~ ../fheroes2/world/world_loadmap.cpp:1180:65: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1180 | map_captureobj.Set( Maps::GetIndexFromAbsPoint( cx, cy ), MP2::OBJ_DRAGONCITY, Color::NONE ); | ^~ ../fheroes2/world/world_loadmap.cpp:1184:61: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1184 | map_captureobj.Set( Maps::GetIndexFromAbsPoint( cx, cy ), MP2::OBJ_ABANDONEDMINE, Color::NONE ); | ^~ ../fheroes2/world/world_loadmap.cpp:1184:65: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1184 | map_captureobj.Set( Maps::GetIndexFromAbsPoint( cx, cy ), MP2::OBJ_ABANDONEDMINE, Color::NONE ); | ^~ ../fheroes2/world/world_loadmap.cpp:1203:23: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1203 | u32 l = fs.get(); | ~~~~~~^~ ../fheroes2/world/world_loadmap.cpp:1204:23: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1204 | u32 h = fs.get(); | ~~~~~~^~ ../fheroes2/world/world_loadmap.cpp:1225:50: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1225 | const Maps::Tiles & tile = vec_tiles[*it_index]; | ^~~~~~~~~ ../fheroes2/world/world_loadmap.cpp:1228:48: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1228 | u32 orders = ( tile.GetQuantity2() ? tile.GetQuantity2() : 0 ); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/world/world_loadmap.cpp:1230:41: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 1230 | orders |= tile.GetQuantity1(); | ^ ../fheroes2/world/world_loadmap.cpp:1237:50: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 1237 | const Maps::Tiles & tile = vec_tiles[findobject]; | ^~~~~~~~~~ ../fheroes2/world/world_loadmap.cpp: In member function 'void World::ProcessNewMap()': ../fheroes2/world/world_loadmap.cpp:1498:56: warning: conversion to 's32' {aka 'int'} from 'size_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1498 | tile.SetHeroes( GetHeroes( Maps::GetPoint( ii ) ) ); | ^~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/world/world_loadmap.cpp:45: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: ai_normal.o ../fheroes2/ai/normal/ai_normal.cpp: In constructor 'AI::Normal::Normal()': ../fheroes2/ai/normal/ai_normal.cpp:29:33: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 29 | _personality = Rand::Get( AI::WARRIOR, AI::EXPLORER ); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/ai/normal/ai_normal.h:26, from ../fheroes2/ai/normal/ai_normal.cpp:21: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: ai_normal_battle.o ../fheroes2/ai/normal/ai_normal_battle.cpp: In function 'void AI::ForceSpellcastBeforeRetreat(Battle::Arena&, const HeroBase*, Battle::Actions&)': ../fheroes2/ai/normal/ai_normal_battle.cpp:86:67: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 86 | const uint32_t totalDamage = spell.Damage() * spellPower; | ^~~~~~~~~~ ../fheroes2/ai/normal/ai_normal_battle.cpp:89:139: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 89 | = enemy->GetMonsterStrength() * enemy->HowManyWillKilled( totalDamage * ( 100 - enemy->GetMagicResist( spell, spellPower ) ) / 100 ); | ^~~~~~~~~~ ../fheroes2/ai/normal/ai_normal_battle.cpp: In member function 'virtual void AI::Normal::BattleTurn(Battle::Arena&, const Battle::Unit&, Battle::Actions&)': ../fheroes2/ai/normal/ai_normal_battle.cpp:141:52: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 141 | const int dmg = unit.CalculateMaxDamage( currentUnit ); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ ../fheroes2/ai/normal/ai_normal_battle.cpp:207:80: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 207 | actions.push_back( Command( MSG_BATTLE_END_TURN, currentUnit.GetUID() ) ); | ~~~~~~~~~~~~~~~~~~^~ ../fheroes2/ai/normal/ai_normal_battle.cpp:243:73: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 243 | const int archerMeleeDmg = currentUnit.GetDamage( *enemy ); | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ ../fheroes2/ai/normal/ai_normal_battle.cpp:244:100: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 244 | const int damageDiff = archerMeleeDmg - enemy->CalculateRetaliationDamage( archerMeleeDmg ); | ^~~~~~~~~~~~~~ ../fheroes2/ai/normal/ai_normal_battle.cpp:244:48: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 244 | const int damageDiff = archerMeleeDmg - enemy->CalculateRetaliationDamage( archerMeleeDmg ); | ^~~~~~~~~~~~~~ ../fheroes2/ai/normal/ai_normal_battle.cpp:244:63: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 244 | const int damageDiff = archerMeleeDmg - enemy->CalculateRetaliationDamage( archerMeleeDmg ); | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/ai/normal/ai_normal_battle.cpp:264:94: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 264 | actions.push_back( Battle::Command( MSG_BATTLE_ATTACK, currentUnit.GetUID(), target->GetUID(), targetCell, 0 ) ); | ~~~~~~~~~~~~~~~~~~^~ ../fheroes2/ai/normal/ai_normal_battle.cpp:264:112: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 264 | actions.push_back( Battle::Command( MSG_BATTLE_ATTACK, currentUnit.GetUID(), target->GetUID(), targetCell, 0 ) ); | ~~~~~~~~~~~~~~^~ ../fheroes2/ai/normal/ai_normal_battle.cpp:288:94: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 288 | actions.push_back( Battle::Command( MSG_BATTLE_ATTACK, currentUnit.GetUID(), target->GetUID(), target->GetHeadIndex(), 0 ) ); | ~~~~~~~~~~~~~~~~~~^~ ../fheroes2/ai/normal/ai_normal_battle.cpp:288:112: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 288 | actions.push_back( Battle::Command( MSG_BATTLE_ATTACK, currentUnit.GetUID(), target->GetUID(), target->GetHeadIndex(), 0 ) ); | ~~~~~~~~~~~~~~^~ ../fheroes2/ai/normal/ai_normal_battle.cpp:330:112: warning: conversion to 'unsigned int' from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 330 | const uint32_t distanceToUnit = ( move.first != -1 ) ? move.second : Board::GetDistance( myHeadIndex, headIndexToDefend ); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/ai/normal/ai_normal_battle.cpp:433:92: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 433 | actions.push_back( Battle::Command( MSG_BATTLE_MOVE, currentUnit.GetUID(), targetCell ) ); | ~~~~~~~~~~~~~~~~~~^~ ../fheroes2/ai/normal/ai_normal_battle.cpp:436:94: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 436 | actions.push_back( Battle::Command( MSG_BATTLE_ATTACK, currentUnit.GetUID(), target->GetUID(), target->GetHeadIndex(), 0 ) ); | ~~~~~~~~~~~~~~~~~~^~ ../fheroes2/ai/normal/ai_normal_battle.cpp:436:112: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 436 | actions.push_back( Battle::Command( MSG_BATTLE_ATTACK, currentUnit.GetUID(), target->GetUID(), target->GetHeadIndex(), 0 ) ); | ~~~~~~~~~~~~~~^~ ../fheroes2/ai/normal/ai_normal_battle.cpp:446:76: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 446 | actions.push_back( Command( MSG_BATTLE_SKIP, currentUnit.GetUID(), true ) ); | ~~~~~~~~~~~~~~~~~~^~ ../fheroes2/ai/normal/ai_normal_battle.cpp:449:84: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 449 | actions.push_back( Battle::Command( MSG_BATTLE_END_TURN, currentUnit.GetUID() ) ); | ~~~~~~~~~~~~~~~~~~^~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/ai/normal/ai_normal.h:26, from ../fheroes2/ai/normal/ai_normal_battle.cpp:21: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: world_regions.o ../fheroes2/world/world_regions.cpp: In function 'uint8_t {anonymous}::ReflectDirectionIndex(uint8_t)': ../fheroes2/world/world_regions.cpp:47:34: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion] 47 | return ( direction + 4 ) % 8; | ~~~~~~~~~~~~~~~~~~^~~ ../fheroes2/world/world_regions.cpp: In function 'int {anonymous}::ConvertExtendedIndex(int, uint32_t)': ../fheroes2/world/world_regions.cpp:73:18: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 73 | return ( index / originalWidth + 1 ) * width + ( index % originalWidth ) + 1; | ^~~~~ ../fheroes2/world/world_regions.cpp:73:58: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 73 | return ( index / originalWidth + 1 ) * width + ( index % originalWidth ) + 1; | ^~~~~ ../fheroes2/world/world_regions.cpp:73:82: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] 73 | return ( index / originalWidth + 1 ) * width + ( index % originalWidth ) + 1; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ ../fheroes2/world/world_regions.cpp: In function 'void {anonymous}::CheckAdjacentTiles(std::vector&, MapRegion&, uint32_t, const std::vector&)': ../fheroes2/world/world_regions.cpp:94:47: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 94 | MapRegionNode & newTile = rawData[newIndex]; | ^~~~~~~~ ../fheroes2/world/world_regions.cpp:101:56: warning: conversion to 'std::set::value_type' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 101 | region._neighbours.insert( newTile.type ); | ~~~~~~~~^~~~ ../fheroes2/world/world_regions.cpp: In constructor 'MapRegion::MapRegion(int, int, bool, size_t)': ../fheroes2/world/world_regions.cpp:141:12: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 141 | : _id( regionIndex ) | ^~~~~~~~~~~ ../fheroes2/world/world_regions.cpp:146:22: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 146 | _nodes[0].type = regionIndex; | ^~~~~~~~~~~ ../fheroes2/world/world_regions.cpp: In member function 'void World::ComputeStaticAnalysis()': ../fheroes2/world/world_regions.cpp:219:27: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 219 | obstacles[0].reserve( width ); | ^~~~~ ../fheroes2/world/world_regions.cpp:220:27: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 220 | obstacles[2].reserve( width ); | ^~~~~ ../fheroes2/world/world_regions.cpp:225:27: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 225 | obstacles[1].reserve( height ); | ^~~~~~ ../fheroes2/world/world_regions.cpp:226:27: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 226 | obstacles[3].reserve( height ); | ^~~~~~ ../fheroes2/world/world_regions.cpp:237:44: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 237 | Maps::Tiles & tile = vec_tiles[index]; | ^~~~~ ../fheroes2/world/world_regions.cpp:240:32: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 240 | ++obstacles[0][x].second; | ^ ../fheroes2/world/world_regions.cpp:241:32: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 241 | ++obstacles[1][y].second; | ^ ../fheroes2/world/world_regions.cpp:242:32: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 242 | ++obstacles[2][x].second; | ^ ../fheroes2/world/world_regions.cpp:243:32: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 243 | ++obstacles[3][y].second; | ^ ../fheroes2/world/world_regions.cpp:247:32: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 247 | ++obstacles[2][x].second; | ^ ../fheroes2/world/world_regions.cpp:248:32: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 248 | ++obstacles[3][y].second; | ^ ../fheroes2/world/world_regions.cpp:252:32: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 252 | ++obstacles[0][x].second; | ^ ../fheroes2/world/world_regions.cpp:253:32: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 253 | ++obstacles[1][y].second; | ^ ../fheroes2/world/world_regions.cpp:266:32: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 266 | emptyLines[i].reserve( maxDimension / emptyLineFrequency ); | ^~~~~~~~~~~~ ../fheroes2/world/world_regions.cpp:291:57: warning: comparison of integer expressions of different signedness: 'const int' and 'const size_t' {aka 'const unsigned int'} [-Wsign-compare] 291 | AppendIfFarEnough( regionCenters, ( castleIndex > totalMapTiles ) ? castleTile.first : castleIndex, castleRegionSize ); | ~~~~~~~~~~~~^~~~~~~~~~~~~~~ ../fheroes2/world/world_regions.cpp:295:70: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 295 | const std::vector & directionOffsets = GetDirectionOffsets( width ); | ^~~~~ ../fheroes2/world/world_regions.cpp:303:54: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 303 | const Maps::Tiles & tile = vec_tiles[tileIndex]; | ^~~~~~~~~ ../fheroes2/world/world_regions.cpp:310:56: warning: comparison of integer expressions of different signedness: 'const int' and 'const size_t' {aka 'const unsigned int'} [-Wsign-compare] 310 | if ( newIndex >= 0 && newIndex < totalMapTiles ) { | ~~~~~~~~~^~~~~~~~~~~~~~~ ../fheroes2/world/world_regions.cpp:311:69: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 311 | const Maps::Tiles & newTile = vec_tiles[newIndex]; | ^~~~~~~~ ../fheroes2/world/world_regions.cpp:328:42: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 328 | const uint32_t extendedWidth = width + 2; | ~~~~~~^~~ ../fheroes2/world/world_regions.cpp:329:63: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 329 | std::vector data( extendedWidth * ( height + 2 ) ); | ~~~~~~~~~^~~~~ ../fheroes2/world/world_regions.cpp:333:43: warning: conversion to 'size_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 333 | const size_t index = rowIndex + x; | ~~~~~~~~~^~~ ../fheroes2/world/world_regions.cpp:335:63: warning: conversion to 'int' from 'size_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 335 | MapRegionNode & node = data[ConvertExtendedIndex( index, extendedWidth )]; | ^~~~~ ../fheroes2/world/world_regions.cpp:335:61: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 335 | MapRegionNode & node = data[ConvertExtendedIndex( index, extendedWidth )]; | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/world/world_regions.cpp:337:26: warning: conversion to 'int' from 'size_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 337 | node.index = index; | ^~~~~ ../fheroes2/world/world_regions.cpp:338:45: warning: conversion from 'int' to 'uint16_t' {aka 'short unsigned int'} may change value [-Wconversion] 338 | node.passable = tile.GetPassable(); | ~~~~~~~~~~~~~~~~^~ ../fheroes2/world/world_regions.cpp:342:74: warning: conversion from 'int' to 'uint16_t' {aka 'short unsigned int'} may change value [-Wconversion] 342 | node.mapObject = MP2::isActionObject( object, node.isWater ) ? object : 0; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ../fheroes2/world/world_regions.cpp:350:65: warning: conversion to 'size_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 350 | size_t averageRegionSize = ( static_cast( width ) * height * 2 ) / regionCenters.size(); | ^~~~~~ ../fheroes2/world/world_regions.cpp:358:63: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 358 | _regions.emplace_back( regionID, tileIndex, vec_tiles[tileIndex].isWater(), averageRegionSize ); | ^~~~~~~~~ ../fheroes2/world/world_regions.cpp:359:34: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 359 | data[ConvertExtendedIndex( tileIndex, extendedWidth )].type = regionID; | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/world/world_regions.cpp:376:37: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 376 | FindMissingRegions( data, Size( width, height ), _regions ); | ^~~~~ ../fheroes2/world/world_regions.cpp:376:44: warning: conversion from 'int' to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 376 | FindMissingRegions( data, Size( width, height ), _regions ); | ^~~~~~ ../fheroes2/world/world_regions.cpp:384:28: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 384 | vec_tiles[node.index].UpdateRegion( node.type ); | ~~~~~^~~~~ ../fheroes2/world/world_regions.cpp:391:55: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 391 | reg._neighbours.insert( vec_tiles[exitIndex].GetRegion() ); | ^~~~~~~~~ ../fheroes2/world/world_regions.cpp:391:75: warning: conversion to 'std::set::value_type' {aka 'int'} from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 391 | reg._neighbours.insert( vec_tiles[exitIndex].GetRegion() ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/world/world_regions.cpp:22: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ ../fheroes2/world/world_regions.cpp: At global scope: ../fheroes2/world/world_regions.cpp:45:13: warning: 'uint8_t {anonymous}::ReflectDirectionIndex(uint8_t)' defined but not used [-Wunused-function] 45 | uint8_t ReflectDirectionIndex( uint8_t direction ) | ^~~~~~~~~~~~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: world.o ../fheroes2/world/world.cpp: In member function 'void World::NewMaps(u32, u32)': ../fheroes2/world/world.cpp:311:15: warning: conversion from 'u32' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 311 | Size::w = sw; | ^~ ../fheroes2/world/world.cpp:312:15: warning: conversion from 'u32' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 312 | Size::h = sh; | ^~ ../fheroes2/world/world.cpp:320:38: warning: conversion from 'uint32_t' {aka 'unsigned int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 320 | mp2tile.tileIndex = Rand::Get( 16, 19 ); // index sprite ground, see ground32.til | ~~~~~~~~~^~~~~~~~~~ ../fheroes2/world/world.cpp:327:34: warning: conversion from 'uint32_t' {aka 'unsigned int'} to 'u8' {aka 'unsigned char'} may change value [-Wconversion] 327 | mp2tile.flags = Rand::Get( 0, 3 ); // shape reflect % 4, 0 none, 1 vertical, 2 horizontal, 3 any | ~~~~~~~~~^~~~~~~~ ../fheroes2/world/world.cpp:338:18: warning: conversion from 's32' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 338 | fi.size_w = w(); | ~^~ ../fheroes2/world/world.cpp:339:18: warning: conversion from 's32' {aka 'int'} to 'u16' {aka 'short unsigned int'} may change value [-Wconversion] 339 | fi.size_h = h(); | ~^~ ../fheroes2/world/world.cpp: In member function 'const Maps::Tiles& World::GetTiles(u32, u32) const': ../fheroes2/world/world.cpp:351:28: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 351 | return GetTiles( ay * w() + ax ); | ~^~ ../fheroes2/world/world.cpp:351:31: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 351 | return GetTiles( ay * w() + ax ); | ~~~~~~~~~^~~~ ../fheroes2/world/world.cpp: In member function 'Maps::Tiles& World::GetTiles(u32, u32)': ../fheroes2/world/world.cpp:356:28: warning: conversion to 'u32' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 356 | return GetTiles( ay * w() + ax ); | ~^~ ../fheroes2/world/world.cpp:356:31: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 356 | return GetTiles( ay * w() + ax ); | ~~~~~~~~~^~~~ ../fheroes2/world/world.cpp: In member function 'const Maps::Tiles& World::GetTiles(s32) const': ../fheroes2/world/world.cpp:364:22: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 364 | return vec_tiles[index]; | ^~~~~ ../fheroes2/world/world.cpp: In member function 'Maps::Tiles& World::GetTiles(s32)': ../fheroes2/world/world.cpp:373:22: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 373 | return vec_tiles[index]; | ^~~~~ ../fheroes2/world/world.cpp: In member function 'int World::GetDay() const': ../fheroes2/world/world.cpp:442:22: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] 442 | return LastDay() ? DAYOFWEEK : day % DAYOFWEEK; ../fheroes2/world/world.cpp: In member function 'int World::GetMonth() const': ../fheroes2/world/world.cpp:452:12: warning: conversion to 'int' from 'uint32_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 452 | return month; | ^~~~~ ../fheroes2/world/world.cpp: In member function 'void World::NewWeek()': ../fheroes2/world/world.cpp:549:44: warning: conversion to 'int' from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 549 | week_next = Week( type, LastWeek() ? Monster::Rand4MonthOf() : Monster::Rand4WeekOf() ); | ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/world/world.cpp: In member function 'void World::MonthOfMonstersAction(const Monster&)': ../fheroes2/world/world.cpp:624:29: warning: conversion to 'unsigned int' from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 624 | const u32 maxc = ( w() / area ) * ( h() / area ); | ~^~ ../fheroes2/world/world.cpp:624:46: warning: conversion to 'unsigned int' from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 624 | const u32 maxc = ( w() / area ) * ( h() / area ); | ~^~ ../fheroes2/world/world.cpp:630:56: warning: conversion to 'std::vector::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 630 | Maps::Tiles::PlaceMonsterOnTile( vec_tiles[*it], mons, 0 /* random */ ); | ^~~ ../fheroes2/world/world.cpp: In member function 's32 World::NextTeleport(s32) const': ../fheroes2/world/world.cpp:665:49: warning: suggest braces around empty body in an 'if' statement [-Wempty-body] 665 | DEBUG( DBG_GAME, DBG_WARN, "not found" ); | ^ ../fheroes2/world/world.cpp: In member function 'MapsIndexes World::GetWhirlpoolEndPoints(s32) const': ../fheroes2/world/world.cpp:677:57: warning: conversion to 'std::map::key_type' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 677 | uniq_whirlpools[GetTiles( *it ).GetObjectUID()].push_back( *it ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/world/world.cpp:691:38: warning: conversion to 'u32' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 691 | const u32 uniq = ( *it ).first; | ~~~~~~~~^~~~~ ../fheroes2/world/world.cpp:694:30: warning: conversion to 'std::vector::value_type' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 694 | uniqs.push_back( uniq ); | ^~~~ ../fheroes2/world/world.cpp: In member function 's32 World::NextWhirlpool(s32) const': ../fheroes2/world/world.cpp:708:47: warning: suggest braces around empty body in an 'if' statement [-Wempty-body] 708 | DEBUG( DBG_GAME, DBG_WARN, "is full" ); | ^ ../fheroes2/world/world.cpp: In member function 'bool World::DiggingForUltimateArtifact(const Point&)': ../fheroes2/world/world.cpp:794:43: warning: conversion to 'u32' {aka 'unsigned int'} from 's16' {aka 'short int'} may change the sign of the result [-Wsign-conversion] 794 | Maps::Tiles & tile = GetTiles( center.x, center.y ); | ~~~~~~~^ ../fheroes2/world/world.cpp:794:53: warning: conversion to 'u32' {aka 'unsigned int'} from 's16' {aka 'short int'} may change the sign of the result [-Wsign-conversion] 794 | Maps::Tiles & tile = GetTiles( center.x, center.y ); | ~~~~~~~^ ../fheroes2/world/world.cpp: In member function 'u32 World::CountObeliskOnMaps()': ../fheroes2/world/world.cpp:866:28: warning: conversion to 'u32' {aka 'unsigned int'} from 'std::__iterator_traits<__gnu_cxx::__normal_iterator >, void>::difference_type' {aka 'int'} may change the sign of the result [-Wsign-conversion] 866 | u32 res = std::count_if( vec_tiles.begin(), vec_tiles.end(), IsObeliskOnMaps ); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../fheroes2/world/world.cpp: In function 'StreamBase& operator>>(StreamBase&, MapObjects&)': ../fheroes2/world/world.cpp:1132:18: warning: conversion to 'std::map::key_type' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 1132 | objs[index] = ptr; | ^~~~~ ../fheroes2/world/world.cpp:1138:18: warning: conversion to 'std::map::key_type' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 1138 | objs[index] = ptr; | ^~~~~ ../fheroes2/world/world.cpp:1144:18: warning: conversion to 'std::map::key_type' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 1144 | objs[index] = ptr; | ^~~~~ ../fheroes2/world/world.cpp:1153:18: warning: conversion to 'std::map::key_type' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 1153 | objs[index] = ptr; | ^~~~~ ../fheroes2/world/world.cpp:1162:18: warning: conversion to 'std::map::key_type' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 1162 | objs[index] = ptr; | ^~~~~ ../fheroes2/world/world.cpp:1171:18: warning: conversion to 'std::map::key_type' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 1171 | objs[index] = ptr; | ^~~~~ ../fheroes2/world/world.cpp:1177:18: warning: conversion to 'std::map::key_type' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 1177 | objs[index] = ptr; | ^~~~~ ../fheroes2/world/world.cpp: In member function 'void EventDate::LoadFromMP2(StreamBuf)': ../fheroes2/world/world.cpp:1213:35: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1213 | resource.wood = st.getLE32(); | ~~~~~~~~~~^~ ../fheroes2/world/world.cpp:1214:38: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1214 | resource.mercury = st.getLE32(); | ~~~~~~~~~~^~ ../fheroes2/world/world.cpp:1215:34: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1215 | resource.ore = st.getLE32(); | ~~~~~~~~~~^~ ../fheroes2/world/world.cpp:1216:37: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1216 | resource.sulfur = st.getLE32(); | ~~~~~~~~~~^~ ../fheroes2/world/world.cpp:1217:38: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1217 | resource.crystal = st.getLE32(); | ~~~~~~~~~~^~ ../fheroes2/world/world.cpp:1218:35: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1218 | resource.gems = st.getLE32(); | ~~~~~~~~~~^~ ../fheroes2/world/world.cpp:1219:35: warning: conversion to 's32' {aka 'int'} from 'u32' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 1219 | resource.gold = st.getLE32(); | ~~~~~~~~~~^~ ../fheroes2/world/world.cpp:1261:50: warning: suggest braces around empty body in an 'else' statement [-Wempty-body] 1261 | DEBUG( DBG_GAME, DBG_WARN, "unknown id" ); | ^ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/world/world.h:35, from ../fheroes2/world/world.cpp:43: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../fheroes2/world/world.cpp:1037:49: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: ai_normal_castle.o ../fheroes2/ai/normal/ai_normal_castle.cpp: In function 'bool AI::Build(Castle&, const std::vector&, int)': ../fheroes2/ai/normal/ai_normal_castle.cpp:112:99: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 112 | if ( BuildIfEnoughResources( castle, it->building, GetResourceMultiplier( castle, priority, priority + 1 ) ) ) | ^~~~~~~~ ../fheroes2/ai/normal/ai_normal_castle.cpp:112:118: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 112 | if ( BuildIfEnoughResources( castle, it->building, GetResourceMultiplier( castle, priority, priority + 1 ) ) ) | ~~~~~~~~~^~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/ai/normal/ai_normal.h:26, from ../fheroes2/ai/normal/ai_normal_castle.cpp:21: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: ai_normal_hero.o ../fheroes2/ai/normal/ai_normal_hero.cpp: In member function 'double AI::Normal::getObjectValue(const Heroes&, int, int, double) const': ../fheroes2/ai/normal/ai_normal_hero.cpp:116:66: warning: conversion to 'int' from 'std::vector::size_type' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 116 | const int objectCount = regionStats.validObjects.size(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/ai/normal/ai_normal_hero.cpp: In member function 'int AI::Normal::getPriorityTarget(const Heroes&, int, uint32_t)': ../fheroes2/ai/normal/ai_normal_hero.cpp:141:13: warning: variable 'objectID' set but not used [-Wunused-but-set-variable] 141 | int objectID = MP2::OBJ_ZERO; | ^~~~~~~~ ../fheroes2/ai/normal/ai_normal_hero.cpp: In member function 'virtual void AI::Normal::HeroesActionComplete(Heroes&, int)': ../fheroes2/ai/normal/ai_normal_hero.cpp:193:59: warning: unused parameter 'index' [-Wunused-parameter] 193 | void Normal::HeroesActionComplete( Heroes & hero, int index ) | ~~~~^~~~~ ../fheroes2/ai/normal/ai_normal_hero.cpp: In member function 'virtual void AI::Normal::HeroTurn(Heroes&)': ../fheroes2/ai/normal/ai_normal_hero.cpp:207:50: warning: conversion to 'uint32_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 207 | patrolDistance = hero.GetSquarePatrol(); | ~~~~~~~~~~~~~~~~~~~~^~ ../fheroes2/ai/normal/ai_normal_hero.cpp:221:23: warning: unused variable 'startIndex' [-Wunused-variable] 221 | const int startIndex = hero.GetIndex(); | ^~~~~~~~~~ In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/ai/normal/ai_normal.h:26, from ../fheroes2/ai/normal/ai_normal_hero.cpp:23: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../fheroes2/ai/normal/ai_normal_hero.cpp:154:75: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' cxx: ai_normal_kingdom.o ../fheroes2/ai/normal/ai_normal_kingdom.cpp: In member function 'virtual void AI::Normal::KingdomTurn(Kingdom&)': ../fheroes2/ai/normal/ai_normal_kingdom.cpp:168:52: warning: conversion to 'size_t' {aka 'unsigned int'} from 's32' {aka 'int'} may change the sign of the result [-Wsign-conversion] 168 | size_t heroLimit = world.w() / Maps::SMALL + 1; | ~~~~~~~~~~~~~~~~~~~~~~~~^~~ ../fheroes2/ai/normal/ai_normal_kingdom.cpp:183:35: warning: conversion to 'int' from 'size_t' {aka 'unsigned int'} may change the sign of the result [-Wsign-conversion] 183 | int lowestHeroCount = heroLimit; | ^~~~~~~~~ In file included from ../fheroes2/gui/interface_icons.h:27, from ../fheroes2/game/game_interface.h:31, from ../fheroes2/ai/normal/ai_normal_kingdom.cpp:25: ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Castle*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 175 | RedrawItem( ( *content )[id], rtAreaItems.x, rtAreaItems.y + ( id - _topId ) * rtAreaItems.height / maxItems, id == _currentId ); | ^~ ../fheroes2/gui/interface_list.h: In instantiation of 'void Interface::ListBox::Redraw() [with Item = Heroes*]': ../fheroes2/gui/interface_list.h:159:14: required from here ../fheroes2/gui/interface_list.h:175:46: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] In file included from ../fheroes2/world/world_pathfinding.h:26, from ../fheroes2/ai/normal/ai_normal.h:26, from ../fheroes2/ai/normal/ai_normal_kingdom.cpp:24: ../engine/pathfinding.h: In instantiation of 'uint32_t Pathfinder::getDistance(int) const [with T = PathfindingNode; uint32_t = unsigned int]': ../engine/pathfinding.h:56:22: required from here ../engine/pathfinding.h:58:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 58 | return _cache[targetIndex]._cost; | ^~~~~~~~~~~ ../engine/pathfinding.h: In instantiation of 'const T& Pathfinder::getNode(int) const [with T = PathfindingNode]': ../engine/pathfinding.h:61:23: required from here ../engine/pathfinding.h:63:23: warning: conversion to 'std::vector >::size_type' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] 63 | return _cache[targetIndex]; | ^~~~~~~~~~~ make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' lnk: fheroes2 g++ agg.o bin_info.o icn.o m82.o mus.o til.o xmi.o ai_base.o ai_common.o ai_hero_action.o army.o army_bar.o army_troop.o battle_action.o battle_animation.o battle_arena.o battle_army.o battle_board.o battle_bridge.o battle_catapult.o battle_cell.o battle_command.o battle_dialogs.o battle_grave.o battle_interface.o battle_main.o battle_only.o battle_pathfinding.o battle_tower.o battle_troop.o buildinginfo.o captain.o castle.o castle_building.o castle_dialog.o castle_mageguild.o castle_tavern.o castle_town.o castle_well.o mageguild.o dialog_adventure.o dialog_arena.o dialog_armyinfo.o dialog_box.o dialog_buyboat.o dialog_chest.o dialog_file.o dialog_frameborder.o dialog_gameinfo.o dialog_giftresources.o dialog_guardian.o dialog_levelup.o dialog_marketplace.o dialog_message.o dialog_quickinfo.o dialog_recrut.o dialog_resolution.o dialog_resourceinfo.o dialog_selectcount.o dialog_selectfile.o dialog_selectitems.o dialog_selectscenario.o dialog_settings.o dialog_skillinfo.o dialog_spellinfo.o dialog_spriteinfo.o dialog_system.o dialog_thievesguild.o difficulty.o fheroes2.o game.o game_credits.o game_delays.o game_highscores.o game_hotkeys.o game_interface.o game_io.o game_loadgame.o game_mainmenu.o game_newgame.o game_over.o game_scenarioinfo.o game_startgame.o game_static.o game_video.o cursor.o interface_border.o interface_buttons.o interface_cpanel.o interface_events.o interface_focus.o interface_gamearea.o interface_icons.o interface_radar.o interface_status.o player_info.o skill_bar.o splitter.o statusbar.o text.o ui_button.o ui_tool.o direction.o heroes.o heroes_action.o heroes_base.o heroes_dialog.o heroes_indicator.o heroes_meeting.o heroes_move.o heroes_recruits.o heroes_spell.o route.o skill.o color.o kingdom.o kingdom_overview.o luck.o morale.o payment.o profit.o puzzle.o race.o speed.o week.o ground.o maps.o maps_actions.o maps_fileinfo.o maps_objects.o maps_tiles.o maps_tiles_quantity.o mp2.o position.o visit.o monster.o mounts.o objcrck.o objdirt.o objdsrt.o objgras.o objlava.o objmult.o objsnow.o objswmp.o objtown.o objwatr.o objxloc.o trees.o pocketpc_dialog.o artifact.o artifact_ultimate.o maps_text.o resource.o spell.o spell_book.o spell_storage.o gamedefs.o players.o settings.o world.o world_loadmap.o world_pathfinding.o world_regions.o ai_normal.o ai_normal_battle.o ai_normal_castle.o ai_normal_hero.o ai_normal_kingdom.o ../engine/libengine.a ../thirdparty/libsmacker/libsmacker.a ../thirdparty/tinyxml/libtinyxml.a -lSDL2 -lSDL2_mixer -lSDL2_image -lpng16 -lz -lSDL2_ttf -lz -o fheroes2 make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' make -C dist pot make[2]: Entering directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' gen: fheroes2.pot make[2]: Leaving directory '/usr/src/RPM/BUILD/fheroes2-0.8.3/src/dist' + exit 0 Executing(%install): /bin/sh -e /usr/src/tmp/rpm-tmp.44646 + umask 022 + /bin/mkdir -p /usr/src/RPM/BUILD + cd /usr/src/RPM/BUILD + /bin/chmod -Rf u+rwX -- /usr/src/tmp/fheroes2-buildroot + : + /bin/rm -rf -- /usr/src/tmp/fheroes2-buildroot + cd fheroes2-0.8.3 + mkdir -p /usr/src/tmp/fheroes2-buildroot/usr/bin /usr/src/tmp/fheroes2-buildroot/usr/share/icons/hicolor/32x32/apps /usr/src/tmp/fheroes2-buildroot/usr/share/applications /usr/src/tmp/fheroes2-buildroot/usr/share/doc/fheroes2 /usr/src/tmp/fheroes2-buildroot/usr/share/games/fheroes2/data /usr/src/tmp/fheroes2-buildroot/usr/share/games/fheroes2/maps + install -pm755 fheroes2 /usr/src/tmp/fheroes2-buildroot/usr/bin/fheroes2.bin + install -pm755 /usr/src/RPM/SOURCES/fheroes2.sh /usr/src/tmp/fheroes2-buildroot/usr/bin/fheroes2 + mv files/ /usr/src/tmp/fheroes2-buildroot/usr/share/games/fheroes2/ + install -pm 644 fheroes2.key /usr/src/tmp/fheroes2-buildroot/usr/share/games/fheroes2/ + install -pm 644 /usr/src/RPM/SOURCES/fheroes2.png /usr/src/tmp/fheroes2-buildroot/usr/share/icons/hicolor/32x32/apps/fheroes2.png + install -pm 644 /usr/src/RPM/SOURCES/fheroes2.desktop /usr/src/tmp/fheroes2-buildroot/usr/share/applications/fheroes2.desktop + install -pm 644 CONTRIBUTING.md changelog.txt LICENSE README.md /usr/src/tmp/fheroes2-buildroot/usr/share/doc/fheroes2/ + /usr/lib/rpm/brp-alt Cleaning files in /usr/src/tmp/fheroes2-buildroot (auto) Verifying and fixing files in /usr/src/tmp/fheroes2-buildroot (binconfig,pkgconfig,libtool,desktop) Checking contents of files in /usr/src/tmp/fheroes2-buildroot/ (default) Compressing files in /usr/src/tmp/fheroes2-buildroot (auto) Verifying ELF objects in /usr/src/tmp/fheroes2-buildroot (arch=normal,fhs=normal,lfs=relaxed,lint=relaxed,rpath=normal,stack=normal,textrel=normal,unresolved=normal) verify-elf: WARNING: ./usr/bin/fheroes2.bin: uses non-LFS functions: __xstat fopen readdir Hardlinking identical .pyc and .pyo files Processing files: fheroes2-0.8.3-alt1.20201104 Finding Provides (using /usr/lib/rpm/find-provides) Executing: /bin/sh -e /usr/src/tmp/rpm-tmp.IgDGDz find-provides: running scripts (alternatives,debuginfo,gir,lib,pam,perl,pkgconfig,python,shell,typelib) Finding Requires (using /usr/lib/rpm/find-requires) Executing: /bin/sh -e /usr/src/tmp/rpm-tmp.3u4JVv find-requires: running scripts (cpp,debuginfo,files,gir-js,gir-python,gir,lib,pam,perl,pkgconfig,pkgconfiglib,python,rpmlib,shebang,shell,static,symlinks,systemd-services,typelib) find-requires: FINDPACKAGE-COMMANDS: ln mkdir rm Requires: /bin/sh, /lib/ld-linux.so.2, coreutils, libSDL2-2.0.so.0 >= set:ngGZAlQhg74VluTEjudHlluXvZx0kw2m3iE4gvf9ZwgsKiZCqCYcrfz1m0nYyMCeBg4WokJgTuf1BVDdfu68o0hWcJwHasaJphZsK0fAEHg91xZm52vDpGCOTJjAF92hBGodF6pFgM3zlGpZ8cKQR7eKMZDYeeNFvgeASUKG5Y41yY7uaCP6MecaxRhs8vxYB0, libSDL2_image-2.0.so.0 >= set:jhfKzg11, libSDL2_mixer-2.0.so.0 >= set:kfkillLOnZx21tTpVXgBwIcV7CJN8YhkIseYO53jaktonRgfxHCYNdmbaMyUjnL8Wb5rUje, libSDL2_ttf-2.0.so.0 >= set:jfs5IUKf67J22QBeDxG1j1pnwhBAqOXq, libc.so.6(GLIBC_2.0), libc.so.6(GLIBC_2.1), libc.so.6(GLIBC_2.1.3), libc.so.6(GLIBC_2.3), libc.so.6(GLIBC_2.3.4), libc.so.6(GLIBC_2.4), libc.so.6(GLIBC_2.7), libgcc_s.so.1(GCC_3.0), libgcc_s.so.1(GCC_3.4), libm.so.6(GLIBC_2.0), libm.so.6(GLIBC_2.1), libstdc++.so.6(CXXABI_1.3), libstdc++.so.6(CXXABI_1.3.8), libstdc++.so.6(GLIBCXX_3.4), libstdc++.so.6(GLIBCXX_3.4.11), libstdc++.so.6(GLIBCXX_3.4.15), libstdc++.so.6(GLIBCXX_3.4.18), libstdc++.so.6(GLIBCXX_3.4.20), libstdc++.so.6(GLIBCXX_3.4.21), libstdc++.so.6(GLIBCXX_3.4.9), libz.so.1 >= set:kiId1BQpJq1, libz.so.1(ZLIB_1.2.0), rtld(GNU_HASH) Requires(rpmlib): rpmlib(SetVersions) Finding debuginfo files (using /usr/lib/rpm/find-debuginfo-files) Executing: /bin/sh -e /usr/src/tmp/rpm-tmp.CDZHKy Creating fheroes2-debuginfo package Processing files: fheroes2-debuginfo-0.8.3-alt1.20201104 Finding Provides (using /usr/lib/rpm/find-provides) Executing: /bin/sh -e /usr/src/tmp/rpm-tmp.3fVTTw find-provides: running scripts (debuginfo) Finding Requires (using /usr/lib/rpm/find-requires) Executing: /bin/sh -e /usr/src/tmp/rpm-tmp.CQyzRv find-requires: running scripts (debuginfo) Requires: fheroes2 = 2:0.8.3-alt1.20201104, /usr/lib/debug/lib/ld-linux.so.2.debug, debug(libSDL2-2.0.so.0), debug(libSDL2_image-2.0.so.0), debug(libSDL2_mixer-2.0.so.0), debug(libSDL2_ttf-2.0.so.0), debug(libc.so.6), debug(libgcc_s.so.1), debug(libm.so.6), debug(libstdc++.so.6), debug(libz.so.1) Adding to fheroes2-debuginfo a strict dependency on fheroes2 Wrote: /usr/src/RPM/RPMS/i586/fheroes2-0.8.3-alt1.20201104.i586.rpm Wrote: /usr/src/RPM/RPMS/i586/fheroes2-debuginfo-0.8.3-alt1.20201104.i586.rpm 294.28user 19.84system 1:05.23elapsed 481%CPU (0avgtext+0avgdata 210684maxresident)k 0inputs+0outputs (0major+9463774minor)pagefaults 0swaps 304.19user 23.67system 1:21.11elapsed 404%CPU (0avgtext+0avgdata 210684maxresident)k 0inputs+0outputs (0major+9813926minor)pagefaults 0swaps