[1/272] Building CXX object src/CMakeFiles/common.dir/filesys.cpp.o In file included from ../src/filesys.cpp:28: ../src/log.h:103:7: warning: ‘class ILogOutput’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 103 | class ILogOutput { | ^~~~~~~~~~ ../src/log.h:111:7: warning: base class ‘class ILogOutput’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 111 | class ICombinedLogOutput : public ILogOutput { | ^~~~~~~~~~~~~~~~~~ ../src/log.h:111:7: warning: ‘class ICombinedLogOutput’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] ../src/log.h:121:7: warning: base class ‘class ICombinedLogOutput’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 121 | class StreamLogOutput : public ICombinedLogOutput { | ^~~~~~~~~~~~~~~ ../src/log.h:121:7: warning: ‘class StreamLogOutput’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] ../src/log.h:140:7: warning: base class ‘class ICombinedLogOutput’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 140 | class FileLogOutput : public ICombinedLogOutput { | ^~~~~~~~~~~~~ ../src/log.h:140:7: warning: ‘class FileLogOutput’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] ../src/log.h:153:7: warning: base class ‘class ICombinedLogOutput’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 153 | class LogOutputBuffer : public ICombinedLogOutput { | ^~~~~~~~~~~~~~~ ../src/log.h:216:7: warning: ‘class LogTarget’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 216 | class LogTarget { | ^~~~~~~~~ ../src/log.h:290:31: warning: extra ‘;’ [-Wpedantic] 290 | DISABLE_CLASS_COPY(LogStream); | ^ | - [2/272] Building CXX object src/CMakeFiles/common.dir/environment.cpp.o In file included from ../src/environment.cpp:21: ../src/environment.h:52:33: warning: extra ‘;’ [-Wpedantic] 52 | DISABLE_CLASS_COPY(Environment); | ^ | - In file included from ../src/debug.h:26, from ../src/util/pointer.h:23, from ../src/mapnode.h:24, from ../src/voxel.h:27, from ../src/voxelalgorithms.h:22, from ../src/raycast.h:22, from ../src/environment.cpp:23: ../src/log.h:103:7: warning: ‘class ILogOutput’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 103 | class ILogOutput { | ^~~~~~~~~~ ../src/log.h:111:7: warning: base class ‘class ILogOutput’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 111 | class ICombinedLogOutput : public ILogOutput { | ^~~~~~~~~~~~~~~~~~ ../src/log.h:111:7: warning: ‘class ICombinedLogOutput’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] ../src/log.h:121:7: warning: base class ‘class ICombinedLogOutput’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 121 | class StreamLogOutput : public ICombinedLogOutput { | ^~~~~~~~~~~~~~~ ../src/log.h:121:7: warning: ‘class StreamLogOutput’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] ../src/log.h:140:7: warning: base class ‘class ICombinedLogOutput’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 140 | class FileLogOutput : public ICombinedLogOutput { | ^~~~~~~~~~~~~ ../src/log.h:140:7: warning: ‘class FileLogOutput’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] ../src/log.h:153:7: warning: base class ‘class ICombinedLogOutput’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 153 | class LogOutputBuffer : public ICombinedLogOutput { | ^~~~~~~~~~~~~~~ ../src/log.h:216:7: warning: ‘class LogTarget’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 216 | class LogTarget { | ^~~~~~~~~ ../src/log.h:290:31: warning: extra ‘;’ [-Wpedantic] 290 | DISABLE_CLASS_COPY(LogStream); | ^ | - In file included from ../src/mapnode.h:24, from ../src/voxel.h:27, from ../src/voxelalgorithms.h:22, from ../src/raycast.h:22, from ../src/environment.cpp:23: ../src/util/pointer.h: In constructor ‘ConstSharedPtr::ConstSharedPtr(T*)’: ../src/util/pointer.h:30:20: warning: declaration of ‘ptr’ shadows a member of ‘ConstSharedPtr’ [-Wshadow] 30 | ConstSharedPtr(T *ptr) : ptr(ptr) {} | ~~~^~~ ../src/util/pointer.h:38:21: note: shadowed declaration is here 38 | std::shared_ptr ptr; | ^~~ ../src/util/pointer.h: In constructor ‘ConstSharedPtr::ConstSharedPtr(const std::shared_ptr<_Tp>&)’: ../src/util/pointer.h:31:43: warning: declaration of ‘ptr’ shadows a member of ‘ConstSharedPtr’ [-Wshadow] 31 | ConstSharedPtr(const std::shared_ptr &ptr) : ptr(ptr) {} | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ ../src/util/pointer.h:38:21: note: shadowed declaration is here 38 | std::shared_ptr ptr; | ^~~ In file included from ../src/util/container.h:25, from ../src/voxelalgorithms.h:24, from ../src/raycast.h:22, from ../src/environment.cpp:23: ../src/threading/semaphore.h: At global scope: ../src/threading/semaphore.h:38:31: warning: extra ‘;’ [-Wpedantic] 38 | DISABLE_CLASS_COPY(Semaphore); | ^ | - In file included from ../src/script/scripting_server.h:21, from ../src/environment.cpp:24: ../src/script/cpp_api/s_base.h:86:35: warning: extra ‘;’ [-Wpedantic] 86 | DISABLE_CLASS_COPY(ScriptApiBase); | ^ | - In file included from ../src/script/cpp_api/s_async.h:30, from ../src/script/scripting_server.h:30, from ../src/environment.cpp:24: ../src/script/common/c_packer.h:53:10: warning: ISO C++ prohibits anonymous structs [-Wpedantic] 53 | struct { | ^ ../src/script/common/c_packer.h:56:10: warning: ISO C++ prohibits anonymous structs [-Wpedantic] 56 | struct { | ^ In file included from ../src/script/scripting_server.h:30, from ../src/environment.cpp:24: ../src/script/cpp_api/s_async.h: In constructor ‘AsyncEngine::AsyncEngine(Server*)’: ../src/script/cpp_api/s_async.h:84:22: warning: declaration of ‘server’ shadows a member of ‘AsyncEngine’ [-Wshadow] 84 | AsyncEngine(Server *server) : server(server) {}; | ~~~~~~~~^~~~~~ ../src/script/cpp_api/s_async.h:174:10: note: shadowed declaration is here 174 | Server *server = nullptr; | ^~~~~~ ../src/script/cpp_api/s_async.h: In constructor ‘AsyncEngine::AsyncEngine(Server*)’: ../src/script/cpp_api/s_async.h:84:22: warning: declaration of ‘server’ shadows a member of ‘AsyncEngine’ [-Wshadow] 84 | AsyncEngine(Server *server) : server(server) {}; | ~~~~~~~~^~~~~~ ../src/script/cpp_api/s_async.h:174:10: note: shadowed declaration is here 174 | Server *server = nullptr; | ^~~~~~ ../src/script/cpp_api/s_async.h: In constructor ‘AsyncEngine::AsyncEngine(Server*)’: ../src/script/cpp_api/s_async.h:84:22: warning: declaration of ‘server’ shadows a member of ‘AsyncEngine’ [-Wshadow] 84 | AsyncEngine(Server *server) : server(server) {}; | ~~~~~~~~^~~~~~ ../src/script/cpp_api/s_async.h:174:10: note: shadowed declaration is here 174 | Server *server = nullptr; | ^~~~~~ In file included from ../src/server.h:23, from ../src/environment.cpp:25: ../src/map.h: In member function ‘VoxelArea MapEditEvent::getArea() const’: ../src/map.h:98:15: warning: declaration of ‘p’ shadows a member of ‘MapEditEvent’ [-Wshadow] 98 | for (v3s16 p : modified_blocks) { | ^ ../src/map.h:73:8: note: shadowed declaration is here 73 | v3s16 p; | ^ ../src/map.h: At global scope: ../src/map.h:111:7: warning: ‘class MapEventReceiver’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 111 | class MapEventReceiver | ^~~~~~~~~~~~~~~~ ../src/map.h:124:25: warning: extra ‘;’ [-Wpedantic] 124 | DISABLE_CLASS_COPY(Map); | ^ | - In file included from ../src/server.h:25, from ../src/environment.cpp:25: ../src/gamedef.h:49:7: warning: ‘class IGameDef’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 49 | class IGameDef | ^~~~~~~~ In file included from ../src/content/mods.h:33, from ../src/server.h:27, from ../src/environment.cpp:25: ../src/content/subgames.h: In constructor ‘SubgameSpec::SubgameSpec(const string&, const string&, const string&, const std::unordered_map, std::__cxx11::basic_string >&, const string&, const string&, const string&, int)’: ../src/content/subgames.h:52:40: warning: declaration of ‘release’ shadows a member of ‘SubgameSpec’ [-Wshadow] 52 | const std::string &author = "", int release = 0) : | ~~~~^~~~~~~~~~~ ../src/content/subgames.h:34:6: note: shadowed declaration is here 34 | int release; | ^~~~~~~ ../src/content/subgames.h:52:23: warning: declaration of ‘author’ shadows a member of ‘SubgameSpec’ [-Wshadow] 52 | const std::string &author = "", int release = 0) : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../src/content/subgames.h:33:14: note: shadowed declaration is here 33 | std::string author; | ^~~~~~ ../src/content/subgames.h:51:23: warning: declaration of ‘menuicon_path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 51 | const std::string &menuicon_path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:42:14: note: shadowed declaration is here 42 | std::string menuicon_path; | ^~~~~~~~~~~~~ ../src/content/subgames.h:50:23: warning: declaration of ‘title’ shadows a member of ‘SubgameSpec’ [-Wshadow] 50 | const std::string &title = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ ../src/content/subgames.h:32:14: note: shadowed declaration is here 32 | std::string title; | ^~~~~ ../src/content/subgames.h:49:56: warning: declaration of ‘addon_mods_paths’ shadows a member of ‘SubgameSpec’ [-Wshadow] 49 | const std::unordered_map &addon_mods_paths = {}, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:41:47: note: shadowed declaration is here 41 | std::unordered_map addon_mods_paths; | ^~~~~~~~~~~~~~~~ ../src/content/subgames.h:48:23: warning: declaration of ‘gamemods_path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 48 | const std::string &gamemods_path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:36:14: note: shadowed declaration is here 36 | std::string gamemods_path; | ^~~~~~~~~~~~~ ../src/content/subgames.h:47:61: warning: declaration of ‘path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 47 | SubgameSpec(const std::string &id = "", const std::string &path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:35:14: note: shadowed declaration is here 35 | std::string path; | ^~~~ ../src/content/subgames.h:47:33: warning: declaration of ‘id’ shadows a member of ‘SubgameSpec’ [-Wshadow] 47 | SubgameSpec(const std::string &id = "", const std::string &path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~ ../src/content/subgames.h:31:14: note: shadowed declaration is here 31 | std::string id; | ^~ ../src/content/subgames.h: In constructor ‘SubgameSpec::SubgameSpec(const string&, const string&, const string&, const std::unordered_map, std::__cxx11::basic_string >&, const string&, const string&, const string&, int)’: ../src/content/subgames.h:52:40: warning: declaration of ‘release’ shadows a member of ‘SubgameSpec’ [-Wshadow] 52 | const std::string &author = "", int release = 0) : | ~~~~^~~~~~~~~~~ ../src/content/subgames.h:34:6: note: shadowed declaration is here 34 | int release; | ^~~~~~~ ../src/content/subgames.h:52:23: warning: declaration of ‘author’ shadows a member of ‘SubgameSpec’ [-Wshadow] 52 | const std::string &author = "", int release = 0) : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../src/content/subgames.h:33:14: note: shadowed declaration is here 33 | std::string author; | ^~~~~~ ../src/content/subgames.h:51:23: warning: declaration of ‘menuicon_path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 51 | const std::string &menuicon_path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:42:14: note: shadowed declaration is here 42 | std::string menuicon_path; | ^~~~~~~~~~~~~ ../src/content/subgames.h:50:23: warning: declaration of ‘title’ shadows a member of ‘SubgameSpec’ [-Wshadow] 50 | const std::string &title = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ ../src/content/subgames.h:32:14: note: shadowed declaration is here 32 | std::string title; | ^~~~~ ../src/content/subgames.h:49:56: warning: declaration of ‘addon_mods_paths’ shadows a member of ‘SubgameSpec’ [-Wshadow] 49 | const std::unordered_map &addon_mods_paths = {}, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:41:47: note: shadowed declaration is here 41 | std::unordered_map addon_mods_paths; | ^~~~~~~~~~~~~~~~ ../src/content/subgames.h:48:23: warning: declaration of ‘gamemods_path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 48 | const std::string &gamemods_path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:36:14: note: shadowed declaration is here 36 | std::string gamemods_path; | ^~~~~~~~~~~~~ ../src/content/subgames.h:47:61: warning: declaration of ‘path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 47 | SubgameSpec(const std::string &id = "", const std::string &path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:35:14: note: shadowed declaration is here 35 | std::string path; | ^~~~ ../src/content/subgames.h:47:33: warning: declaration of ‘id’ shadows a member of ‘SubgameSpec’ [-Wshadow] 47 | SubgameSpec(const std::string &id = "", const std::string &path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~ ../src/content/subgames.h:31:14: note: shadowed declaration is here 31 | std::string id; | ^~ ../src/content/subgames.h: In constructor ‘SubgameSpec::SubgameSpec(const string&, const string&, const string&, const std::unordered_map, std::__cxx11::basic_string >&, const string&, const string&, const string&, int)’: ../src/content/subgames.h:52:40: warning: declaration of ‘release’ shadows a member of ‘SubgameSpec’ [-Wshadow] 52 | const std::string &author = "", int release = 0) : | ~~~~^~~~~~~~~~~ ../src/content/subgames.h:34:6: note: shadowed declaration is here 34 | int release; | ^~~~~~~ ../src/content/subgames.h:52:23: warning: declaration of ‘author’ shadows a member of ‘SubgameSpec’ [-Wshadow] 52 | const std::string &author = "", int release = 0) : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../src/content/subgames.h:33:14: note: shadowed declaration is here 33 | std::string author; | ^~~~~~ ../src/content/subgames.h:51:23: warning: declaration of ‘menuicon_path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 51 | const std::string &menuicon_path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:42:14: note: shadowed declaration is here 42 | std::string menuicon_path; | ^~~~~~~~~~~~~ ../src/content/subgames.h:50:23: warning: declaration of ‘title’ shadows a member of ‘SubgameSpec’ [-Wshadow] 50 | const std::string &title = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ ../src/content/subgames.h:32:14: note: shadowed declaration is here 32 | std::string title; | ^~~~~ ../src/content/subgames.h:49:56: warning: declaration of ‘addon_mods_paths’ shadows a member of ‘SubgameSpec’ [-Wshadow] 49 | const std::unordered_map &addon_mods_paths = {}, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:41:47: note: shadowed declaration is here 41 | std::unordered_map addon_mods_paths; | ^~~~~~~~~~~~~~~~ ../src/content/subgames.h:48:23: warning: declaration of ‘gamemods_path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 48 | const std::string &gamemods_path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:36:14: note: shadowed declaration is here 36 | std::string gamemods_path; | ^~~~~~~~~~~~~ ../src/content/subgames.h:47:61: warning: declaration of ‘path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 47 | SubgameSpec(const std::string &id = "", const std::string &path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:35:14: note: shadowed declaration is here 35 | std::string path; | ^~~~ ../src/content/subgames.h:47:33: warning: declaration of ‘id’ shadows a member of ‘SubgameSpec’ [-Wshadow] 47 | SubgameSpec(const std::string &id = "", const std::string &path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~ ../src/content/subgames.h:31:14: note: shadowed declaration is here 31 | std::string id; | ^~ ../src/content/subgames.h: In constructor ‘WorldSpec::WorldSpec(const string&, const string&, const string&)’: ../src/content/subgames.h:84:23: warning: declaration of ‘gameid’ shadows a member of ‘WorldSpec’ [-Wshadow] 84 | const std::string &gameid = "") : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../src/content/subgames.h:81:14: note: shadowed declaration is here 81 | std::string gameid; | ^~~~~~ ../src/content/subgames.h:83:61: warning: declaration of ‘name’ shadows a member of ‘WorldSpec’ [-Wshadow] 83 | WorldSpec(const std::string &path = "", const std::string &name = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:80:14: note: shadowed declaration is here 80 | std::string name; | ^~~~ ../src/content/subgames.h:83:31: warning: declaration of ‘path’ shadows a member of ‘WorldSpec’ [-Wshadow] 83 | WorldSpec(const std::string &path = "", const std::string &name = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:79:14: note: shadowed declaration is here 79 | std::string path; | ^~~~ ../src/content/subgames.h: In constructor ‘WorldSpec::WorldSpec(const string&, const string&, const string&)’: ../src/content/subgames.h:84:23: warning: declaration of ‘gameid’ shadows a member of ‘WorldSpec’ [-Wshadow] 84 | const std::string &gameid = "") : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../src/content/subgames.h:81:14: note: shadowed declaration is here 81 | std::string gameid; | ^~~~~~ ../src/content/subgames.h:83:61: warning: declaration of ‘name’ shadows a member of ‘WorldSpec’ [-Wshadow] 83 | WorldSpec(const std::string &path = "", const std::string &name = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:80:14: note: shadowed declaration is here 80 | std::string name; | ^~~~ ../src/content/subgames.h:83:31: warning: declaration of ‘path’ shadows a member of ‘WorldSpec’ [-Wshadow] 83 | WorldSpec(const std::string &path = "", const std::string &name = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:79:14: note: shadowed declaration is here 79 | std::string path; | ^~~~ ../src/content/subgames.h: In constructor ‘WorldSpec::WorldSpec(const string&, const string&, const string&)’: ../src/content/subgames.h:84:23: warning: declaration of ‘gameid’ shadows a member of ‘WorldSpec’ [-Wshadow] 84 | const std::string &gameid = "") : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../src/content/subgames.h:81:14: note: shadowed declaration is here 81 | std::string gameid; | ^~~~~~ ../src/content/subgames.h:83:61: warning: declaration of ‘name’ shadows a member of ‘WorldSpec’ [-Wshadow] 83 | WorldSpec(const std::string &path = "", const std::string &name = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:80:14: note: shadowed declaration is here 80 | std::string name; | ^~~~ ../src/content/subgames.h:83:31: warning: declaration of ‘path’ shadows a member of ‘WorldSpec’ [-Wshadow] 83 | WorldSpec(const std::string &path = "", const std::string &name = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:79:14: note: shadowed declaration is here 79 | std::string path; | ^~~~ In file included from ../src/server.h:27, from ../src/environment.cpp:25: ../src/content/mods.h: In constructor ‘ModSpec::ModSpec(const string&, const string&, bool, const string&)’: ../src/content/mods.h:83:101: warning: declaration of ‘virtual_path’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ../src/content/mods.h:71:14: note: shadowed declaration is here 71 | std::string virtual_path; | ^~~~~~~~~~~~ ../src/content/mods.h:83:65: warning: declaration of ‘part_of_modpack’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~^~~~~~~~~~~~~~~ ../src/content/mods.h:52:7: note: shadowed declaration is here 52 | bool part_of_modpack = false; | ^~~~~~~~~~~~~~~ ../src/content/mods.h:83:54: warning: declaration of ‘path’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~ ../src/content/mods.h:43:14: note: shadowed declaration is here 43 | std::string path; | ^~~~ ../src/content/mods.h:83:29: warning: declaration of ‘name’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~ ../src/content/mods.h:41:14: note: shadowed declaration is here 41 | std::string name; | ^~~~ ../src/content/mods.h: In constructor ‘ModSpec::ModSpec(const string&, const string&, bool, const string&)’: ../src/content/mods.h:83:101: warning: declaration of ‘virtual_path’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ../src/content/mods.h:71:14: note: shadowed declaration is here 71 | std::string virtual_path; | ^~~~~~~~~~~~ ../src/content/mods.h:83:65: warning: declaration of ‘part_of_modpack’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~^~~~~~~~~~~~~~~ ../src/content/mods.h:52:7: note: shadowed declaration is here 52 | bool part_of_modpack = false; | ^~~~~~~~~~~~~~~ ../src/content/mods.h:83:54: warning: declaration of ‘path’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~ ../src/content/mods.h:43:14: note: shadowed declaration is here 43 | std::string path; | ^~~~ ../src/content/mods.h:83:29: warning: declaration of ‘name’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~ ../src/content/mods.h:41:14: note: shadowed declaration is here 41 | std::string name; | ^~~~ ../src/content/mods.h: In constructor ‘ModSpec::ModSpec(const string&, const string&, bool, const string&)’: ../src/content/mods.h:83:101: warning: declaration of ‘virtual_path’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ../src/content/mods.h:71:14: note: shadowed declaration is here 71 | std::string virtual_path; | ^~~~~~~~~~~~ ../src/content/mods.h:83:65: warning: declaration of ‘part_of_modpack’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~^~~~~~~~~~~~~~~ ../src/content/mods.h:52:7: note: shadowed declaration is here 52 | bool part_of_modpack = false; | ^~~~~~~~~~~~~~~ ../src/content/mods.h:83:54: warning: declaration of ‘path’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~ ../src/content/mods.h:43:14: note: shadowed declaration is here 43 | std::string path; | ^~~~ ../src/content/mods.h:83:29: warning: declaration of ‘name’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~ ../src/content/mods.h:41:14: note: shadowed declaration is here 41 | std::string name; | ^~~~ In file included from ../src/sound.h:24, from ../src/itemdef.h:28, from ../src/inventory.h:22, from ../src/inventorymanager.h:22, from ../src/server.h:28, from ../src/environment.cpp:25: ../src/util/serialize.h: At global scope: ../src/util/serialize.h:400:41: warning: extra ‘;’ [-Wpedantic] 400 | MAKE_STREAM_READ_FXN(u8, U8, 1); | ^ ../src/util/serialize.h:401:41: warning: extra ‘;’ [-Wpedantic] 401 | MAKE_STREAM_READ_FXN(u16, U16, 2); | ^ ../src/util/serialize.h:402:41: warning: extra ‘;’ [-Wpedantic] 402 | MAKE_STREAM_READ_FXN(u32, U32, 4); | ^ ../src/util/serialize.h:403:41: warning: extra ‘;’ [-Wpedantic] 403 | MAKE_STREAM_READ_FXN(u64, U64, 8); | ^ ../src/util/serialize.h:404:41: warning: extra ‘;’ [-Wpedantic] 404 | MAKE_STREAM_READ_FXN(s8, S8, 1); | ^ ../src/util/serialize.h:405:41: warning: extra ‘;’ [-Wpedantic] 405 | MAKE_STREAM_READ_FXN(s16, S16, 2); | ^ ../src/util/serialize.h:406:41: warning: extra ‘;’ [-Wpedantic] 406 | MAKE_STREAM_READ_FXN(s32, S32, 4); | ^ ../src/util/serialize.h:407:41: warning: extra ‘;’ [-Wpedantic] 407 | MAKE_STREAM_READ_FXN(s64, S64, 8); | ^ ../src/util/serialize.h:408:41: warning: extra ‘;’ [-Wpedantic] 408 | MAKE_STREAM_READ_FXN(f32, F1000, 4); | ^ ../src/util/serialize.h:409:41: warning: extra ‘;’ [-Wpedantic] 409 | MAKE_STREAM_READ_FXN(f32, F32, 4); | ^ ../src/util/serialize.h:410:41: warning: extra ‘;’ [-Wpedantic] 410 | MAKE_STREAM_READ_FXN(v2s16, V2S16, 4); | ^ ../src/util/serialize.h:411:41: warning: extra ‘;’ [-Wpedantic] 411 | MAKE_STREAM_READ_FXN(v3s16, V3S16, 6); | ^ ../src/util/serialize.h:412:41: warning: extra ‘;’ [-Wpedantic] 412 | MAKE_STREAM_READ_FXN(v2s32, V2S32, 8); | ^ ../src/util/serialize.h:413:41: warning: extra ‘;’ [-Wpedantic] 413 | MAKE_STREAM_READ_FXN(v3s32, V3S32, 12); | ^ ../src/util/serialize.h:414:41: warning: extra ‘;’ [-Wpedantic] 414 | MAKE_STREAM_READ_FXN(v3f, V3F1000, 12); | ^ ../src/util/serialize.h:415:41: warning: extra ‘;’ [-Wpedantic] 415 | MAKE_STREAM_READ_FXN(v2f, V2F32, 8); | ^ ../src/util/serialize.h:416:41: warning: extra ‘;’ [-Wpedantic] 416 | MAKE_STREAM_READ_FXN(v3f, V3F32, 12); | ^ ../src/util/serialize.h:417:46: warning: extra ‘;’ [-Wpedantic] 417 | MAKE_STREAM_READ_FXN(video::SColor, ARGB8, 4); | ^ ../src/util/serialize.h:419:42: warning: extra ‘;’ [-Wpedantic] 419 | MAKE_STREAM_WRITE_FXN(u8, U8, 1); | ^ ../src/util/serialize.h:420:42: warning: extra ‘;’ [-Wpedantic] 420 | MAKE_STREAM_WRITE_FXN(u16, U16, 2); | ^ ../src/util/serialize.h:421:42: warning: extra ‘;’ [-Wpedantic] 421 | MAKE_STREAM_WRITE_FXN(u32, U32, 4); | ^ ../src/util/serialize.h:422:42: warning: extra ‘;’ [-Wpedantic] 422 | MAKE_STREAM_WRITE_FXN(u64, U64, 8); | ^ ../src/util/serialize.h:423:42: warning: extra ‘;’ [-Wpedantic] 423 | MAKE_STREAM_WRITE_FXN(s8, S8, 1); | ^ ../src/util/serialize.h:424:42: warning: extra ‘;’ [-Wpedantic] 424 | MAKE_STREAM_WRITE_FXN(s16, S16, 2); | ^ ../src/util/serialize.h:425:42: warning: extra ‘;’ [-Wpedantic] 425 | MAKE_STREAM_WRITE_FXN(s32, S32, 4); | ^ ../src/util/serialize.h:426:42: warning: extra ‘;’ [-Wpedantic] 426 | MAKE_STREAM_WRITE_FXN(s64, S64, 8); | ^ ../src/util/serialize.h:427:42: warning: extra ‘;’ [-Wpedantic] 427 | MAKE_STREAM_WRITE_FXN(f32, F1000, 4); | ^ ../src/util/serialize.h:428:42: warning: extra ‘;’ [-Wpedantic] 428 | MAKE_STREAM_WRITE_FXN(f32, F32, 4); | ^ ../src/util/serialize.h:429:42: warning: extra ‘;’ [-Wpedantic] 429 | MAKE_STREAM_WRITE_FXN(v2s16, V2S16, 4); | ^ ../src/util/serialize.h:430:42: warning: extra ‘;’ [-Wpedantic] 430 | MAKE_STREAM_WRITE_FXN(v3s16, V3S16, 6); | ^ ../src/util/serialize.h:431:42: warning: extra ‘;’ [-Wpedantic] 431 | MAKE_STREAM_WRITE_FXN(v2s32, V2S32, 8); | ^ ../src/util/serialize.h:432:42: warning: extra ‘;’ [-Wpedantic] 432 | MAKE_STREAM_WRITE_FXN(v3s32, V3S32, 12); | ^ ../src/util/serialize.h:433:42: warning: extra ‘;’ [-Wpedantic] 433 | MAKE_STREAM_WRITE_FXN(v3f, V3F1000, 12); | ^ ../src/util/serialize.h:434:42: warning: extra ‘;’ [-Wpedantic] 434 | MAKE_STREAM_WRITE_FXN(v2f, V2F32, 8); | ^ ../src/util/serialize.h:435:42: warning: extra ‘;’ [-Wpedantic] 435 | MAKE_STREAM_WRITE_FXN(v3f, V3F32, 12); | ^ ../src/util/serialize.h:436:47: warning: extra ‘;’ [-Wpedantic] 436 | MAKE_STREAM_WRITE_FXN(video::SColor, ARGB8, 4); | ^ In file included from ../src/itemdef.h:28, from ../src/inventory.h:22, from ../src/inventorymanager.h:22, from ../src/server.h:28, from ../src/environment.cpp:25: ../src/sound.h: In constructor ‘SimpleSoundSpec::SimpleSoundSpec(const string&, float, bool, float, float)’: ../src/sound.h:33:48: warning: declaration of ‘pitch’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~~^~~~~~~~~~~~ ../src/sound.h:59:8: note: shadowed declaration is here 59 | float pitch = 1.0f; | ^~~~~ ../src/sound.h:33:29: warning: declaration of ‘fade’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~~^~~~~~~~~~~ ../src/sound.h:58:8: note: shadowed declaration is here 58 | float fade = 0.0f; | ^~~~ ../src/sound.h:33:9: warning: declaration of ‘loop’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~^~~~~~~~~~~~ ../src/sound.h:60:7: note: shadowed declaration is here 60 | bool loop = false; | ^~~~ ../src/sound.h:32:54: warning: declaration of ‘gain’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 32 | SimpleSoundSpec(const std::string &name = "", float gain = 1.0f, | ~~~~~~^~~~~~~~~~~ ../src/sound.h:57:8: note: shadowed declaration is here 57 | float gain = 1.0f; | ^~~~ ../src/sound.h:32:37: warning: declaration of ‘name’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 32 | SimpleSoundSpec(const std::string &name = "", float gain = 1.0f, | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/sound.h:56:14: note: shadowed declaration is here 56 | std::string name; | ^~~~ ../src/sound.h: In constructor ‘SimpleSoundSpec::SimpleSoundSpec(const string&, float, bool, float, float)’: ../src/sound.h:33:48: warning: declaration of ‘pitch’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~~^~~~~~~~~~~~ ../src/sound.h:59:8: note: shadowed declaration is here 59 | float pitch = 1.0f; | ^~~~~ ../src/sound.h:33:29: warning: declaration of ‘fade’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~~^~~~~~~~~~~ ../src/sound.h:58:8: note: shadowed declaration is here 58 | float fade = 0.0f; | ^~~~ ../src/sound.h:33:9: warning: declaration of ‘loop’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~^~~~~~~~~~~~ ../src/sound.h:60:7: note: shadowed declaration is here 60 | bool loop = false; | ^~~~ ../src/sound.h:32:54: warning: declaration of ‘gain’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 32 | SimpleSoundSpec(const std::string &name = "", float gain = 1.0f, | ~~~~~~^~~~~~~~~~~ ../src/sound.h:57:8: note: shadowed declaration is here 57 | float gain = 1.0f; | ^~~~ ../src/sound.h:32:37: warning: declaration of ‘name’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 32 | SimpleSoundSpec(const std::string &name = "", float gain = 1.0f, | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/sound.h:56:14: note: shadowed declaration is here 56 | std::string name; | ^~~~ ../src/sound.h: In constructor ‘SimpleSoundSpec::SimpleSoundSpec(const string&, float, bool, float, float)’: ../src/sound.h:33:48: warning: declaration of ‘pitch’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~~^~~~~~~~~~~~ ../src/sound.h:59:8: note: shadowed declaration is here 59 | float pitch = 1.0f; | ^~~~~ ../src/sound.h:33:29: warning: declaration of ‘fade’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~~^~~~~~~~~~~ ../src/sound.h:58:8: note: shadowed declaration is here 58 | float fade = 0.0f; | ^~~~ ../src/sound.h:33:9: warning: declaration of ‘loop’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~^~~~~~~~~~~~ ../src/sound.h:60:7: note: shadowed declaration is here 60 | bool loop = false; | ^~~~ ../src/sound.h:32:54: warning: declaration of ‘gain’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 32 | SimpleSoundSpec(const std::string &name = "", float gain = 1.0f, | ~~~~~~^~~~~~~~~~~ ../src/sound.h:57:8: note: shadowed declaration is here 57 | float gain = 1.0f; | ^~~~ ../src/sound.h:32:37: warning: declaration of ‘name’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 32 | SimpleSoundSpec(const std::string &name = "", float gain = 1.0f, | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/sound.h:56:14: note: shadowed declaration is here 56 | std::string name; | ^~~~ In file included from ../src/server.h:28, from ../src/environment.cpp:25: ../src/inventorymanager.h: At global scope: ../src/inventorymanager.h:134:39: warning: extra ‘;’ [-Wpedantic] 134 | virtual ~InventoryAction() = default;; | ^ | - In file included from ../src/server.h:31, from ../src/environment.cpp:25: ../src/particles.h:52:26: warning: extra ‘;’ [-Wpedantic] 52 | DECL_PARAM_OVERLOADS(u8); DECL_PARAM_OVERLOADS(s8); | ^ ../src/particles.h:52:53: warning: extra ‘;’ [-Wpedantic] 52 | DECL_PARAM_OVERLOADS(u8); DECL_PARAM_OVERLOADS(s8); | ^ ../src/particles.h:53:27: warning: extra ‘;’ [-Wpedantic] 53 | DECL_PARAM_OVERLOADS(u16); DECL_PARAM_OVERLOADS(s16); | ^ ../src/particles.h:53:54: warning: extra ‘;’ [-Wpedantic] 53 | DECL_PARAM_OVERLOADS(u16); DECL_PARAM_OVERLOADS(s16); | ^ ../src/particles.h:54:27: warning: extra ‘;’ [-Wpedantic] 54 | DECL_PARAM_OVERLOADS(u32); DECL_PARAM_OVERLOADS(s32); | ^ ../src/particles.h:54:54: warning: extra ‘;’ [-Wpedantic] 54 | DECL_PARAM_OVERLOADS(u32); DECL_PARAM_OVERLOADS(s32); | ^ ../src/particles.h:55:27: warning: extra ‘;’ [-Wpedantic] 55 | DECL_PARAM_OVERLOADS(f32); | ^ ../src/particles.h:56:27: warning: extra ‘;’ [-Wpedantic] 56 | DECL_PARAM_OVERLOADS(v2f); | ^ ../src/particles.h:57:27: warning: extra ‘;’ [-Wpedantic] 57 | DECL_PARAM_OVERLOADS(v3f); | ^ ../src/particles.h: In instantiation of ‘struct ParticleParamTypes::Parameter’: ../src/particles.h:245:5: required from ‘struct ParticleParamTypes::TweenedParameter >’ ../src/particles.h:351:41: required from here ../src/particles.h:89:9: warning: ‘struct ParticleParamTypes::Parameter’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 89 | struct Parameter | ^~~~~~~~~ ../src/particles.h: In instantiation of ‘struct ParticleParamTypes::Parameter, 2>’: ../src/particles.h:126:9: required from ‘struct ParticleParamTypes::VectorParameter, 2>’ ../src/particles.h:245:5: required from ‘struct ParticleParamTypes::TweenedParameter, 2> >’ ../src/particles.h:352:46: required from here ../src/particles.h:89:9: warning: ‘struct ParticleParamTypes::Parameter, 2>’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] ../src/particles.h: In instantiation of ‘struct ParticleParamTypes::VectorParameter, 2>’: ../src/particles.h:245:5: required from ‘struct ParticleParamTypes::TweenedParameter, 2> >’ ../src/particles.h:352:46: required from here ../src/particles.h:126:9: warning: base class ‘struct ParticleParamTypes::Parameter, 2>’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 126 | struct VectorParameter : public Parameter { | ^~~~~~~~~~~~~~~ ../src/particles.h:126:9: warning: ‘struct ParticleParamTypes::VectorParameter, 2>’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] ../src/particles.h: In instantiation of ‘struct ParticleParamTypes::Parameter, 3>’: ../src/particles.h:126:9: required from ‘struct ParticleParamTypes::VectorParameter, 3>’ ../src/particles.h:164:5: required from ‘struct ParticleParamTypes::RangedParameter, 3> >’ ../src/particles.h:399:31: required from here ../src/particles.h:89:9: warning: ‘struct ParticleParamTypes::Parameter, 3>’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 89 | struct Parameter | ^~~~~~~~~ ../src/particles.h: In instantiation of ‘struct ParticleParamTypes::VectorParameter, 3>’: ../src/particles.h:164:5: required from ‘struct ParticleParamTypes::RangedParameter, 3> >’ ../src/particles.h:399:31: required from here ../src/particles.h:126:9: warning: base class ‘struct ParticleParamTypes::Parameter, 3>’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 126 | struct VectorParameter : public Parameter { | ^~~~~~~~~~~~~~~ ../src/particles.h:126:9: warning: ‘struct ParticleParamTypes::VectorParameter, 3>’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] In file included from ../src/serverenvironment.h:22, from ../src/server.h:38, from ../src/environment.cpp:25: ../src/activeobject.h:78:7: warning: ‘class ActiveObject’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 78 | class ActiveObject | ^~~~~~~~~~~~ In file included from ../src/server/activeobjectmgr.h:25, from ../src/serverenvironment.h:26, from ../src/server.h:38, from ../src/environment.cpp:25: ../src/server/serveractiveobject.h:51:7: warning: base class ‘class ActiveObject’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 51 | class ServerActiveObject : public ActiveObject | ^~~~~~~~~~~~~~~~~~ In file included from ../src/server/activeobjectmgr.h:24, from ../src/serverenvironment.h:26, from ../src/server.h:38, from ../src/environment.cpp:25: ../src/server/../activeobjectmgr.h: In instantiation of ‘class ActiveObjectMgr’: ../src/server/activeobjectmgr.h:29:34: required from here ../src/server/../activeobjectmgr.h:29:7: warning: ‘class ActiveObjectMgr’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 29 | class ActiveObjectMgr | ^~~~~~~~~~~~~~~ In file included from ../src/serverenvironment.h:26, from ../src/server.h:38, from ../src/environment.cpp:25: ../src/server/activeobjectmgr.h:29:7: warning: base class ‘class ActiveObjectMgr’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 29 | class ActiveObjectMgr : public ::ActiveObjectMgr | ^~~~~~~~~~~~~~~ ../src/server/activeobjectmgr.h:29:7: warning: ‘class server::ActiveObjectMgr’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] In file included from ../src/environment.cpp:25: ../src/server.h:155:28: warning: extra ‘;’ [-Wpedantic] 155 | DISABLE_CLASS_COPY(Server); | ^ | - ../src/server.h:137:7: warning: base class ‘class MapEventReceiver’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 137 | class Server : public con::PeerHandler, public MapEventReceiver, | ^~~~~~ ../src/server.h:137:7: warning: base class ‘class IGameDef’ has accessible non-virtual destructor [-Wnon-virtual-dtor] In file included from ../src/emerge.h:28, from ../src/environment.cpp:27: ../src/mapgen/mapgen.h:179:28: warning: extra ‘;’ [-Wpedantic] 179 | DISABLE_CLASS_COPY(Mapgen); | ^ | - In file included from ../src/environment.cpp:27: ../src/emerge.h:103:34: warning: extra ‘;’ [-Wpedantic] 103 | DISABLE_CLASS_COPY(EmergeParams); | ^ | - ../src/emerge.h:152:35: warning: extra ‘;’ [-Wpedantic] 152 | DISABLE_CLASS_COPY(EmergeManager); | ^ | - ../src/environment.cpp: In member function ‘void Environment::continueRaycast(RaycastState*, PointedThing*)’: ../src/environment.cpp:192:17: warning: declaration of ‘PointedThing result’ shadows a parameter [-Wshadow] 192 | PointedThing result; | ^~~~~~ ../src/environment.cpp:115:70: note: shadowed declaration is here 115 | void Environment::continueRaycast(RaycastState *state, PointedThing *result) | ~~~~~~~~~~~~~~^~~~~~ [3/272] Building CXX object src/CMakeFiles/common.dir/emerge.cpp.o In file included from ../src/util/container.h:25, from ../src/emerge.h:26, from ../src/emerge.cpp:22: ../src/threading/semaphore.h:38:31: warning: extra ‘;’ [-Wpedantic] 38 | DISABLE_CLASS_COPY(Semaphore); | ^ | - In file included from ../src/debug.h:26, from ../src/util/pointer.h:23, from ../src/mapnode.h:24, from ../src/nodedef.h:26, from ../src/mapgen/mapgen.h:25, from ../src/emerge.h:28, from ../src/emerge.cpp:22: ../src/log.h:103:7: warning: ‘class ILogOutput’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 103 | class ILogOutput { | ^~~~~~~~~~ ../src/log.h:111:7: warning: base class ‘class ILogOutput’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 111 | class ICombinedLogOutput : public ILogOutput { | ^~~~~~~~~~~~~~~~~~ ../src/log.h:111:7: warning: ‘class ICombinedLogOutput’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] ../src/log.h:121:7: warning: base class ‘class ICombinedLogOutput’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 121 | class StreamLogOutput : public ICombinedLogOutput { | ^~~~~~~~~~~~~~~ ../src/log.h:121:7: warning: ‘class StreamLogOutput’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] ../src/log.h:140:7: warning: base class ‘class ICombinedLogOutput’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 140 | class FileLogOutput : public ICombinedLogOutput { | ^~~~~~~~~~~~~ ../src/log.h:140:7: warning: ‘class FileLogOutput’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] ../src/log.h:153:7: warning: base class ‘class ICombinedLogOutput’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 153 | class LogOutputBuffer : public ICombinedLogOutput { | ^~~~~~~~~~~~~~~ ../src/log.h:216:7: warning: ‘class LogTarget’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 216 | class LogTarget { | ^~~~~~~~~ ../src/log.h:290:31: warning: extra ‘;’ [-Wpedantic] 290 | DISABLE_CLASS_COPY(LogStream); | ^ | - In file included from ../src/mapnode.h:24, from ../src/nodedef.h:26, from ../src/mapgen/mapgen.h:25, from ../src/emerge.h:28, from ../src/emerge.cpp:22: ../src/util/pointer.h: In constructor ‘ConstSharedPtr::ConstSharedPtr(T*)’: ../src/util/pointer.h:30:20: warning: declaration of ‘ptr’ shadows a member of ‘ConstSharedPtr’ [-Wshadow] 30 | ConstSharedPtr(T *ptr) : ptr(ptr) {} | ~~~^~~ ../src/util/pointer.h:38:21: note: shadowed declaration is here 38 | std::shared_ptr ptr; | ^~~ ../src/util/pointer.h: In constructor ‘ConstSharedPtr::ConstSharedPtr(const std::shared_ptr<_Tp>&)’: ../src/util/pointer.h:31:43: warning: declaration of ‘ptr’ shadows a member of ‘ConstSharedPtr’ [-Wshadow] 31 | ConstSharedPtr(const std::shared_ptr &ptr) : ptr(ptr) {} | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ ../src/util/pointer.h:38:21: note: shadowed declaration is here 38 | std::shared_ptr ptr; | ^~~ In file included from ../src/sound.h:24, from ../src/nodedef.h:34, from ../src/mapgen/mapgen.h:25, from ../src/emerge.h:28, from ../src/emerge.cpp:22: ../src/util/serialize.h: At global scope: ../src/util/serialize.h:400:41: warning: extra ‘;’ [-Wpedantic] 400 | MAKE_STREAM_READ_FXN(u8, U8, 1); | ^ ../src/util/serialize.h:401:41: warning: extra ‘;’ [-Wpedantic] 401 | MAKE_STREAM_READ_FXN(u16, U16, 2); | ^ ../src/util/serialize.h:402:41: warning: extra ‘;’ [-Wpedantic] 402 | MAKE_STREAM_READ_FXN(u32, U32, 4); | ^ ../src/util/serialize.h:403:41: warning: extra ‘;’ [-Wpedantic] 403 | MAKE_STREAM_READ_FXN(u64, U64, 8); | ^ ../src/util/serialize.h:404:41: warning: extra ‘;’ [-Wpedantic] 404 | MAKE_STREAM_READ_FXN(s8, S8, 1); | ^ ../src/util/serialize.h:405:41: warning: extra ‘;’ [-Wpedantic] 405 | MAKE_STREAM_READ_FXN(s16, S16, 2); | ^ ../src/util/serialize.h:406:41: warning: extra ‘;’ [-Wpedantic] 406 | MAKE_STREAM_READ_FXN(s32, S32, 4); | ^ ../src/util/serialize.h:407:41: warning: extra ‘;’ [-Wpedantic] 407 | MAKE_STREAM_READ_FXN(s64, S64, 8); | ^ ../src/util/serialize.h:408:41: warning: extra ‘;’ [-Wpedantic] 408 | MAKE_STREAM_READ_FXN(f32, F1000, 4); | ^ ../src/util/serialize.h:409:41: warning: extra ‘;’ [-Wpedantic] 409 | MAKE_STREAM_READ_FXN(f32, F32, 4); | ^ ../src/util/serialize.h:410:41: warning: extra ‘;’ [-Wpedantic] 410 | MAKE_STREAM_READ_FXN(v2s16, V2S16, 4); | ^ ../src/util/serialize.h:411:41: warning: extra ‘;’ [-Wpedantic] 411 | MAKE_STREAM_READ_FXN(v3s16, V3S16, 6); | ^ ../src/util/serialize.h:412:41: warning: extra ‘;’ [-Wpedantic] 412 | MAKE_STREAM_READ_FXN(v2s32, V2S32, 8); | ^ ../src/util/serialize.h:413:41: warning: extra ‘;’ [-Wpedantic] 413 | MAKE_STREAM_READ_FXN(v3s32, V3S32, 12); | ^ ../src/util/serialize.h:414:41: warning: extra ‘;’ [-Wpedantic] 414 | MAKE_STREAM_READ_FXN(v3f, V3F1000, 12); | ^ ../src/util/serialize.h:415:41: warning: extra ‘;’ [-Wpedantic] 415 | MAKE_STREAM_READ_FXN(v2f, V2F32, 8); | ^ ../src/util/serialize.h:416:41: warning: extra ‘;’ [-Wpedantic] 416 | MAKE_STREAM_READ_FXN(v3f, V3F32, 12); | ^ ../src/util/serialize.h:417:46: warning: extra ‘;’ [-Wpedantic] 417 | MAKE_STREAM_READ_FXN(video::SColor, ARGB8, 4); | ^ ../src/util/serialize.h:419:42: warning: extra ‘;’ [-Wpedantic] 419 | MAKE_STREAM_WRITE_FXN(u8, U8, 1); | ^ ../src/util/serialize.h:420:42: warning: extra ‘;’ [-Wpedantic] 420 | MAKE_STREAM_WRITE_FXN(u16, U16, 2); | ^ ../src/util/serialize.h:421:42: warning: extra ‘;’ [-Wpedantic] 421 | MAKE_STREAM_WRITE_FXN(u32, U32, 4); | ^ ../src/util/serialize.h:422:42: warning: extra ‘;’ [-Wpedantic] 422 | MAKE_STREAM_WRITE_FXN(u64, U64, 8); | ^ ../src/util/serialize.h:423:42: warning: extra ‘;’ [-Wpedantic] 423 | MAKE_STREAM_WRITE_FXN(s8, S8, 1); | ^ ../src/util/serialize.h:424:42: warning: extra ‘;’ [-Wpedantic] 424 | MAKE_STREAM_WRITE_FXN(s16, S16, 2); | ^ ../src/util/serialize.h:425:42: warning: extra ‘;’ [-Wpedantic] 425 | MAKE_STREAM_WRITE_FXN(s32, S32, 4); | ^ ../src/util/serialize.h:426:42: warning: extra ‘;’ [-Wpedantic] 426 | MAKE_STREAM_WRITE_FXN(s64, S64, 8); | ^ ../src/util/serialize.h:427:42: warning: extra ‘;’ [-Wpedantic] 427 | MAKE_STREAM_WRITE_FXN(f32, F1000, 4); | ^ ../src/util/serialize.h:428:42: warning: extra ‘;’ [-Wpedantic] 428 | MAKE_STREAM_WRITE_FXN(f32, F32, 4); | ^ ../src/util/serialize.h:429:42: warning: extra ‘;’ [-Wpedantic] 429 | MAKE_STREAM_WRITE_FXN(v2s16, V2S16, 4); | ^ ../src/util/serialize.h:430:42: warning: extra ‘;’ [-Wpedantic] 430 | MAKE_STREAM_WRITE_FXN(v3s16, V3S16, 6); | ^ ../src/util/serialize.h:431:42: warning: extra ‘;’ [-Wpedantic] 431 | MAKE_STREAM_WRITE_FXN(v2s32, V2S32, 8); | ^ ../src/util/serialize.h:432:42: warning: extra ‘;’ [-Wpedantic] 432 | MAKE_STREAM_WRITE_FXN(v3s32, V3S32, 12); | ^ ../src/util/serialize.h:433:42: warning: extra ‘;’ [-Wpedantic] 433 | MAKE_STREAM_WRITE_FXN(v3f, V3F1000, 12); | ^ ../src/util/serialize.h:434:42: warning: extra ‘;’ [-Wpedantic] 434 | MAKE_STREAM_WRITE_FXN(v2f, V2F32, 8); | ^ ../src/util/serialize.h:435:42: warning: extra ‘;’ [-Wpedantic] 435 | MAKE_STREAM_WRITE_FXN(v3f, V3F32, 12); | ^ ../src/util/serialize.h:436:47: warning: extra ‘;’ [-Wpedantic] 436 | MAKE_STREAM_WRITE_FXN(video::SColor, ARGB8, 4); | ^ In file included from ../src/nodedef.h:34, from ../src/mapgen/mapgen.h:25, from ../src/emerge.h:28, from ../src/emerge.cpp:22: ../src/sound.h: In constructor ‘SimpleSoundSpec::SimpleSoundSpec(const string&, float, bool, float, float)’: ../src/sound.h:33:48: warning: declaration of ‘pitch’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~~^~~~~~~~~~~~ ../src/sound.h:59:8: note: shadowed declaration is here 59 | float pitch = 1.0f; | ^~~~~ ../src/sound.h:33:29: warning: declaration of ‘fade’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~~^~~~~~~~~~~ ../src/sound.h:58:8: note: shadowed declaration is here 58 | float fade = 0.0f; | ^~~~ ../src/sound.h:33:9: warning: declaration of ‘loop’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~^~~~~~~~~~~~ ../src/sound.h:60:7: note: shadowed declaration is here 60 | bool loop = false; | ^~~~ ../src/sound.h:32:54: warning: declaration of ‘gain’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 32 | SimpleSoundSpec(const std::string &name = "", float gain = 1.0f, | ~~~~~~^~~~~~~~~~~ ../src/sound.h:57:8: note: shadowed declaration is here 57 | float gain = 1.0f; | ^~~~ ../src/sound.h:32:37: warning: declaration of ‘name’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 32 | SimpleSoundSpec(const std::string &name = "", float gain = 1.0f, | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/sound.h:56:14: note: shadowed declaration is here 56 | std::string name; | ^~~~ ../src/sound.h: In constructor ‘SimpleSoundSpec::SimpleSoundSpec(const string&, float, bool, float, float)’: ../src/sound.h:33:48: warning: declaration of ‘pitch’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~~^~~~~~~~~~~~ ../src/sound.h:59:8: note: shadowed declaration is here 59 | float pitch = 1.0f; | ^~~~~ ../src/sound.h:33:29: warning: declaration of ‘fade’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~~^~~~~~~~~~~ ../src/sound.h:58:8: note: shadowed declaration is here 58 | float fade = 0.0f; | ^~~~ ../src/sound.h:33:9: warning: declaration of ‘loop’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~^~~~~~~~~~~~ ../src/sound.h:60:7: note: shadowed declaration is here 60 | bool loop = false; | ^~~~ ../src/sound.h:32:54: warning: declaration of ‘gain’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 32 | SimpleSoundSpec(const std::string &name = "", float gain = 1.0f, | ~~~~~~^~~~~~~~~~~ ../src/sound.h:57:8: note: shadowed declaration is here 57 | float gain = 1.0f; | ^~~~ ../src/sound.h:32:37: warning: declaration of ‘name’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 32 | SimpleSoundSpec(const std::string &name = "", float gain = 1.0f, | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/sound.h:56:14: note: shadowed declaration is here 56 | std::string name; | ^~~~ ../src/sound.h: In constructor ‘SimpleSoundSpec::SimpleSoundSpec(const string&, float, bool, float, float)’: ../src/sound.h:33:48: warning: declaration of ‘pitch’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~~^~~~~~~~~~~~ ../src/sound.h:59:8: note: shadowed declaration is here 59 | float pitch = 1.0f; | ^~~~~ ../src/sound.h:33:29: warning: declaration of ‘fade’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~~^~~~~~~~~~~ ../src/sound.h:58:8: note: shadowed declaration is here 58 | float fade = 0.0f; | ^~~~ ../src/sound.h:33:9: warning: declaration of ‘loop’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~^~~~~~~~~~~~ ../src/sound.h:60:7: note: shadowed declaration is here 60 | bool loop = false; | ^~~~ ../src/sound.h:32:54: warning: declaration of ‘gain’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 32 | SimpleSoundSpec(const std::string &name = "", float gain = 1.0f, | ~~~~~~^~~~~~~~~~~ ../src/sound.h:57:8: note: shadowed declaration is here 57 | float gain = 1.0f; | ^~~~ ../src/sound.h:32:37: warning: declaration of ‘name’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 32 | SimpleSoundSpec(const std::string &name = "", float gain = 1.0f, | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/sound.h:56:14: note: shadowed declaration is here 56 | std::string name; | ^~~~ In file included from ../src/emerge.h:28, from ../src/emerge.cpp:22: ../src/mapgen/mapgen.h: At global scope: ../src/mapgen/mapgen.h:179:28: warning: extra ‘;’ [-Wpedantic] 179 | DISABLE_CLASS_COPY(Mapgen); | ^ | - In file included from ../src/emerge.h:29, from ../src/emerge.cpp:22: ../src/map.h: In member function ‘VoxelArea MapEditEvent::getArea() const’: ../src/map.h:98:15: warning: declaration of ‘p’ shadows a member of ‘MapEditEvent’ [-Wshadow] 98 | for (v3s16 p : modified_blocks) { | ^ ../src/map.h:73:8: note: shadowed declaration is here 73 | v3s16 p; | ^ ../src/map.h: At global scope: ../src/map.h:111:7: warning: ‘class MapEventReceiver’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 111 | class MapEventReceiver | ^~~~~~~~~~~~~~~~ ../src/map.h:124:25: warning: extra ‘;’ [-Wpedantic] 124 | DISABLE_CLASS_COPY(Map); | ^ | - In file included from ../src/emerge.cpp:22: ../src/emerge.h:103:34: warning: extra ‘;’ [-Wpedantic] 103 | DISABLE_CLASS_COPY(EmergeParams); | ^ | - ../src/emerge.h:152:35: warning: extra ‘;’ [-Wpedantic] 152 | DISABLE_CLASS_COPY(EmergeManager); | ^ | - In file included from ../src/emerge.cpp:33: ../src/environment.h:52:33: warning: extra ‘;’ [-Wpedantic] 52 | DISABLE_CLASS_COPY(Environment); | ^ | - In file included from ../src/mapgen/mg_biome.h:23, from ../src/emerge.cpp:37: ../src/objdef.h:74:35: warning: extra ‘;’ [-Wpedantic] 74 | DISABLE_CLASS_COPY(ObjDefManager); | ^ | - In file included from ../src/emerge.cpp:38: ../src/mapgen/mg_ore.h: In constructor ‘Ore::Ore(bool)’: ../src/mapgen/mg_ore.h:71:20: warning: declaration of ‘needs_noise’ shadows a member of ‘Ore’ [-Wshadow] 71 | explicit Ore(bool needs_noise): needs_noise(needs_noise) {} | ~~~~~^~~~~~~~~~~ ../src/mapgen/mg_ore.h:55:13: note: shadowed declaration is here 55 | const bool needs_noise; | ^~~~~~~~~~~ ../src/mapgen/mg_ore.h: In constructor ‘Ore::Ore(bool)’: ../src/mapgen/mg_ore.h:71:20: warning: declaration of ‘needs_noise’ shadows a member of ‘Ore’ [-Wshadow] 71 | explicit Ore(bool needs_noise): needs_noise(needs_noise) {} | ~~~~~^~~~~~~~~~~ ../src/mapgen/mg_ore.h:55:13: note: shadowed declaration is here 55 | const bool needs_noise; | ^~~~~~~~~~~ ../src/mapgen/mg_ore.h: In constructor ‘Ore::Ore(bool)’: ../src/mapgen/mg_ore.h:71:20: warning: declaration of ‘needs_noise’ shadows a member of ‘Ore’ [-Wshadow] 71 | explicit Ore(bool needs_noise): needs_noise(needs_noise) {} | ~~~~~^~~~~~~~~~~ ../src/mapgen/mg_ore.h:55:13: note: shadowed declaration is here 55 | const bool needs_noise; | ^~~~~~~~~~~ In file included from ../src/script/scripting_server.h:21, from ../src/emerge.cpp:43: ../src/script/cpp_api/s_base.h: At global scope: ../src/script/cpp_api/s_base.h:86:35: warning: extra ‘;’ [-Wpedantic] 86 | DISABLE_CLASS_COPY(ScriptApiBase); | ^ | - In file included from ../src/script/cpp_api/s_async.h:30, from ../src/script/scripting_server.h:30, from ../src/emerge.cpp:43: ../src/script/common/c_packer.h:53:10: warning: ISO C++ prohibits anonymous structs [-Wpedantic] 53 | struct { | ^ ../src/script/common/c_packer.h:56:10: warning: ISO C++ prohibits anonymous structs [-Wpedantic] 56 | struct { | ^ In file included from ../src/script/scripting_server.h:30, from ../src/emerge.cpp:43: ../src/script/cpp_api/s_async.h: In constructor ‘AsyncEngine::AsyncEngine(Server*)’: ../src/script/cpp_api/s_async.h:84:22: warning: declaration of ‘server’ shadows a member of ‘AsyncEngine’ [-Wshadow] 84 | AsyncEngine(Server *server) : server(server) {}; | ~~~~~~~~^~~~~~ ../src/script/cpp_api/s_async.h:174:10: note: shadowed declaration is here 174 | Server *server = nullptr; | ^~~~~~ ../src/script/cpp_api/s_async.h: In constructor ‘AsyncEngine::AsyncEngine(Server*)’: ../src/script/cpp_api/s_async.h:84:22: warning: declaration of ‘server’ shadows a member of ‘AsyncEngine’ [-Wshadow] 84 | AsyncEngine(Server *server) : server(server) {}; | ~~~~~~~~^~~~~~ ../src/script/cpp_api/s_async.h:174:10: note: shadowed declaration is here 174 | Server *server = nullptr; | ^~~~~~ ../src/script/cpp_api/s_async.h: In constructor ‘AsyncEngine::AsyncEngine(Server*)’: ../src/script/cpp_api/s_async.h:84:22: warning: declaration of ‘server’ shadows a member of ‘AsyncEngine’ [-Wshadow] 84 | AsyncEngine(Server *server) : server(server) {}; | ~~~~~~~~^~~~~~ ../src/script/cpp_api/s_async.h:174:10: note: shadowed declaration is here 174 | Server *server = nullptr; | ^~~~~~ In file included from ../src/server.h:25, from ../src/emerge.cpp:44: ../src/gamedef.h: At global scope: ../src/gamedef.h:49:7: warning: ‘class IGameDef’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 49 | class IGameDef | ^~~~~~~~ In file included from ../src/content/mods.h:33, from ../src/server.h:27, from ../src/emerge.cpp:44: ../src/content/subgames.h: In constructor ‘SubgameSpec::SubgameSpec(const string&, const string&, const string&, const std::unordered_map, std::__cxx11::basic_string >&, const string&, const string&, const string&, int)’: ../src/content/subgames.h:52:40: warning: declaration of ‘release’ shadows a member of ‘SubgameSpec’ [-Wshadow] 52 | const std::string &author = "", int release = 0) : | ~~~~^~~~~~~~~~~ ../src/content/subgames.h:34:6: note: shadowed declaration is here 34 | int release; | ^~~~~~~ ../src/content/subgames.h:52:23: warning: declaration of ‘author’ shadows a member of ‘SubgameSpec’ [-Wshadow] 52 | const std::string &author = "", int release = 0) : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../src/content/subgames.h:33:14: note: shadowed declaration is here 33 | std::string author; | ^~~~~~ ../src/content/subgames.h:51:23: warning: declaration of ‘menuicon_path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 51 | const std::string &menuicon_path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:42:14: note: shadowed declaration is here 42 | std::string menuicon_path; | ^~~~~~~~~~~~~ ../src/content/subgames.h:50:23: warning: declaration of ‘title’ shadows a member of ‘SubgameSpec’ [-Wshadow] 50 | const std::string &title = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ ../src/content/subgames.h:32:14: note: shadowed declaration is here 32 | std::string title; | ^~~~~ ../src/content/subgames.h:49:56: warning: declaration of ‘addon_mods_paths’ shadows a member of ‘SubgameSpec’ [-Wshadow] 49 | const std::unordered_map &addon_mods_paths = {}, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:41:47: note: shadowed declaration is here 41 | std::unordered_map addon_mods_paths; | ^~~~~~~~~~~~~~~~ ../src/content/subgames.h:48:23: warning: declaration of ‘gamemods_path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 48 | const std::string &gamemods_path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:36:14: note: shadowed declaration is here 36 | std::string gamemods_path; | ^~~~~~~~~~~~~ ../src/content/subgames.h:47:61: warning: declaration of ‘path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 47 | SubgameSpec(const std::string &id = "", const std::string &path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:35:14: note: shadowed declaration is here 35 | std::string path; | ^~~~ ../src/content/subgames.h:47:33: warning: declaration of ‘id’ shadows a member of ‘SubgameSpec’ [-Wshadow] 47 | SubgameSpec(const std::string &id = "", const std::string &path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~ ../src/content/subgames.h:31:14: note: shadowed declaration is here 31 | std::string id; | ^~ ../src/content/subgames.h: In constructor ‘SubgameSpec::SubgameSpec(const string&, const string&, const string&, const std::unordered_map, std::__cxx11::basic_string >&, const string&, const string&, const string&, int)’: ../src/content/subgames.h:52:40: warning: declaration of ‘release’ shadows a member of ‘SubgameSpec’ [-Wshadow] 52 | const std::string &author = "", int release = 0) : | ~~~~^~~~~~~~~~~ ../src/content/subgames.h:34:6: note: shadowed declaration is here 34 | int release; | ^~~~~~~ ../src/content/subgames.h:52:23: warning: declaration of ‘author’ shadows a member of ‘SubgameSpec’ [-Wshadow] 52 | const std::string &author = "", int release = 0) : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../src/content/subgames.h:33:14: note: shadowed declaration is here 33 | std::string author; | ^~~~~~ ../src/content/subgames.h:51:23: warning: declaration of ‘menuicon_path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 51 | const std::string &menuicon_path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:42:14: note: shadowed declaration is here 42 | std::string menuicon_path; | ^~~~~~~~~~~~~ ../src/content/subgames.h:50:23: warning: declaration of ‘title’ shadows a member of ‘SubgameSpec’ [-Wshadow] 50 | const std::string &title = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ ../src/content/subgames.h:32:14: note: shadowed declaration is here 32 | std::string title; | ^~~~~ ../src/content/subgames.h:49:56: warning: declaration of ‘addon_mods_paths’ shadows a member of ‘SubgameSpec’ [-Wshadow] 49 | const std::unordered_map &addon_mods_paths = {}, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:41:47: note: shadowed declaration is here 41 | std::unordered_map addon_mods_paths; | ^~~~~~~~~~~~~~~~ ../src/content/subgames.h:48:23: warning: declaration of ‘gamemods_path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 48 | const std::string &gamemods_path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:36:14: note: shadowed declaration is here 36 | std::string gamemods_path; | ^~~~~~~~~~~~~ ../src/content/subgames.h:47:61: warning: declaration of ‘path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 47 | SubgameSpec(const std::string &id = "", const std::string &path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:35:14: note: shadowed declaration is here 35 | std::string path; | ^~~~ ../src/content/subgames.h:47:33: warning: declaration of ‘id’ shadows a member of ‘SubgameSpec’ [-Wshadow] 47 | SubgameSpec(const std::string &id = "", const std::string &path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~ ../src/content/subgames.h:31:14: note: shadowed declaration is here 31 | std::string id; | ^~ ../src/content/subgames.h: In constructor ‘SubgameSpec::SubgameSpec(const string&, const string&, const string&, const std::unordered_map, std::__cxx11::basic_string >&, const string&, const string&, const string&, int)’: ../src/content/subgames.h:52:40: warning: declaration of ‘release’ shadows a member of ‘SubgameSpec’ [-Wshadow] 52 | const std::string &author = "", int release = 0) : | ~~~~^~~~~~~~~~~ ../src/content/subgames.h:34:6: note: shadowed declaration is here 34 | int release; | ^~~~~~~ ../src/content/subgames.h:52:23: warning: declaration of ‘author’ shadows a member of ‘SubgameSpec’ [-Wshadow] 52 | const std::string &author = "", int release = 0) : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../src/content/subgames.h:33:14: note: shadowed declaration is here 33 | std::string author; | ^~~~~~ ../src/content/subgames.h:51:23: warning: declaration of ‘menuicon_path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 51 | const std::string &menuicon_path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:42:14: note: shadowed declaration is here 42 | std::string menuicon_path; | ^~~~~~~~~~~~~ ../src/content/subgames.h:50:23: warning: declaration of ‘title’ shadows a member of ‘SubgameSpec’ [-Wshadow] 50 | const std::string &title = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ ../src/content/subgames.h:32:14: note: shadowed declaration is here 32 | std::string title; | ^~~~~ ../src/content/subgames.h:49:56: warning: declaration of ‘addon_mods_paths’ shadows a member of ‘SubgameSpec’ [-Wshadow] 49 | const std::unordered_map &addon_mods_paths = {}, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:41:47: note: shadowed declaration is here 41 | std::unordered_map addon_mods_paths; | ^~~~~~~~~~~~~~~~ ../src/content/subgames.h:48:23: warning: declaration of ‘gamemods_path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 48 | const std::string &gamemods_path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:36:14: note: shadowed declaration is here 36 | std::string gamemods_path; | ^~~~~~~~~~~~~ ../src/content/subgames.h:47:61: warning: declaration of ‘path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 47 | SubgameSpec(const std::string &id = "", const std::string &path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:35:14: note: shadowed declaration is here 35 | std::string path; | ^~~~ ../src/content/subgames.h:47:33: warning: declaration of ‘id’ shadows a member of ‘SubgameSpec’ [-Wshadow] 47 | SubgameSpec(const std::string &id = "", const std::string &path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~ ../src/content/subgames.h:31:14: note: shadowed declaration is here 31 | std::string id; | ^~ ../src/content/subgames.h: In constructor ‘WorldSpec::WorldSpec(const string&, const string&, const string&)’: ../src/content/subgames.h:84:23: warning: declaration of ‘gameid’ shadows a member of ‘WorldSpec’ [-Wshadow] 84 | const std::string &gameid = "") : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../src/content/subgames.h:81:14: note: shadowed declaration is here 81 | std::string gameid; | ^~~~~~ ../src/content/subgames.h:83:61: warning: declaration of ‘name’ shadows a member of ‘WorldSpec’ [-Wshadow] 83 | WorldSpec(const std::string &path = "", const std::string &name = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:80:14: note: shadowed declaration is here 80 | std::string name; | ^~~~ ../src/content/subgames.h:83:31: warning: declaration of ‘path’ shadows a member of ‘WorldSpec’ [-Wshadow] 83 | WorldSpec(const std::string &path = "", const std::string &name = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:79:14: note: shadowed declaration is here 79 | std::string path; | ^~~~ ../src/content/subgames.h: In constructor ‘WorldSpec::WorldSpec(const string&, const string&, const string&)’: ../src/content/subgames.h:84:23: warning: declaration of ‘gameid’ shadows a member of ‘WorldSpec’ [-Wshadow] 84 | const std::string &gameid = "") : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../src/content/subgames.h:81:14: note: shadowed declaration is here 81 | std::string gameid; | ^~~~~~ ../src/content/subgames.h:83:61: warning: declaration of ‘name’ shadows a member of ‘WorldSpec’ [-Wshadow] 83 | WorldSpec(const std::string &path = "", const std::string &name = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:80:14: note: shadowed declaration is here 80 | std::string name; | ^~~~ ../src/content/subgames.h:83:31: warning: declaration of ‘path’ shadows a member of ‘WorldSpec’ [-Wshadow] 83 | WorldSpec(const std::string &path = "", const std::string &name = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:79:14: note: shadowed declaration is here 79 | std::string path; | ^~~~ ../src/content/subgames.h: In constructor ‘WorldSpec::WorldSpec(const string&, const string&, const string&)’: ../src/content/subgames.h:84:23: warning: declaration of ‘gameid’ shadows a member of ‘WorldSpec’ [-Wshadow] 84 | const std::string &gameid = "") : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../src/content/subgames.h:81:14: note: shadowed declaration is here 81 | std::string gameid; | ^~~~~~ ../src/content/subgames.h:83:61: warning: declaration of ‘name’ shadows a member of ‘WorldSpec’ [-Wshadow] 83 | WorldSpec(const std::string &path = "", const std::string &name = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:80:14: note: shadowed declaration is here 80 | std::string name; | ^~~~ ../src/content/subgames.h:83:31: warning: declaration of ‘path’ shadows a member of ‘WorldSpec’ [-Wshadow] 83 | WorldSpec(const std::string &path = "", const std::string &name = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:79:14: note: shadowed declaration is here 79 | std::string path; | ^~~~ In file included from ../src/server.h:27, from ../src/emerge.cpp:44: ../src/content/mods.h: In constructor ‘ModSpec::ModSpec(const string&, const string&, bool, const string&)’: ../src/content/mods.h:83:101: warning: declaration of ‘virtual_path’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ../src/content/mods.h:71:14: note: shadowed declaration is here 71 | std::string virtual_path; | ^~~~~~~~~~~~ ../src/content/mods.h:83:65: warning: declaration of ‘part_of_modpack’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~^~~~~~~~~~~~~~~ ../src/content/mods.h:52:7: note: shadowed declaration is here 52 | bool part_of_modpack = false; | ^~~~~~~~~~~~~~~ ../src/content/mods.h:83:54: warning: declaration of ‘path’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~ ../src/content/mods.h:43:14: note: shadowed declaration is here 43 | std::string path; | ^~~~ ../src/content/mods.h:83:29: warning: declaration of ‘name’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~ ../src/content/mods.h:41:14: note: shadowed declaration is here 41 | std::string name; | ^~~~ ../src/content/mods.h: In constructor ‘ModSpec::ModSpec(const string&, const string&, bool, const string&)’: ../src/content/mods.h:83:101: warning: declaration of ‘virtual_path’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ../src/content/mods.h:71:14: note: shadowed declaration is here 71 | std::string virtual_path; | ^~~~~~~~~~~~ ../src/content/mods.h:83:65: warning: declaration of ‘part_of_modpack’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~^~~~~~~~~~~~~~~ ../src/content/mods.h:52:7: note: shadowed declaration is here 52 | bool part_of_modpack = false; | ^~~~~~~~~~~~~~~ ../src/content/mods.h:83:54: warning: declaration of ‘path’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~ ../src/content/mods.h:43:14: note: shadowed declaration is here 43 | std::string path; | ^~~~ ../src/content/mods.h:83:29: warning: declaration of ‘name’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~ ../src/content/mods.h:41:14: note: shadowed declaration is here 41 | std::string name; | ^~~~ ../src/content/mods.h: In constructor ‘ModSpec::ModSpec(const string&, const string&, bool, const string&)’: ../src/content/mods.h:83:101: warning: declaration of ‘virtual_path’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ../src/content/mods.h:71:14: note: shadowed declaration is here 71 | std::string virtual_path; | ^~~~~~~~~~~~ ../src/content/mods.h:83:65: warning: declaration of ‘part_of_modpack’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~^~~~~~~~~~~~~~~ ../src/content/mods.h:52:7: note: shadowed declaration is here 52 | bool part_of_modpack = false; | ^~~~~~~~~~~~~~~ ../src/content/mods.h:83:54: warning: declaration of ‘path’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~ ../src/content/mods.h:43:14: note: shadowed declaration is here 43 | std::string path; | ^~~~ ../src/content/mods.h:83:29: warning: declaration of ‘name’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~ ../src/content/mods.h:41:14: note: shadowed declaration is here 41 | std::string name; | ^~~~ In file included from ../src/server.h:28, from ../src/emerge.cpp:44: ../src/inventorymanager.h: At global scope: ../src/inventorymanager.h:134:39: warning: extra ‘;’ [-Wpedantic] 134 | virtual ~InventoryAction() = default;; | ^ | - In file included from ../src/server.h:31, from ../src/emerge.cpp:44: ../src/particles.h:52:26: warning: extra ‘;’ [-Wpedantic] 52 | DECL_PARAM_OVERLOADS(u8); DECL_PARAM_OVERLOADS(s8); | ^ ../src/particles.h:52:53: warning: extra ‘;’ [-Wpedantic] 52 | DECL_PARAM_OVERLOADS(u8); DECL_PARAM_OVERLOADS(s8); | ^ ../src/particles.h:53:27: warning: extra ‘;’ [-Wpedantic] 53 | DECL_PARAM_OVERLOADS(u16); DECL_PARAM_OVERLOADS(s16); | ^ ../src/particles.h:53:54: warning: extra ‘;’ [-Wpedantic] 53 | DECL_PARAM_OVERLOADS(u16); DECL_PARAM_OVERLOADS(s16); | ^ ../src/particles.h:54:27: warning: extra ‘;’ [-Wpedantic] 54 | DECL_PARAM_OVERLOADS(u32); DECL_PARAM_OVERLOADS(s32); | ^ ../src/particles.h:54:54: warning: extra ‘;’ [-Wpedantic] 54 | DECL_PARAM_OVERLOADS(u32); DECL_PARAM_OVERLOADS(s32); | ^ ../src/particles.h:55:27: warning: extra ‘;’ [-Wpedantic] 55 | DECL_PARAM_OVERLOADS(f32); | ^ ../src/particles.h:56:27: warning: extra ‘;’ [-Wpedantic] 56 | DECL_PARAM_OVERLOADS(v2f); | ^ ../src/particles.h:57:27: warning: extra ‘;’ [-Wpedantic] 57 | DECL_PARAM_OVERLOADS(v3f); | ^ ../src/particles.h: In instantiation of ‘struct ParticleParamTypes::Parameter’: ../src/particles.h:245:5: required from ‘struct ParticleParamTypes::TweenedParameter >’ ../src/particles.h:351:41: required from here ../src/particles.h:89:9: warning: ‘struct ParticleParamTypes::Parameter’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 89 | struct Parameter | ^~~~~~~~~ ../src/particles.h: In instantiation of ‘struct ParticleParamTypes::Parameter, 2>’: ../src/particles.h:126:9: required from ‘struct ParticleParamTypes::VectorParameter, 2>’ ../src/particles.h:245:5: required from ‘struct ParticleParamTypes::TweenedParameter, 2> >’ ../src/particles.h:352:46: required from here ../src/particles.h:89:9: warning: ‘struct ParticleParamTypes::Parameter, 2>’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] ../src/particles.h: In instantiation of ‘struct ParticleParamTypes::VectorParameter, 2>’: ../src/particles.h:245:5: required from ‘struct ParticleParamTypes::TweenedParameter, 2> >’ ../src/particles.h:352:46: required from here ../src/particles.h:126:9: warning: base class ‘struct ParticleParamTypes::Parameter, 2>’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 126 | struct VectorParameter : public Parameter { | ^~~~~~~~~~~~~~~ ../src/particles.h:126:9: warning: ‘struct ParticleParamTypes::VectorParameter, 2>’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] ../src/particles.h: In instantiation of ‘struct ParticleParamTypes::Parameter, 3>’: ../src/particles.h:126:9: required from ‘struct ParticleParamTypes::VectorParameter, 3>’ ../src/particles.h:164:5: required from ‘struct ParticleParamTypes::RangedParameter, 3> >’ ../src/particles.h:399:31: required from here ../src/particles.h:89:9: warning: ‘struct ParticleParamTypes::Parameter, 3>’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 89 | struct Parameter | ^~~~~~~~~ ../src/particles.h: In instantiation of ‘struct ParticleParamTypes::VectorParameter, 3>’: ../src/particles.h:164:5: required from ‘struct ParticleParamTypes::RangedParameter, 3> >’ ../src/particles.h:399:31: required from here ../src/particles.h:126:9: warning: base class ‘struct ParticleParamTypes::Parameter, 3>’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 126 | struct VectorParameter : public Parameter { | ^~~~~~~~~~~~~~~ ../src/particles.h:126:9: warning: ‘struct ParticleParamTypes::VectorParameter, 3>’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] In file included from ../src/serverenvironment.h:22, from ../src/server.h:38, from ../src/emerge.cpp:44: ../src/activeobject.h:78:7: warning: ‘class ActiveObject’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 78 | class ActiveObject | ^~~~~~~~~~~~ In file included from ../src/server/activeobjectmgr.h:25, from ../src/serverenvironment.h:26, from ../src/server.h:38, from ../src/emerge.cpp:44: ../src/server/serveractiveobject.h:51:7: warning: base class ‘class ActiveObject’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 51 | class ServerActiveObject : public ActiveObject | ^~~~~~~~~~~~~~~~~~ In file included from ../src/server/activeobjectmgr.h:24, from ../src/serverenvironment.h:26, from ../src/server.h:38, from ../src/emerge.cpp:44: ../src/server/../activeobjectmgr.h: In instantiation of ‘class ActiveObjectMgr’: ../src/server/activeobjectmgr.h:29:34: required from here ../src/server/../activeobjectmgr.h:29:7: warning: ‘class ActiveObjectMgr’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 29 | class ActiveObjectMgr | ^~~~~~~~~~~~~~~ In file included from ../src/serverenvironment.h:26, from ../src/server.h:38, from ../src/emerge.cpp:44: ../src/server/activeobjectmgr.h:29:7: warning: base class ‘class ActiveObjectMgr’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 29 | class ActiveObjectMgr : public ::ActiveObjectMgr | ^~~~~~~~~~~~~~~ ../src/server/activeobjectmgr.h:29:7: warning: ‘class server::ActiveObjectMgr’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] In file included from ../src/emerge.cpp:44: ../src/server.h:155:28: warning: extra ‘;’ [-Wpedantic] 155 | DISABLE_CLASS_COPY(Server); | ^ | - ../src/server.h:137:7: warning: base class ‘class MapEventReceiver’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 137 | class Server : public con::PeerHandler, public MapEventReceiver, | ^~~~~~ ../src/server.h:137:7: warning: base class ‘class IGameDef’ has accessible non-virtual destructor [-Wnon-virtual-dtor] ../src/emerge.cpp: In constructor ‘EmergeParams::EmergeParams(EmergeManager*, const BiomeGen*, const BiomeManager*, const OreManager*, const DecorationManager*, const SchematicManager*)’: ../src/emerge.cpp:128:26: warning: declaration of ‘schemmgr’ shadows a member of ‘EmergeParams’ [-Wshadow] 128 | const SchematicManager *schemmgr) : | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~ In file included from ../src/emerge.cpp:22: ../src/emerge.h:115:20: note: shadowed declaration is here 115 | SchematicManager *schemmgr; | ^~~~~~~~ ../src/emerge.cpp:127:53: warning: declaration of ‘decomgr’ shadows a member of ‘EmergeParams’ [-Wshadow] 127 | const OreManager *oremgr, const DecorationManager *decomgr, | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ In file included from ../src/emerge.cpp:22: ../src/emerge.h:114:21: note: shadowed declaration is here 114 | DecorationManager *decomgr; | ^~~~~~~ ../src/emerge.cpp:127:20: warning: declaration of ‘oremgr’ shadows a member of ‘EmergeParams’ [-Wshadow] 127 | const OreManager *oremgr, const DecorationManager *decomgr, | ~~~~~~~~~~~~~~~~~~^~~~~~ In file included from ../src/emerge.cpp:22: ../src/emerge.h:113:14: note: shadowed declaration is here 113 | OreManager *oremgr; | ^~~~~~ ../src/emerge.cpp:126:22: warning: declaration of ‘biomemgr’ shadows a member of ‘EmergeParams’ [-Wshadow] 126 | const BiomeManager *biomemgr, | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~ In file included from ../src/emerge.cpp:22: ../src/emerge.h:112:16: note: shadowed declaration is here 112 | BiomeManager *biomemgr; | ^~~~~~~~ ../src/emerge.cpp:125:67: warning: declaration of ‘biomegen’ shadows a member of ‘EmergeParams’ [-Wshadow] 125 | EmergeParams::EmergeParams(EmergeManager *parent, const BiomeGen *biomegen, | ~~~~~~~~~~~~~~~~^~~~~~~~ In file included from ../src/emerge.cpp:22: ../src/emerge.h:111:12: note: shadowed declaration is here 111 | BiomeGen *biomegen; | ^~~~~~~~ ../src/emerge.cpp: In constructor ‘EmergeParams::EmergeParams(EmergeManager*, const BiomeGen*, const BiomeManager*, const OreManager*, const DecorationManager*, const SchematicManager*)’: ../src/emerge.cpp:128:26: warning: declaration of ‘schemmgr’ shadows a member of ‘EmergeParams’ [-Wshadow] 128 | const SchematicManager *schemmgr) : | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~ In file included from ../src/emerge.cpp:22: ../src/emerge.h:115:20: note: shadowed declaration is here 115 | SchematicManager *schemmgr; | ^~~~~~~~ ../src/emerge.cpp:127:53: warning: declaration of ‘decomgr’ shadows a member of ‘EmergeParams’ [-Wshadow] 127 | const OreManager *oremgr, const DecorationManager *decomgr, | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ In file included from ../src/emerge.cpp:22: ../src/emerge.h:114:21: note: shadowed declaration is here 114 | DecorationManager *decomgr; | ^~~~~~~ ../src/emerge.cpp:127:20: warning: declaration of ‘oremgr’ shadows a member of ‘EmergeParams’ [-Wshadow] 127 | const OreManager *oremgr, const DecorationManager *decomgr, | ~~~~~~~~~~~~~~~~~~^~~~~~ In file included from ../src/emerge.cpp:22: ../src/emerge.h:113:14: note: shadowed declaration is here 113 | OreManager *oremgr; | ^~~~~~ ../src/emerge.cpp:126:22: warning: declaration of ‘biomemgr’ shadows a member of ‘EmergeParams’ [-Wshadow] 126 | const BiomeManager *biomemgr, | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~ In file included from ../src/emerge.cpp:22: ../src/emerge.h:112:16: note: shadowed declaration is here 112 | BiomeManager *biomemgr; | ^~~~~~~~ ../src/emerge.cpp:125:67: warning: declaration of ‘biomegen’ shadows a member of ‘EmergeParams’ [-Wshadow] 125 | EmergeParams::EmergeParams(EmergeManager *parent, const BiomeGen *biomegen, | ~~~~~~~~~~~~~~~~^~~~~~~~ In file included from ../src/emerge.cpp:22: ../src/emerge.h:111:12: note: shadowed declaration is here 111 | BiomeGen *biomegen; | ^~~~~~~~ ../src/emerge.cpp: In constructor ‘EmergeParams::EmergeParams(EmergeManager*, const BiomeGen*, const BiomeManager*, const OreManager*, const DecorationManager*, const SchematicManager*)’: ../src/emerge.cpp:128:26: warning: declaration of ‘schemmgr’ shadows a member of ‘EmergeParams’ [-Wshadow] 128 | const SchematicManager *schemmgr) : | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~ In file included from ../src/emerge.cpp:22: ../src/emerge.h:115:20: note: shadowed declaration is here 115 | SchematicManager *schemmgr; | ^~~~~~~~ ../src/emerge.cpp:127:53: warning: declaration of ‘decomgr’ shadows a member of ‘EmergeParams’ [-Wshadow] 127 | const OreManager *oremgr, const DecorationManager *decomgr, | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ In file included from ../src/emerge.cpp:22: ../src/emerge.h:114:21: note: shadowed declaration is here 114 | DecorationManager *decomgr; | ^~~~~~~ ../src/emerge.cpp:127:20: warning: declaration of ‘oremgr’ shadows a member of ‘EmergeParams’ [-Wshadow] 127 | const OreManager *oremgr, const DecorationManager *decomgr, | ~~~~~~~~~~~~~~~~~~^~~~~~ In file included from ../src/emerge.cpp:22: ../src/emerge.h:113:14: note: shadowed declaration is here 113 | OreManager *oremgr; | ^~~~~~ ../src/emerge.cpp:126:22: warning: declaration of ‘biomemgr’ shadows a member of ‘EmergeParams’ [-Wshadow] 126 | const BiomeManager *biomemgr, | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~ In file included from ../src/emerge.cpp:22: ../src/emerge.h:112:16: note: shadowed declaration is here 112 | BiomeManager *biomemgr; | ^~~~~~~~ ../src/emerge.cpp:125:67: warning: declaration of ‘biomegen’ shadows a member of ‘EmergeParams’ [-Wshadow] 125 | EmergeParams::EmergeParams(EmergeManager *parent, const BiomeGen *biomegen, | ~~~~~~~~~~~~~~~~^~~~~~~~ In file included from ../src/emerge.cpp:22: ../src/emerge.h:111:12: note: shadowed declaration is here 111 | BiomeGen *biomegen; | ^~~~~~~~ [4/272] Building CXX object src/CMakeFiles/main.dir/network/clientopcodes.cpp.o FAILED: src/CMakeFiles/main.dir/network/clientopcodes.cpp.o /usr/bin/c++ -DUSE_CMAKE_CONFIG_H -D_IRR_STATIC_LIB_ -I../src -Isrc -I/usr/include/postgresql -I/usr/include/leveldb -I/usr/include/hiredis -I../src/script -I../src/util -isystem /usr/include/luajit-2.1 -isystem /usr/include/jsoncpp -isystem /home/mezhir/code/open_contrib/irrlicht/include -isystem /home/mezhir/code/open_contrib/irrlicht/source/Irrlicht -DNDEBUG -Wall -Wextra -Wno-unused-parameter -Wno-implicit-fallthrough -pipe -funroll-loops -O3 -fomit-frame-pointer -fno-math-errno -fno-trapping-math -ffinite-math-only -fno-signed-zeros -Wall -Wshadow -Wnon-virtual-dtor -pedantic -std=gnu++14 -MD -MT src/CMakeFiles/main.dir/network/clientopcodes.cpp.o -MF src/CMakeFiles/main.dir/network/clientopcodes.cpp.o.d -o src/CMakeFiles/main.dir/network/clientopcodes.cpp.o -c ../src/network/clientopcodes.cpp In file included from /home/mezhir/code/open_contrib/irrlicht/include/irrString.h:15, from ../src/util/string.h:23, from ../src/network/networkprotocol.h:22, from ../src/environment.h:38, from ../src/client/clientenvironment.h:22, from ../src/client/client.h:22, from ../src/network/clientopcodes.h:23, from ../src/network/clientopcodes.cpp:21: /usr/include/c++/10/cstring:77:11: error: ‘memchr’ has not been declared in ‘::’ 77 | using ::memchr; | ^~~~~~ /usr/include/c++/10/cstring:78:11: error: ‘memcmp’ has not been declared in ‘::’ 78 | using ::memcmp; | ^~~~~~ /usr/include/c++/10/cstring:79:11: error: ‘memcpy’ has not been declared in ‘::’ 79 | using ::memcpy; | ^~~~~~ /usr/include/c++/10/cstring:80:11: error: ‘memmove’ has not been declared in ‘::’ 80 | using ::memmove; | ^~~~~~~ /usr/include/c++/10/cstring:81:11: error: ‘memset’ has not been declared in ‘::’ 81 | using ::memset; | ^~~~~~ /usr/include/c++/10/cstring:82:11: error: ‘strcat’ has not been declared in ‘::’ 82 | using ::strcat; | ^~~~~~ /usr/include/c++/10/cstring:83:11: error: ‘strcmp’ has not been declared in ‘::’ 83 | using ::strcmp; | ^~~~~~ /usr/include/c++/10/cstring:84:11: error: ‘strcoll’ has not been declared in ‘::’ 84 | using ::strcoll; | ^~~~~~~ /usr/include/c++/10/cstring:85:11: error: ‘strcpy’ has not been declared in ‘::’ 85 | using ::strcpy; | ^~~~~~ /usr/include/c++/10/cstring:86:11: error: ‘strcspn’ has not been declared in ‘::’ 86 | using ::strcspn; | ^~~~~~~ /usr/include/c++/10/cstring:87:11: error: ‘strerror’ has not been declared in ‘::’ 87 | using ::strerror; | ^~~~~~~~ /usr/include/c++/10/cstring:88:11: error: ‘strlen’ has not been declared in ‘::’ 88 | using ::strlen; | ^~~~~~ /usr/include/c++/10/cstring:89:11: error: ‘strncat’ has not been declared in ‘::’ 89 | using ::strncat; | ^~~~~~~ /usr/include/c++/10/cstring:90:11: error: ‘strncmp’ has not been declared in ‘::’ 90 | using ::strncmp; | ^~~~~~~ /usr/include/c++/10/cstring:91:11: error: ‘strncpy’ has not been declared in ‘::’ 91 | using ::strncpy; | ^~~~~~~ /usr/include/c++/10/cstring:92:11: error: ‘strspn’ has not been declared in ‘::’ 92 | using ::strspn; | ^~~~~~ /usr/include/c++/10/cstring:93:11: error: ‘strtok’ has not been declared in ‘::’ 93 | using ::strtok; | ^~~~~~ /usr/include/c++/10/cstring:94:11: error: ‘strxfrm’ has not been declared in ‘::’ 94 | using ::strxfrm; | ^~~~~~~ /usr/include/c++/10/cstring:95:11: error: ‘strchr’ has not been declared in ‘::’ 95 | using ::strchr; | ^~~~~~ /usr/include/c++/10/cstring:96:11: error: ‘strpbrk’ has not been declared in ‘::’ 96 | using ::strpbrk; | ^~~~~~~ /usr/include/c++/10/cstring:97:11: error: ‘strrchr’ has not been declared in ‘::’ 97 | using ::strrchr; | ^~~~~~~ /usr/include/c++/10/cstring:98:11: error: ‘strstr’ has not been declared in ‘::’ 98 | using ::strstr; | ^~~~~~ In file included from ../src/util/string.h:23, from ../src/network/networkprotocol.h:22, from ../src/environment.h:38, from ../src/client/clientenvironment.h:22, from ../src/client/client.h:22, from ../src/network/clientopcodes.h:23, from ../src/network/clientopcodes.cpp:21: /home/mezhir/code/open_contrib/irrlicht/include/irrString.h: In function ‘size_t irr::core::multibyteToWString(irr::core::string&, const char*)’: /home/mezhir/code/open_contrib/irrlicht/include/irrString.h:1451:35: error: ‘strlen’ is not a member of ‘std’ 1451 | const u32 s = source ? (u32)std::strlen(source) : 0; | ^~~~~~ In file included from ../src/client/clientenvironment.h:22, from ../src/client/client.h:22, from ../src/network/clientopcodes.h:23, from ../src/network/clientopcodes.cpp:21: ../src/environment.h: At global scope: ../src/environment.h:52:33: warning: extra ‘;’ [-Wpedantic] 52 | DISABLE_CLASS_COPY(Environment); | ^ | - In file included from /home/mezhir/code/open_contrib/irrlicht/include/SMaterial.h:9, from /home/mezhir/code/open_contrib/irrlicht/include/ISceneNode.h:12, from /home/mezhir/code/open_contrib/irrlicht/include/IBoneSceneNode.h:8, from /home/mezhir/code/open_contrib/irrlicht/include/ISkinnedMesh.h:9, from /home/mezhir/code/open_contrib/irrlicht/include/ISceneManager.h:18, from ../src/client/clientenvironment.h:23, from ../src/client/client.h:22, from ../src/network/clientopcodes.h:23, from ../src/network/clientopcodes.cpp:21: /home/mezhir/code/open_contrib/irrlicht/include/matrix4.h: In copy constructor ‘irr::core::CMatrix4::CMatrix4(const irr::core::CMatrix4&, irr::core::CMatrix4::eConstructor)’: /home/mezhir/code/open_contrib/irrlicht/include/matrix4.h:507:11: error: ‘memset’ is not a member of ‘std’ 507 | std::memset(M, 0, 16*sizeof(T)); | ^~~~~~ /home/mezhir/code/open_contrib/irrlicht/include/matrix4.h:511:11: error: ‘memset’ is not a member of ‘std’ 511 | std::memset(M, 0, 16*sizeof(T)); | ^~~~~~ /home/mezhir/code/open_contrib/irrlicht/include/matrix4.h: In member function ‘irr::core::CMatrix4& irr::core::CMatrix4::makeIdentity()’: /home/mezhir/code/open_contrib/irrlicht/include/matrix4.h:1043:9: error: ‘memset’ is not a member of ‘std’ 1043 | std::memset(M, 0, 16*sizeof(T)); | ^~~~~~ In file included from ../src/irrlichttypes_extrabloated.h:26, from ../src/client/clientobject.h:22, from ../src/client/clientenvironment.h:24, from ../src/client/client.h:22, from ../src/network/clientopcodes.h:23, from ../src/network/clientopcodes.cpp:21: /home/mezhir/code/open_contrib/irrlicht/include/IImage.h: In member function ‘void irr::video::IImage::setMipMapsData(void*, bool, bool)’: /home/mezhir/code/open_contrib/irrlicht/include/IImage.h:315:6: error: ‘memcpy’ was not declared in this scope 315 | memcpy(MipMapsData, data, dataSize); | ^~~~~~ In file included from ../src/irrlichttypes_extrabloated.h:26, from ../src/client/clientobject.h:22, from ../src/client/clientenvironment.h:24, from ../src/client/client.h:22, from ../src/network/clientopcodes.h:23, from ../src/network/clientopcodes.cpp:21: /home/mezhir/code/open_contrib/irrlicht/include/IImage.h:1:1: note: ‘memcpy’ is defined in header ‘’; did you forget to ‘#include ’? +++ |+#include 1 | // Copyright (C) 2002-2012 Nikolaus Gebhardt In file included from ../src/client/clientobject.h:23, from ../src/client/clientenvironment.h:24, from ../src/client/client.h:22, from ../src/network/clientopcodes.h:23, from ../src/network/clientopcodes.cpp:21: ../src/activeobject.h: At global scope: ../src/activeobject.h:78:7: warning: ‘class ActiveObject’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 78 | class ActiveObject | ^~~~~~~~~~~~ In file included from ../src/client/clientenvironment.h:24, from ../src/client/client.h:22, from ../src/network/clientopcodes.h:23, from ../src/network/clientopcodes.cpp:21: ../src/client/clientobject.h:36:7: warning: base class ‘class ActiveObject’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 36 | class ClientActiveObject : public ActiveObject | ^~~~~~~~~~~~~~~~~~ In file included from ../src/client/activeobjectmgr.h:24, from ../src/client/clientenvironment.h:26, from ../src/client/client.h:22, from ../src/network/clientopcodes.h:23, from ../src/network/clientopcodes.cpp:21: ../src/client/../activeobjectmgr.h: In instantiation of ‘class ActiveObjectMgr’: ../src/client/activeobjectmgr.h:29:34: required from here ../src/client/../activeobjectmgr.h:29:7: warning: ‘class ActiveObjectMgr’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 29 | class ActiveObjectMgr | ^~~~~~~~~~~~~~~ In file included from ../src/client/clientenvironment.h:26, from ../src/client/client.h:22, from ../src/network/clientopcodes.h:23, from ../src/network/clientopcodes.cpp:21: ../src/client/activeobjectmgr.h:29:7: warning: base class ‘class ActiveObjectMgr’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 29 | class ActiveObjectMgr : public ::ActiveObjectMgr | ^~~~~~~~~~~~~~~ ../src/client/activeobjectmgr.h:29:7: warning: ‘class client::ActiveObjectMgr’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] In file included from ../src/client/client.h:30, from ../src/network/clientopcodes.h:23, from ../src/network/clientopcodes.cpp:21: ../src/gamedef.h:49:7: warning: ‘class IGameDef’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 49 | class IGameDef | ^~~~~~~~ In file included from ../src/debug.h:26, from ../src/util/serialize.h:24, from ../src/sound.h:24, from ../src/itemdef.h:28, from ../src/inventory.h:22, from ../src/inventorymanager.h:22, from ../src/client/client.h:31, from ../src/network/clientopcodes.h:23, from ../src/network/clientopcodes.cpp:21: ../src/log.h:103:7: warning: ‘class ILogOutput’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 103 | class ILogOutput { | ^~~~~~~~~~ ../src/log.h:111:7: warning: base class ‘class ILogOutput’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 111 | class ICombinedLogOutput : public ILogOutput { | ^~~~~~~~~~~~~~~~~~ ../src/log.h:111:7: warning: ‘class ICombinedLogOutput’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] ../src/log.h:121:7: warning: base class ‘class ICombinedLogOutput’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 121 | class StreamLogOutput : public ICombinedLogOutput { | ^~~~~~~~~~~~~~~ ../src/log.h:121:7: warning: ‘class StreamLogOutput’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] ../src/log.h:140:7: warning: base class ‘class ICombinedLogOutput’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 140 | class FileLogOutput : public ICombinedLogOutput { | ^~~~~~~~~~~~~ ../src/log.h:140:7: warning: ‘class FileLogOutput’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] ../src/log.h:153:7: warning: base class ‘class ICombinedLogOutput’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 153 | class LogOutputBuffer : public ICombinedLogOutput { | ^~~~~~~~~~~~~~~ ../src/log.h:216:7: warning: ‘class LogTarget’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 216 | class LogTarget { | ^~~~~~~~~ ../src/log.h:290:31: warning: extra ‘;’ [-Wpedantic] 290 | DISABLE_CLASS_COPY(LogStream); | ^ | - In file included from ../src/sound.h:24, from ../src/itemdef.h:28, from ../src/inventory.h:22, from ../src/inventorymanager.h:22, from ../src/client/client.h:31, from ../src/network/clientopcodes.h:23, from ../src/network/clientopcodes.cpp:21: ../src/util/serialize.h: In function ‘irr::u16 readU16(const u8*)’: ../src/util/serialize.h:73:2: error: ‘memcpy’ was not declared in this scope 73 | memcpy(&val, data, 2); | ^~~~~~ ../src/util/serialize.h:42:1: note: ‘memcpy’ is defined in header ‘’; did you forget to ‘#include ’? 41 | #include // for memcpy +++ |+#include 42 | #include ../src/util/serialize.h: In function ‘irr::u32 readU32(const u8*)’: ../src/util/serialize.h:80:2: error: ‘memcpy’ was not declared in this scope 80 | memcpy(&val, data, 4); | ^~~~~~ ../src/util/serialize.h:80:2: note: ‘memcpy’ is defined in header ‘’; did you forget to ‘#include ’? ../src/util/serialize.h: In function ‘irr::u64 readU64(const u8*)’: ../src/util/serialize.h:87:2: error: ‘memcpy’ was not declared in this scope 87 | memcpy(&val, data, 8); | ^~~~~~ ../src/util/serialize.h:87:2: note: ‘memcpy’ is defined in header ‘’; did you forget to ‘#include ’? ../src/util/serialize.h: In function ‘void writeU16(irr::u8*, irr::u16)’: ../src/util/serialize.h:94:2: error: ‘memcpy’ was not declared in this scope 94 | memcpy(data, &val, 2); | ^~~~~~ ../src/util/serialize.h:94:2: note: ‘memcpy’ is defined in header ‘’; did you forget to ‘#include ’? ../src/util/serialize.h: In function ‘void writeU32(irr::u8*, irr::u32)’: ../src/util/serialize.h:100:2: error: ‘memcpy’ was not declared in this scope 100 | memcpy(data, &val, 4); | ^~~~~~ ../src/util/serialize.h:100:2: note: ‘memcpy’ is defined in header ‘’; did you forget to ‘#include ’? ../src/util/serialize.h: In function ‘void writeU64(irr::u8*, irr::u64)’: ../src/util/serialize.h:106:2: error: ‘memcpy’ was not declared in this scope 106 | memcpy(data, &val, 8); | ^~~~~~ ../src/util/serialize.h:106:2: note: ‘memcpy’ is defined in header ‘’; did you forget to ‘#include ’? ../src/util/serialize.h: In function ‘irr::f32 readF32(const u8*)’: ../src/util/serialize.h:201:4: error: ‘memcpy’ was not declared in this scope 201 | memcpy(&f, &u, 4); | ^~~~~~ ../src/util/serialize.h:201:4: note: ‘memcpy’ is defined in header ‘’; did you forget to ‘#include ’? ../src/util/serialize.h: In function ‘void writeF32(irr::u8*, irr::f32)’: ../src/util/serialize.h:317:4: error: ‘memcpy’ was not declared in this scope 317 | memcpy(&u, &i, 4); | ^~~~~~ ../src/util/serialize.h:317:4: note: ‘memcpy’ is defined in header ‘’; did you forget to ‘#include ’? ../src/util/serialize.h: At global scope: ../src/util/serialize.h:400:41: warning: extra ‘;’ [-Wpedantic] 400 | MAKE_STREAM_READ_FXN(u8, U8, 1); | ^ ../src/util/serialize.h:401:41: warning: extra ‘;’ [-Wpedantic] 401 | MAKE_STREAM_READ_FXN(u16, U16, 2); | ^ ../src/util/serialize.h:402:41: warning: extra ‘;’ [-Wpedantic] 402 | MAKE_STREAM_READ_FXN(u32, U32, 4); | ^ ../src/util/serialize.h:403:41: warning: extra ‘;’ [-Wpedantic] 403 | MAKE_STREAM_READ_FXN(u64, U64, 8); | ^ ../src/util/serialize.h:404:41: warning: extra ‘;’ [-Wpedantic] 404 | MAKE_STREAM_READ_FXN(s8, S8, 1); | ^ ../src/util/serialize.h:405:41: warning: extra ‘;’ [-Wpedantic] 405 | MAKE_STREAM_READ_FXN(s16, S16, 2); | ^ ../src/util/serialize.h:406:41: warning: extra ‘;’ [-Wpedantic] 406 | MAKE_STREAM_READ_FXN(s32, S32, 4); | ^ ../src/util/serialize.h:407:41: warning: extra ‘;’ [-Wpedantic] 407 | MAKE_STREAM_READ_FXN(s64, S64, 8); | ^ ../src/util/serialize.h:408:41: warning: extra ‘;’ [-Wpedantic] 408 | MAKE_STREAM_READ_FXN(f32, F1000, 4); | ^ ../src/util/serialize.h:409:41: warning: extra ‘;’ [-Wpedantic] 409 | MAKE_STREAM_READ_FXN(f32, F32, 4); | ^ ../src/util/serialize.h:410:41: warning: extra ‘;’ [-Wpedantic] 410 | MAKE_STREAM_READ_FXN(v2s16, V2S16, 4); | ^ ../src/util/serialize.h:411:41: warning: extra ‘;’ [-Wpedantic] 411 | MAKE_STREAM_READ_FXN(v3s16, V3S16, 6); | ^ ../src/util/serialize.h:412:41: warning: extra ‘;’ [-Wpedantic] 412 | MAKE_STREAM_READ_FXN(v2s32, V2S32, 8); | ^ ../src/util/serialize.h:413:41: warning: extra ‘;’ [-Wpedantic] 413 | MAKE_STREAM_READ_FXN(v3s32, V3S32, 12); | ^ ../src/util/serialize.h:414:41: warning: extra ‘;’ [-Wpedantic] 414 | MAKE_STREAM_READ_FXN(v3f, V3F1000, 12); | ^ ../src/util/serialize.h:415:41: warning: extra ‘;’ [-Wpedantic] 415 | MAKE_STREAM_READ_FXN(v2f, V2F32, 8); | ^ ../src/util/serialize.h:416:41: warning: extra ‘;’ [-Wpedantic] 416 | MAKE_STREAM_READ_FXN(v3f, V3F32, 12); | ^ ../src/util/serialize.h:417:46: warning: extra ‘;’ [-Wpedantic] 417 | MAKE_STREAM_READ_FXN(video::SColor, ARGB8, 4); | ^ ../src/util/serialize.h:419:42: warning: extra ‘;’ [-Wpedantic] 419 | MAKE_STREAM_WRITE_FXN(u8, U8, 1); | ^ ../src/util/serialize.h:420:42: warning: extra ‘;’ [-Wpedantic] 420 | MAKE_STREAM_WRITE_FXN(u16, U16, 2); | ^ ../src/util/serialize.h:421:42: warning: extra ‘;’ [-Wpedantic] 421 | MAKE_STREAM_WRITE_FXN(u32, U32, 4); | ^ ../src/util/serialize.h:422:42: warning: extra ‘;’ [-Wpedantic] 422 | MAKE_STREAM_WRITE_FXN(u64, U64, 8); | ^ ../src/util/serialize.h:423:42: warning: extra ‘;’ [-Wpedantic] 423 | MAKE_STREAM_WRITE_FXN(s8, S8, 1); | ^ ../src/util/serialize.h:424:42: warning: extra ‘;’ [-Wpedantic] 424 | MAKE_STREAM_WRITE_FXN(s16, S16, 2); | ^ ../src/util/serialize.h:425:42: warning: extra ‘;’ [-Wpedantic] 425 | MAKE_STREAM_WRITE_FXN(s32, S32, 4); | ^ ../src/util/serialize.h:426:42: warning: extra ‘;’ [-Wpedantic] 426 | MAKE_STREAM_WRITE_FXN(s64, S64, 8); | ^ ../src/util/serialize.h:427:42: warning: extra ‘;’ [-Wpedantic] 427 | MAKE_STREAM_WRITE_FXN(f32, F1000, 4); | ^ ../src/util/serialize.h:428:42: warning: extra ‘;’ [-Wpedantic] 428 | MAKE_STREAM_WRITE_FXN(f32, F32, 4); | ^ ../src/util/serialize.h:429:42: warning: extra ‘;’ [-Wpedantic] 429 | MAKE_STREAM_WRITE_FXN(v2s16, V2S16, 4); | ^ ../src/util/serialize.h:430:42: warning: extra ‘;’ [-Wpedantic] 430 | MAKE_STREAM_WRITE_FXN(v3s16, V3S16, 6); | ^ ../src/util/serialize.h:431:42: warning: extra ‘;’ [-Wpedantic] 431 | MAKE_STREAM_WRITE_FXN(v2s32, V2S32, 8); | ^ ../src/util/serialize.h:432:42: warning: extra ‘;’ [-Wpedantic] 432 | MAKE_STREAM_WRITE_FXN(v3s32, V3S32, 12); | ^ ../src/util/serialize.h:433:42: warning: extra ‘;’ [-Wpedantic] 433 | MAKE_STREAM_WRITE_FXN(v3f, V3F1000, 12); | ^ ../src/util/serialize.h:434:42: warning: extra ‘;’ [-Wpedantic] 434 | MAKE_STREAM_WRITE_FXN(v2f, V2F32, 8); | ^ ../src/util/serialize.h:435:42: warning: extra ‘;’ [-Wpedantic] 435 | MAKE_STREAM_WRITE_FXN(v3f, V3F32, 12); | ^ ../src/util/serialize.h:436:47: warning: extra ‘;’ [-Wpedantic] 436 | MAKE_STREAM_WRITE_FXN(video::SColor, ARGB8, 4); | ^ In file included from ../src/itemdef.h:28, from ../src/inventory.h:22, from ../src/inventorymanager.h:22, from ../src/client/client.h:31, from ../src/network/clientopcodes.h:23, from ../src/network/clientopcodes.cpp:21: ../src/sound.h: In constructor ‘SimpleSoundSpec::SimpleSoundSpec(const string&, float, bool, float, float)’: ../src/sound.h:33:48: warning: declaration of ‘pitch’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~~^~~~~~~~~~~~ ../src/sound.h:59:8: note: shadowed declaration is here 59 | float pitch = 1.0f; | ^~~~~ ../src/sound.h:33:29: warning: declaration of ‘fade’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~~^~~~~~~~~~~ ../src/sound.h:58:8: note: shadowed declaration is here 58 | float fade = 0.0f; | ^~~~ ../src/sound.h:33:9: warning: declaration of ‘loop’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~^~~~~~~~~~~~ ../src/sound.h:60:7: note: shadowed declaration is here 60 | bool loop = false; | ^~~~ ../src/sound.h:32:54: warning: declaration of ‘gain’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 32 | SimpleSoundSpec(const std::string &name = "", float gain = 1.0f, | ~~~~~~^~~~~~~~~~~ ../src/sound.h:57:8: note: shadowed declaration is here 57 | float gain = 1.0f; | ^~~~ ../src/sound.h:32:37: warning: declaration of ‘name’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 32 | SimpleSoundSpec(const std::string &name = "", float gain = 1.0f, | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/sound.h:56:14: note: shadowed declaration is here 56 | std::string name; | ^~~~ ../src/sound.h: In constructor ‘SimpleSoundSpec::SimpleSoundSpec(const string&, float, bool, float, float)’: ../src/sound.h:33:48: warning: declaration of ‘pitch’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~~^~~~~~~~~~~~ ../src/sound.h:59:8: note: shadowed declaration is here 59 | float pitch = 1.0f; | ^~~~~ ../src/sound.h:33:29: warning: declaration of ‘fade’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~~^~~~~~~~~~~ ../src/sound.h:58:8: note: shadowed declaration is here 58 | float fade = 0.0f; | ^~~~ ../src/sound.h:33:9: warning: declaration of ‘loop’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~^~~~~~~~~~~~ ../src/sound.h:60:7: note: shadowed declaration is here 60 | bool loop = false; | ^~~~ ../src/sound.h:32:54: warning: declaration of ‘gain’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 32 | SimpleSoundSpec(const std::string &name = "", float gain = 1.0f, | ~~~~~~^~~~~~~~~~~ ../src/sound.h:57:8: note: shadowed declaration is here 57 | float gain = 1.0f; | ^~~~ ../src/sound.h:32:37: warning: declaration of ‘name’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 32 | SimpleSoundSpec(const std::string &name = "", float gain = 1.0f, | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/sound.h:56:14: note: shadowed declaration is here 56 | std::string name; | ^~~~ ../src/sound.h: In constructor ‘SimpleSoundSpec::SimpleSoundSpec(const string&, float, bool, float, float)’: ../src/sound.h:33:48: warning: declaration of ‘pitch’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~~^~~~~~~~~~~~ ../src/sound.h:59:8: note: shadowed declaration is here 59 | float pitch = 1.0f; | ^~~~~ ../src/sound.h:33:29: warning: declaration of ‘fade’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~~^~~~~~~~~~~ ../src/sound.h:58:8: note: shadowed declaration is here 58 | float fade = 0.0f; | ^~~~ ../src/sound.h:33:9: warning: declaration of ‘loop’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~^~~~~~~~~~~~ ../src/sound.h:60:7: note: shadowed declaration is here 60 | bool loop = false; | ^~~~ ../src/sound.h:32:54: warning: declaration of ‘gain’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 32 | SimpleSoundSpec(const std::string &name = "", float gain = 1.0f, | ~~~~~~^~~~~~~~~~~ ../src/sound.h:57:8: note: shadowed declaration is here 57 | float gain = 1.0f; | ^~~~ ../src/sound.h:32:37: warning: declaration of ‘name’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 32 | SimpleSoundSpec(const std::string &name = "", float gain = 1.0f, | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/sound.h:56:14: note: shadowed declaration is here 56 | std::string name; | ^~~~ In file included from /usr/include/jsoncpp/json/config.h:102, from /usr/include/jsoncpp/json/json.h:9, from ../src/tool.h:26, from ../src/itemstackmetadata.h:23, from ../src/inventory.h:24, from ../src/inventorymanager.h:22, from ../src/client/client.h:31, from ../src/network/clientopcodes.h:23, from ../src/network/clientopcodes.cpp:21: /usr/include/jsoncpp/json/allocator.h: In member function ‘void Json::SecureAllocator::deallocate(Json::SecureAllocator::pointer, Json::SecureAllocator::size_type)’: /usr/include/jsoncpp/json/allocator.h:42:10: error: ‘memset’ is not a member of ‘std’ 42 | std::memset(p, 0, n * sizeof(T)); | ^~~~~~ In file included from /usr/include/jsoncpp/json/reader.h:11, from /usr/include/jsoncpp/json/json.h:11, from ../src/tool.h:26, from ../src/itemstackmetadata.h:23, from ../src/inventory.h:24, from ../src/inventorymanager.h:22, from ../src/client/client.h:31, from ../src/network/clientopcodes.h:23, from ../src/network/clientopcodes.cpp:21: /usr/include/jsoncpp/json/value.h: In member function ‘void Json::Value::setComment(const char*, Json::CommentPlacement)’: /usr/include/jsoncpp/json/value.h:567:32: error: ‘strlen’ was not declared in this scope 567 | setComment(String(comment, strlen(comment)), placement); | ^~~~~~ /usr/include/jsoncpp/json/value.h:1:1: note: ‘strlen’ is defined in header ‘’; did you forget to ‘#include ’? +++ |+#include 1 | // Copyright 2007-2010 Baptiste Lepilleur and The JsonCpp Authors In file included from ../src/client/client.h:31, from ../src/network/clientopcodes.h:23, from ../src/network/clientopcodes.cpp:21: ../src/inventorymanager.h: At global scope: ../src/inventorymanager.h:134:39: warning: extra ‘;’ [-Wpedantic] 134 | virtual ~InventoryAction() = default;; | ^ | - In file included from ../src/client/localplayer.h:22, from ../src/client/client.h:32, from ../src/network/clientopcodes.h:23, from ../src/network/clientopcodes.cpp:21: ../src/player.h:129:28: warning: extra ‘;’ [-Wpedantic] 129 | DISABLE_CLASS_COPY(Player); | ^ | - In file included from ../src/client/../mapnode.h:24, from ../src/client/../particles.h:29, from ../src/client/particles.h:26, from ../src/client/client.h:34, from ../src/network/clientopcodes.h:23, from ../src/network/clientopcodes.cpp:21: ../src/client/../util/pointer.h: In constructor ‘ConstSharedPtr::ConstSharedPtr(T*)’: ../src/client/../util/pointer.h:30:20: warning: declaration of ‘ptr’ shadows a member of ‘ConstSharedPtr’ [-Wshadow] 30 | ConstSharedPtr(T *ptr) : ptr(ptr) {} | ~~~^~~ ../src/client/../util/pointer.h:38:21: note: shadowed declaration is here 38 | std::shared_ptr ptr; | ^~~ ../src/client/../util/pointer.h: In constructor ‘ConstSharedPtr::ConstSharedPtr(const std::shared_ptr<_Tp>&)’: ../src/client/../util/pointer.h:31:43: warning: declaration of ‘ptr’ shadows a member of ‘ConstSharedPtr’ [-Wshadow] 31 | ConstSharedPtr(const std::shared_ptr &ptr) : ptr(ptr) {} | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ ../src/client/../util/pointer.h:38:21: note: shadowed declaration is here 38 | std::shared_ptr ptr; | ^~~ ../src/client/../util/pointer.h: In constructor ‘SharedBuffer::SharedBuffer(unsigned int)’: ../src/client/../util/pointer.h:171:22: error: ‘memset’ is not a member of ‘std’ 171 | std::memset(data,0,sizeof(T)*m_size); | ^~~~~~ In file included from ../src/client/particles.h:26, from ../src/client/client.h:34, from ../src/network/clientopcodes.h:23, from ../src/network/clientopcodes.cpp:21: ../src/client/../particles.h: At global scope: ../src/client/../particles.h:52:26: warning: extra ‘;’ [-Wpedantic] 52 | DECL_PARAM_OVERLOADS(u8); DECL_PARAM_OVERLOADS(s8); | ^ ../src/client/../particles.h:52:53: warning: extra ‘;’ [-Wpedantic] 52 | DECL_PARAM_OVERLOADS(u8); DECL_PARAM_OVERLOADS(s8); | ^ ../src/client/../particles.h:53:27: warning: extra ‘;’ [-Wpedantic] 53 | DECL_PARAM_OVERLOADS(u16); DECL_PARAM_OVERLOADS(s16); | ^ ../src/client/../particles.h:53:54: warning: extra ‘;’ [-Wpedantic] 53 | DECL_PARAM_OVERLOADS(u16); DECL_PARAM_OVERLOADS(s16); | ^ ../src/client/../particles.h:54:27: warning: extra ‘;’ [-Wpedantic] 54 | DECL_PARAM_OVERLOADS(u32); DECL_PARAM_OVERLOADS(s32); | ^ ../src/client/../particles.h:54:54: warning: extra ‘;’ [-Wpedantic] 54 | DECL_PARAM_OVERLOADS(u32); DECL_PARAM_OVERLOADS(s32); | ^ ../src/client/../particles.h:55:27: warning: extra ‘;’ [-Wpedantic] 55 | DECL_PARAM_OVERLOADS(f32); | ^ ../src/client/../particles.h:56:27: warning: extra ‘;’ [-Wpedantic] 56 | DECL_PARAM_OVERLOADS(v2f); | ^ ../src/client/../particles.h:57:27: warning: extra ‘;’ [-Wpedantic] 57 | DECL_PARAM_OVERLOADS(v3f); | ^ ../src/client/../particles.h: In instantiation of ‘struct ParticleParamTypes::Parameter’: ../src/client/../particles.h:245:5: required from ‘struct ParticleParamTypes::TweenedParameter >’ ../src/client/../particles.h:351:41: required from here ../src/client/../particles.h:89:9: warning: ‘struct ParticleParamTypes::Parameter’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 89 | struct Parameter | ^~~~~~~~~ ../src/client/../particles.h: In instantiation of ‘struct ParticleParamTypes::Parameter, 2>’: ../src/client/../particles.h:126:9: required from ‘struct ParticleParamTypes::VectorParameter, 2>’ ../src/client/../particles.h:245:5: required from ‘struct ParticleParamTypes::TweenedParameter, 2> >’ ../src/client/../particles.h:352:46: required from here ../src/client/../particles.h:89:9: warning: ‘struct ParticleParamTypes::Parameter, 2>’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] ../src/client/../particles.h: In instantiation of ‘struct ParticleParamTypes::VectorParameter, 2>’: ../src/client/../particles.h:245:5: required from ‘struct ParticleParamTypes::TweenedParameter, 2> >’ ../src/client/../particles.h:352:46: required from here ../src/client/../particles.h:126:9: warning: base class ‘struct ParticleParamTypes::Parameter, 2>’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 126 | struct VectorParameter : public Parameter { | ^~~~~~~~~~~~~~~ ../src/client/../particles.h:126:9: warning: ‘struct ParticleParamTypes::VectorParameter, 2>’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] ../src/client/../particles.h: In instantiation of ‘struct ParticleParamTypes::Parameter, 3>’: ../src/client/../particles.h:126:9: required from ‘struct ParticleParamTypes::VectorParameter, 3>’ ../src/client/../particles.h:164:5: required from ‘struct ParticleParamTypes::RangedParameter, 3> >’ ../src/client/../particles.h:399:31: required from here ../src/client/../particles.h:89:9: warning: ‘struct ParticleParamTypes::Parameter, 3>’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 89 | struct Parameter | ^~~~~~~~~ ../src/client/../particles.h: In instantiation of ‘struct ParticleParamTypes::VectorParameter, 3>’: ../src/client/../particles.h:164:5: required from ‘struct ParticleParamTypes::RangedParameter, 3> >’ ../src/client/../particles.h:399:31: required from here ../src/client/../particles.h:126:9: warning: base class ‘struct ParticleParamTypes::Parameter, 3>’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 126 | struct VectorParameter : public Parameter { | ^~~~~~~~~~~~~~~ ../src/client/../particles.h:126:9: warning: ‘struct ParticleParamTypes::VectorParameter, 3>’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] In file included from ../src/client/mesh_generator_thread.h:24, from ../src/client/client.h:37, from ../src/network/clientopcodes.h:23, from ../src/network/clientopcodes.cpp:21: ../src/client/mapblock_mesh.h: In constructor ‘MapBlockBspTree::TreeNode::TreeNode(v3f, v3f, const std::vector&, irr::s32, irr::s32)’: ../src/client/mapblock_mesh.h:129:94: warning: declaration of ‘back_ref’ shadows a member of ‘MapBlockBspTree::TreeNode’ [-Wshadow] 129 | TreeNode(v3f normal, v3f origin, const std::vector &triangle_refs, s32 front_ref, s32 back_ref) : | ~~~~^~~~~~~~ ../src/client/mapblock_mesh.h:126:7: note: shadowed declaration is here 126 | s32 back_ref; | ^~~~~~~~ ../src/client/mapblock_mesh.h:129:79: warning: declaration of ‘front_ref’ shadows a member of ‘MapBlockBspTree::TreeNode’ [-Wshadow] 129 | TreeNode(v3f normal, v3f origin, const std::vector &triangle_refs, s32 front_ref, s32 back_ref) : | ~~~~^~~~~~~~~ ../src/client/mapblock_mesh.h:125:7: note: shadowed declaration is here 125 | s32 front_ref; | ^~~~~~~~~ ../src/client/mapblock_mesh.h:129:60: warning: declaration of ‘triangle_refs’ shadows a member of ‘MapBlockBspTree::TreeNode’ [-Wshadow] 129 | TreeNode(v3f normal, v3f origin, const std::vector &triangle_refs, s32 front_ref, s32 back_ref) : | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ ../src/client/mapblock_mesh.h:124:20: note: shadowed declaration is here 124 | std::vector triangle_refs; | ^~~~~~~~~~~~~ ../src/client/mapblock_mesh.h:129:28: warning: declaration of ‘origin’ shadows a member of ‘MapBlockBspTree::TreeNode’ [-Wshadow] 129 | TreeNode(v3f normal, v3f origin, const std::vector &triangle_refs, s32 front_ref, s32 back_ref) : | ~~~~^~~~~~ ../src/client/mapblock_mesh.h:123:7: note: shadowed declaration is here 123 | v3f origin; | ^~~~~~ ../src/client/mapblock_mesh.h:129:16: warning: declaration of ‘normal’ shadows a member of ‘MapBlockBspTree::TreeNode’ [-Wshadow] 129 | TreeNode(v3f normal, v3f origin, const std::vector &triangle_refs, s32 front_ref, s32 back_ref) : | ~~~~^~~~~~ ../src/client/mapblock_mesh.h:122:7: note: shadowed declaration is here 122 | v3f normal; | ^~~~~~ ../src/client/mapblock_mesh.h: In constructor ‘MapBlockBspTree::TreeNode::TreeNode(v3f, v3f, const std::vector&, irr::s32, irr::s32)’: ../src/client/mapblock_mesh.h:129:94: warning: declaration of ‘back_ref’ shadows a member of ‘MapBlockBspTree::TreeNode’ [-Wshadow] 129 | TreeNode(v3f normal, v3f origin, const std::vector &triangle_refs, s32 front_ref, s32 back_ref) : | ~~~~^~~~~~~~ ../src/client/mapblock_mesh.h:126:7: note: shadowed declaration is here 126 | s32 back_ref; | ^~~~~~~~ ../src/client/mapblock_mesh.h:129:79: warning: declaration of ‘front_ref’ shadows a member of ‘MapBlockBspTree::TreeNode’ [-Wshadow] 129 | TreeNode(v3f normal, v3f origin, const std::vector &triangle_refs, s32 front_ref, s32 back_ref) : | ~~~~^~~~~~~~~ ../src/client/mapblock_mesh.h:125:7: note: shadowed declaration is here 125 | s32 front_ref; | ^~~~~~~~~ ../src/client/mapblock_mesh.h:129:60: warning: declaration of ‘triangle_refs’ shadows a member of ‘MapBlockBspTree::TreeNode’ [-Wshadow] 129 | TreeNode(v3f normal, v3f origin, const std::vector &triangle_refs, s32 front_ref, s32 back_ref) : | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ ../src/client/mapblock_mesh.h:124:20: note: shadowed declaration is here 124 | std::vector triangle_refs; | ^~~~~~~~~~~~~ ../src/client/mapblock_mesh.h:129:28: warning: declaration of ‘origin’ shadows a member of ‘MapBlockBspTree::TreeNode’ [-Wshadow] 129 | TreeNode(v3f normal, v3f origin, const std::vector &triangle_refs, s32 front_ref, s32 back_ref) : | ~~~~^~~~~~ ../src/client/mapblock_mesh.h:123:7: note: shadowed declaration is here 123 | v3f origin; | ^~~~~~ ../src/client/mapblock_mesh.h:129:16: warning: declaration of ‘normal’ shadows a member of ‘MapBlockBspTree::TreeNode’ [-Wshadow] 129 | TreeNode(v3f normal, v3f origin, const std::vector &triangle_refs, s32 front_ref, s32 back_ref) : | ~~~~^~~~~~ ../src/client/mapblock_mesh.h:122:7: note: shadowed declaration is here 122 | v3f normal; | ^~~~~~ ../src/client/mapblock_mesh.h: In constructor ‘MapBlockBspTree::TreeNode::TreeNode(v3f, v3f, const std::vector&, irr::s32, irr::s32)’: ../src/client/mapblock_mesh.h:129:94: warning: declaration of ‘back_ref’ shadows a member of ‘MapBlockBspTree::TreeNode’ [-Wshadow] 129 | TreeNode(v3f normal, v3f origin, const std::vector &triangle_refs, s32 front_ref, s32 back_ref) : | ~~~~^~~~~~~~ ../src/client/mapblock_mesh.h:126:7: note: shadowed declaration is here 126 | s32 back_ref; | ^~~~~~~~ ../src/client/mapblock_mesh.h:129:79: warning: declaration of ‘front_ref’ shadows a member of ‘MapBlockBspTree::TreeNode’ [-Wshadow] 129 | TreeNode(v3f normal, v3f origin, const std::vector &triangle_refs, s32 front_ref, s32 back_ref) : | ~~~~^~~~~~~~~ ../src/client/mapblock_mesh.h:125:7: note: shadowed declaration is here 125 | s32 front_ref; | ^~~~~~~~~ ../src/client/mapblock_mesh.h:129:60: warning: declaration of ‘triangle_refs’ shadows a member of ‘MapBlockBspTree::TreeNode’ [-Wshadow] 129 | TreeNode(v3f normal, v3f origin, const std::vector &triangle_refs, s32 front_ref, s32 back_ref) : | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ ../src/client/mapblock_mesh.h:124:20: note: shadowed declaration is here 124 | std::vector triangle_refs; | ^~~~~~~~~~~~~ ../src/client/mapblock_mesh.h:129:28: warning: declaration of ‘origin’ shadows a member of ‘MapBlockBspTree::TreeNode’ [-Wshadow] 129 | TreeNode(v3f normal, v3f origin, const std::vector &triangle_refs, s32 front_ref, s32 back_ref) : | ~~~~^~~~~~ ../src/client/mapblock_mesh.h:123:7: note: shadowed declaration is here 123 | v3f origin; | ^~~~~~ ../src/client/mapblock_mesh.h:129:16: warning: declaration of ‘normal’ shadows a member of ‘MapBlockBspTree::TreeNode’ [-Wshadow] 129 | TreeNode(v3f normal, v3f origin, const std::vector &triangle_refs, s32 front_ref, s32 back_ref) : | ~~~~^~~~~~ ../src/client/mapblock_mesh.h:122:7: note: shadowed declaration is here 122 | v3f normal; | ^~~~~~ In file included from ../src/util/container.h:25, from ../src/util/thread.h:27, from ../src/client/mesh_generator_thread.h:26, from ../src/client/client.h:37, from ../src/network/clientopcodes.h:23, from ../src/network/clientopcodes.cpp:21: ../src/threading/semaphore.h: At global scope: ../src/threading/semaphore.h:38:31: warning: extra ‘;’ [-Wpedantic] 38 | DISABLE_CLASS_COPY(Semaphore); | ^ | - In file included from ../src/client/client.h:38, from ../src/network/clientopcodes.h:23, from ../src/network/clientopcodes.cpp:21: ../src/network/address.h: In constructor ‘IPv6AddressBytes::IPv6AddressBytes()’: ../src/network/address.h:42:23: error: ‘memset’ was not declared in this scope 42 | IPv6AddressBytes() { memset(bytes, 0, 16); } | ^~~~~~ ../src/network/address.h:38:1: note: ‘memset’ is defined in header ‘’; did you forget to ‘#include ’? 37 | #include "networkexceptions.h" +++ |+#include 38 | In file included from ../src/gameparams.h:23, from ../src/client/client.h:40, from ../src/network/clientopcodes.h:23, from ../src/network/clientopcodes.cpp:21: ../src/content/subgames.h: In constructor ‘SubgameSpec::SubgameSpec(const string&, const string&, const string&, const std::unordered_map, std::__cxx11::basic_string >&, const string&, const string&, const string&, int)’: ../src/content/subgames.h:52:40: warning: declaration of ‘release’ shadows a member of ‘SubgameSpec’ [-Wshadow] 52 | const std::string &author = "", int release = 0) : | ~~~~^~~~~~~~~~~ ../src/content/subgames.h:34:6: note: shadowed declaration is here 34 | int release; | ^~~~~~~ ../src/content/subgames.h:52:23: warning: declaration of ‘author’ shadows a member of ‘SubgameSpec’ [-Wshadow] 52 | const std::string &author = "", int release = 0) : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../src/content/subgames.h:33:14: note: shadowed declaration is here 33 | std::string author; | ^~~~~~ ../src/content/subgames.h:51:23: warning: declaration of ‘menuicon_path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 51 | const std::string &menuicon_path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:42:14: note: shadowed declaration is here 42 | std::string menuicon_path; | ^~~~~~~~~~~~~ ../src/content/subgames.h:50:23: warning: declaration of ‘title’ shadows a member of ‘SubgameSpec’ [-Wshadow] 50 | const std::string &title = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ ../src/content/subgames.h:32:14: note: shadowed declaration is here 32 | std::string title; | ^~~~~ ../src/content/subgames.h:49:56: warning: declaration of ‘addon_mods_paths’ shadows a member of ‘SubgameSpec’ [-Wshadow] 49 | const std::unordered_map &addon_mods_paths = {}, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:41:47: note: shadowed declaration is here 41 | std::unordered_map addon_mods_paths; | ^~~~~~~~~~~~~~~~ ../src/content/subgames.h:48:23: warning: declaration of ‘gamemods_path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 48 | const std::string &gamemods_path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:36:14: note: shadowed declaration is here 36 | std::string gamemods_path; | ^~~~~~~~~~~~~ ../src/content/subgames.h:47:61: warning: declaration of ‘path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 47 | SubgameSpec(const std::string &id = "", const std::string &path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:35:14: note: shadowed declaration is here 35 | std::string path; | ^~~~ ../src/content/subgames.h:47:33: warning: declaration of ‘id’ shadows a member of ‘SubgameSpec’ [-Wshadow] 47 | SubgameSpec(const std::string &id = "", const std::string &path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~ ../src/content/subgames.h:31:14: note: shadowed declaration is here 31 | std::string id; | ^~ ../src/content/subgames.h: In constructor ‘SubgameSpec::SubgameSpec(const string&, const string&, const string&, const std::unordered_map, std::__cxx11::basic_string >&, const string&, const string&, const string&, int)’: ../src/content/subgames.h:52:40: warning: declaration of ‘release’ shadows a member of ‘SubgameSpec’ [-Wshadow] 52 | const std::string &author = "", int release = 0) : | ~~~~^~~~~~~~~~~ ../src/content/subgames.h:34:6: note: shadowed declaration is here 34 | int release; | ^~~~~~~ ../src/content/subgames.h:52:23: warning: declaration of ‘author’ shadows a member of ‘SubgameSpec’ [-Wshadow] 52 | const std::string &author = "", int release = 0) : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../src/content/subgames.h:33:14: note: shadowed declaration is here 33 | std::string author; | ^~~~~~ ../src/content/subgames.h:51:23: warning: declaration of ‘menuicon_path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 51 | const std::string &menuicon_path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:42:14: note: shadowed declaration is here 42 | std::string menuicon_path; | ^~~~~~~~~~~~~ ../src/content/subgames.h:50:23: warning: declaration of ‘title’ shadows a member of ‘SubgameSpec’ [-Wshadow] 50 | const std::string &title = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ ../src/content/subgames.h:32:14: note: shadowed declaration is here 32 | std::string title; | ^~~~~ ../src/content/subgames.h:49:56: warning: declaration of ‘addon_mods_paths’ shadows a member of ‘SubgameSpec’ [-Wshadow] 49 | const std::unordered_map &addon_mods_paths = {}, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:41:47: note: shadowed declaration is here 41 | std::unordered_map addon_mods_paths; | ^~~~~~~~~~~~~~~~ ../src/content/subgames.h:48:23: warning: declaration of ‘gamemods_path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 48 | const std::string &gamemods_path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:36:14: note: shadowed declaration is here 36 | std::string gamemods_path; | ^~~~~~~~~~~~~ ../src/content/subgames.h:47:61: warning: declaration of ‘path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 47 | SubgameSpec(const std::string &id = "", const std::string &path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:35:14: note: shadowed declaration is here 35 | std::string path; | ^~~~ ../src/content/subgames.h:47:33: warning: declaration of ‘id’ shadows a member of ‘SubgameSpec’ [-Wshadow] 47 | SubgameSpec(const std::string &id = "", const std::string &path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~ ../src/content/subgames.h:31:14: note: shadowed declaration is here 31 | std::string id; | ^~ ../src/content/subgames.h: In constructor ‘SubgameSpec::SubgameSpec(const string&, const string&, const string&, const std::unordered_map, std::__cxx11::basic_string >&, const string&, const string&, const string&, int)’: ../src/content/subgames.h:52:40: warning: declaration of ‘release’ shadows a member of ‘SubgameSpec’ [-Wshadow] 52 | const std::string &author = "", int release = 0) : | ~~~~^~~~~~~~~~~ ../src/content/subgames.h:34:6: note: shadowed declaration is here 34 | int release; | ^~~~~~~ ../src/content/subgames.h:52:23: warning: declaration of ‘author’ shadows a member of ‘SubgameSpec’ [-Wshadow] 52 | const std::string &author = "", int release = 0) : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../src/content/subgames.h:33:14: note: shadowed declaration is here 33 | std::string author; | ^~~~~~ ../src/content/subgames.h:51:23: warning: declaration of ‘menuicon_path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 51 | const std::string &menuicon_path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:42:14: note: shadowed declaration is here 42 | std::string menuicon_path; | ^~~~~~~~~~~~~ ../src/content/subgames.h:50:23: warning: declaration of ‘title’ shadows a member of ‘SubgameSpec’ [-Wshadow] 50 | const std::string &title = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ ../src/content/subgames.h:32:14: note: shadowed declaration is here 32 | std::string title; | ^~~~~ ../src/content/subgames.h:49:56: warning: declaration of ‘addon_mods_paths’ shadows a member of ‘SubgameSpec’ [-Wshadow] 49 | const std::unordered_map &addon_mods_paths = {}, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:41:47: note: shadowed declaration is here 41 | std::unordered_map addon_mods_paths; | ^~~~~~~~~~~~~~~~ ../src/content/subgames.h:48:23: warning: declaration of ‘gamemods_path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 48 | const std::string &gamemods_path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:36:14: note: shadowed declaration is here 36 | std::string gamemods_path; | ^~~~~~~~~~~~~ ../src/content/subgames.h:47:61: warning: declaration of ‘path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 47 | SubgameSpec(const std::string &id = "", const std::string &path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:35:14: note: shadowed declaration is here 35 | std::string path; | ^~~~ ../src/content/subgames.h:47:33: warning: declaration of ‘id’ shadows a member of ‘SubgameSpec’ [-Wshadow] 47 | SubgameSpec(const std::string &id = "", const std::string &path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~ ../src/content/subgames.h:31:14: note: shadowed declaration is here 31 | std::string id; | ^~ ../src/content/subgames.h: In constructor ‘WorldSpec::WorldSpec(const string&, const string&, const string&)’: ../src/content/subgames.h:84:23: warning: declaration of ‘gameid’ shadows a member of ‘WorldSpec’ [-Wshadow] 84 | const std::string &gameid = "") : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../src/content/subgames.h:81:14: note: shadowed declaration is here 81 | std::string gameid; | ^~~~~~ ../src/content/subgames.h:83:61: warning: declaration of ‘name’ shadows a member of ‘WorldSpec’ [-Wshadow] 83 | WorldSpec(const std::string &path = "", const std::string &name = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:80:14: note: shadowed declaration is here 80 | std::string name; | ^~~~ ../src/content/subgames.h:83:31: warning: declaration of ‘path’ shadows a member of ‘WorldSpec’ [-Wshadow] 83 | WorldSpec(const std::string &path = "", const std::string &name = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:79:14: note: shadowed declaration is here 79 | std::string path; | ^~~~ ../src/content/subgames.h: In constructor ‘WorldSpec::WorldSpec(const string&, const string&, const string&)’: ../src/content/subgames.h:84:23: warning: declaration of ‘gameid’ shadows a member of ‘WorldSpec’ [-Wshadow] 84 | const std::string &gameid = "") : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../src/content/subgames.h:81:14: note: shadowed declaration is here 81 | std::string gameid; | ^~~~~~ ../src/content/subgames.h:83:61: warning: declaration of ‘name’ shadows a member of ‘WorldSpec’ [-Wshadow] 83 | WorldSpec(const std::string &path = "", const std::string &name = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:80:14: note: shadowed declaration is here 80 | std::string name; | ^~~~ ../src/content/subgames.h:83:31: warning: declaration of ‘path’ shadows a member of ‘WorldSpec’ [-Wshadow] 83 | WorldSpec(const std::string &path = "", const std::string &name = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:79:14: note: shadowed declaration is here 79 | std::string path; | ^~~~ ../src/content/subgames.h: In constructor ‘WorldSpec::WorldSpec(const string&, const string&, const string&)’: ../src/content/subgames.h:84:23: warning: declaration of ‘gameid’ shadows a member of ‘WorldSpec’ [-Wshadow] 84 | const std::string &gameid = "") : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../src/content/subgames.h:81:14: note: shadowed declaration is here 81 | std::string gameid; | ^~~~~~ ../src/content/subgames.h:83:61: warning: declaration of ‘name’ shadows a member of ‘WorldSpec’ [-Wshadow] 83 | WorldSpec(const std::string &path = "", const std::string &name = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:80:14: note: shadowed declaration is here 80 | std::string name; | ^~~~ ../src/content/subgames.h:83:31: warning: declaration of ‘path’ shadows a member of ‘WorldSpec’ [-Wshadow] 83 | WorldSpec(const std::string &path = "", const std::string &name = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:79:14: note: shadowed declaration is here 79 | std::string path; | ^~~~ In file included from ../src/network/clientopcodes.h:23, from ../src/network/clientopcodes.cpp:21: ../src/client/client.h: At global scope: ../src/client/client.h:136:28: warning: extra ‘;’ [-Wpedantic] 136 | DISABLE_CLASS_COPY(Client); | ^ | - ../src/client/client.h:111:7: warning: base class ‘class IGameDef’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 111 | class Client : public con::PeerHandler, public InventoryManager, public IGameDef | ^~~~~~ [5/272] Building CXX object src/CMakeFiles/main.dir/network/clientpackethandler.cpp.o FAILED: src/CMakeFiles/main.dir/network/clientpackethandler.cpp.o /usr/bin/c++ -DUSE_CMAKE_CONFIG_H -D_IRR_STATIC_LIB_ -I../src -Isrc -I/usr/include/postgresql -I/usr/include/leveldb -I/usr/include/hiredis -I../src/script -I../src/util -isystem /usr/include/luajit-2.1 -isystem /usr/include/jsoncpp -isystem /home/mezhir/code/open_contrib/irrlicht/include -isystem /home/mezhir/code/open_contrib/irrlicht/source/Irrlicht -DNDEBUG -Wall -Wextra -Wno-unused-parameter -Wno-implicit-fallthrough -pipe -funroll-loops -O3 -fomit-frame-pointer -fno-math-errno -fno-trapping-math -ffinite-math-only -fno-signed-zeros -Wall -Wshadow -Wnon-virtual-dtor -pedantic -std=gnu++14 -MD -MT src/CMakeFiles/main.dir/network/clientpackethandler.cpp.o -MF src/CMakeFiles/main.dir/network/clientpackethandler.cpp.o.d -o src/CMakeFiles/main.dir/network/clientpackethandler.cpp.o -c ../src/network/clientpackethandler.cpp In file included from /home/mezhir/code/open_contrib/irrlicht/include/irrString.h:15, from ../src/util/string.h:23, from ../src/network/networkprotocol.h:22, from ../src/environment.h:38, from ../src/client/clientenvironment.h:22, from ../src/client/client.h:22, from ../src/network/clientpackethandler.cpp:20: /usr/include/c++/10/cstring:77:11: error: ‘memchr’ has not been declared in ‘::’ 77 | using ::memchr; | ^~~~~~ /usr/include/c++/10/cstring:78:11: error: ‘memcmp’ has not been declared in ‘::’ 78 | using ::memcmp; | ^~~~~~ /usr/include/c++/10/cstring:79:11: error: ‘memcpy’ has not been declared in ‘::’ 79 | using ::memcpy; | ^~~~~~ /usr/include/c++/10/cstring:80:11: error: ‘memmove’ has not been declared in ‘::’ 80 | using ::memmove; | ^~~~~~~ /usr/include/c++/10/cstring:81:11: error: ‘memset’ has not been declared in ‘::’ 81 | using ::memset; | ^~~~~~ /usr/include/c++/10/cstring:82:11: error: ‘strcat’ has not been declared in ‘::’ 82 | using ::strcat; | ^~~~~~ /usr/include/c++/10/cstring:83:11: error: ‘strcmp’ has not been declared in ‘::’ 83 | using ::strcmp; | ^~~~~~ /usr/include/c++/10/cstring:84:11: error: ‘strcoll’ has not been declared in ‘::’ 84 | using ::strcoll; | ^~~~~~~ /usr/include/c++/10/cstring:85:11: error: ‘strcpy’ has not been declared in ‘::’ 85 | using ::strcpy; | ^~~~~~ /usr/include/c++/10/cstring:86:11: error: ‘strcspn’ has not been declared in ‘::’ 86 | using ::strcspn; | ^~~~~~~ /usr/include/c++/10/cstring:87:11: error: ‘strerror’ has not been declared in ‘::’ 87 | using ::strerror; | ^~~~~~~~ /usr/include/c++/10/cstring:88:11: error: ‘strlen’ has not been declared in ‘::’ 88 | using ::strlen; | ^~~~~~ /usr/include/c++/10/cstring:89:11: error: ‘strncat’ has not been declared in ‘::’ 89 | using ::strncat; | ^~~~~~~ /usr/include/c++/10/cstring:90:11: error: ‘strncmp’ has not been declared in ‘::’ 90 | using ::strncmp; | ^~~~~~~ /usr/include/c++/10/cstring:91:11: error: ‘strncpy’ has not been declared in ‘::’ 91 | using ::strncpy; | ^~~~~~~ /usr/include/c++/10/cstring:92:11: error: ‘strspn’ has not been declared in ‘::’ 92 | using ::strspn; | ^~~~~~ /usr/include/c++/10/cstring:93:11: error: ‘strtok’ has not been declared in ‘::’ 93 | using ::strtok; | ^~~~~~ /usr/include/c++/10/cstring:94:11: error: ‘strxfrm’ has not been declared in ‘::’ 94 | using ::strxfrm; | ^~~~~~~ /usr/include/c++/10/cstring:95:11: error: ‘strchr’ has not been declared in ‘::’ 95 | using ::strchr; | ^~~~~~ /usr/include/c++/10/cstring:96:11: error: ‘strpbrk’ has not been declared in ‘::’ 96 | using ::strpbrk; | ^~~~~~~ /usr/include/c++/10/cstring:97:11: error: ‘strrchr’ has not been declared in ‘::’ 97 | using ::strrchr; | ^~~~~~~ /usr/include/c++/10/cstring:98:11: error: ‘strstr’ has not been declared in ‘::’ 98 | using ::strstr; | ^~~~~~ In file included from ../src/util/string.h:23, from ../src/network/networkprotocol.h:22, from ../src/environment.h:38, from ../src/client/clientenvironment.h:22, from ../src/client/client.h:22, from ../src/network/clientpackethandler.cpp:20: /home/mezhir/code/open_contrib/irrlicht/include/irrString.h: In function ‘size_t irr::core::multibyteToWString(irr::core::string&, const char*)’: /home/mezhir/code/open_contrib/irrlicht/include/irrString.h:1451:35: error: ‘strlen’ is not a member of ‘std’ 1451 | const u32 s = source ? (u32)std::strlen(source) : 0; | ^~~~~~ In file included from ../src/client/clientenvironment.h:22, from ../src/client/client.h:22, from ../src/network/clientpackethandler.cpp:20: ../src/environment.h: At global scope: ../src/environment.h:52:33: warning: extra ‘;’ [-Wpedantic] 52 | DISABLE_CLASS_COPY(Environment); | ^ | - In file included from /home/mezhir/code/open_contrib/irrlicht/include/SMaterial.h:9, from /home/mezhir/code/open_contrib/irrlicht/include/ISceneNode.h:12, from /home/mezhir/code/open_contrib/irrlicht/include/IBoneSceneNode.h:8, from /home/mezhir/code/open_contrib/irrlicht/include/ISkinnedMesh.h:9, from /home/mezhir/code/open_contrib/irrlicht/include/ISceneManager.h:18, from ../src/client/clientenvironment.h:23, from ../src/client/client.h:22, from ../src/network/clientpackethandler.cpp:20: /home/mezhir/code/open_contrib/irrlicht/include/matrix4.h: In copy constructor ‘irr::core::CMatrix4::CMatrix4(const irr::core::CMatrix4&, irr::core::CMatrix4::eConstructor)’: /home/mezhir/code/open_contrib/irrlicht/include/matrix4.h:507:11: error: ‘memset’ is not a member of ‘std’ 507 | std::memset(M, 0, 16*sizeof(T)); | ^~~~~~ /home/mezhir/code/open_contrib/irrlicht/include/matrix4.h:511:11: error: ‘memset’ is not a member of ‘std’ 511 | std::memset(M, 0, 16*sizeof(T)); | ^~~~~~ /home/mezhir/code/open_contrib/irrlicht/include/matrix4.h: In member function ‘irr::core::CMatrix4& irr::core::CMatrix4::makeIdentity()’: /home/mezhir/code/open_contrib/irrlicht/include/matrix4.h:1043:9: error: ‘memset’ is not a member of ‘std’ 1043 | std::memset(M, 0, 16*sizeof(T)); | ^~~~~~ In file included from ../src/irrlichttypes_extrabloated.h:26, from ../src/client/clientobject.h:22, from ../src/client/clientenvironment.h:24, from ../src/client/client.h:22, from ../src/network/clientpackethandler.cpp:20: /home/mezhir/code/open_contrib/irrlicht/include/IImage.h: In member function ‘void irr::video::IImage::setMipMapsData(void*, bool, bool)’: /home/mezhir/code/open_contrib/irrlicht/include/IImage.h:315:6: error: ‘memcpy’ was not declared in this scope 315 | memcpy(MipMapsData, data, dataSize); | ^~~~~~ In file included from ../src/irrlichttypes_extrabloated.h:26, from ../src/client/clientobject.h:22, from ../src/client/clientenvironment.h:24, from ../src/client/client.h:22, from ../src/network/clientpackethandler.cpp:20: /home/mezhir/code/open_contrib/irrlicht/include/IImage.h:1:1: note: ‘memcpy’ is defined in header ‘’; did you forget to ‘#include ’? +++ |+#include 1 | // Copyright (C) 2002-2012 Nikolaus Gebhardt In file included from ../src/client/clientobject.h:23, from ../src/client/clientenvironment.h:24, from ../src/client/client.h:22, from ../src/network/clientpackethandler.cpp:20: ../src/activeobject.h: At global scope: ../src/activeobject.h:78:7: warning: ‘class ActiveObject’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 78 | class ActiveObject | ^~~~~~~~~~~~ In file included from ../src/client/clientenvironment.h:24, from ../src/client/client.h:22, from ../src/network/clientpackethandler.cpp:20: ../src/client/clientobject.h:36:7: warning: base class ‘class ActiveObject’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 36 | class ClientActiveObject : public ActiveObject | ^~~~~~~~~~~~~~~~~~ In file included from ../src/client/activeobjectmgr.h:24, from ../src/client/clientenvironment.h:26, from ../src/client/client.h:22, from ../src/network/clientpackethandler.cpp:20: ../src/client/../activeobjectmgr.h: In instantiation of ‘class ActiveObjectMgr’: ../src/client/activeobjectmgr.h:29:34: required from here ../src/client/../activeobjectmgr.h:29:7: warning: ‘class ActiveObjectMgr’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 29 | class ActiveObjectMgr | ^~~~~~~~~~~~~~~ In file included from ../src/client/clientenvironment.h:26, from ../src/client/client.h:22, from ../src/network/clientpackethandler.cpp:20: ../src/client/activeobjectmgr.h:29:7: warning: base class ‘class ActiveObjectMgr’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 29 | class ActiveObjectMgr : public ::ActiveObjectMgr | ^~~~~~~~~~~~~~~ ../src/client/activeobjectmgr.h:29:7: warning: ‘class client::ActiveObjectMgr’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] In file included from ../src/client/client.h:30, from ../src/network/clientpackethandler.cpp:20: ../src/gamedef.h:49:7: warning: ‘class IGameDef’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 49 | class IGameDef | ^~~~~~~~ In file included from ../src/debug.h:26, from ../src/util/serialize.h:24, from ../src/sound.h:24, from ../src/itemdef.h:28, from ../src/inventory.h:22, from ../src/inventorymanager.h:22, from ../src/client/client.h:31, from ../src/network/clientpackethandler.cpp:20: ../src/log.h:103:7: warning: ‘class ILogOutput’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 103 | class ILogOutput { | ^~~~~~~~~~ ../src/log.h:111:7: warning: base class ‘class ILogOutput’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 111 | class ICombinedLogOutput : public ILogOutput { | ^~~~~~~~~~~~~~~~~~ ../src/log.h:111:7: warning: ‘class ICombinedLogOutput’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] ../src/log.h:121:7: warning: base class ‘class ICombinedLogOutput’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 121 | class StreamLogOutput : public ICombinedLogOutput { | ^~~~~~~~~~~~~~~ ../src/log.h:121:7: warning: ‘class StreamLogOutput’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] ../src/log.h:140:7: warning: base class ‘class ICombinedLogOutput’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 140 | class FileLogOutput : public ICombinedLogOutput { | ^~~~~~~~~~~~~ ../src/log.h:140:7: warning: ‘class FileLogOutput’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] ../src/log.h:153:7: warning: base class ‘class ICombinedLogOutput’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 153 | class LogOutputBuffer : public ICombinedLogOutput { | ^~~~~~~~~~~~~~~ ../src/log.h:216:7: warning: ‘class LogTarget’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 216 | class LogTarget { | ^~~~~~~~~ ../src/log.h:290:31: warning: extra ‘;’ [-Wpedantic] 290 | DISABLE_CLASS_COPY(LogStream); | ^ | - In file included from ../src/sound.h:24, from ../src/itemdef.h:28, from ../src/inventory.h:22, from ../src/inventorymanager.h:22, from ../src/client/client.h:31, from ../src/network/clientpackethandler.cpp:20: ../src/util/serialize.h: In function ‘irr::u16 readU16(const u8*)’: ../src/util/serialize.h:73:2: error: ‘memcpy’ was not declared in this scope 73 | memcpy(&val, data, 2); | ^~~~~~ ../src/util/serialize.h:42:1: note: ‘memcpy’ is defined in header ‘’; did you forget to ‘#include ’? 41 | #include // for memcpy +++ |+#include 42 | #include ../src/util/serialize.h: In function ‘irr::u32 readU32(const u8*)’: ../src/util/serialize.h:80:2: error: ‘memcpy’ was not declared in this scope 80 | memcpy(&val, data, 4); | ^~~~~~ ../src/util/serialize.h:80:2: note: ‘memcpy’ is defined in header ‘’; did you forget to ‘#include ’? ../src/util/serialize.h: In function ‘irr::u64 readU64(const u8*)’: ../src/util/serialize.h:87:2: error: ‘memcpy’ was not declared in this scope 87 | memcpy(&val, data, 8); | ^~~~~~ ../src/util/serialize.h:87:2: note: ‘memcpy’ is defined in header ‘’; did you forget to ‘#include ’? ../src/util/serialize.h: In function ‘void writeU16(irr::u8*, irr::u16)’: ../src/util/serialize.h:94:2: error: ‘memcpy’ was not declared in this scope 94 | memcpy(data, &val, 2); | ^~~~~~ ../src/util/serialize.h:94:2: note: ‘memcpy’ is defined in header ‘’; did you forget to ‘#include ’? ../src/util/serialize.h: In function ‘void writeU32(irr::u8*, irr::u32)’: ../src/util/serialize.h:100:2: error: ‘memcpy’ was not declared in this scope 100 | memcpy(data, &val, 4); | ^~~~~~ ../src/util/serialize.h:100:2: note: ‘memcpy’ is defined in header ‘’; did you forget to ‘#include ’? ../src/util/serialize.h: In function ‘void writeU64(irr::u8*, irr::u64)’: ../src/util/serialize.h:106:2: error: ‘memcpy’ was not declared in this scope 106 | memcpy(data, &val, 8); | ^~~~~~ ../src/util/serialize.h:106:2: note: ‘memcpy’ is defined in header ‘’; did you forget to ‘#include ’? ../src/util/serialize.h: In function ‘irr::f32 readF32(const u8*)’: ../src/util/serialize.h:201:4: error: ‘memcpy’ was not declared in this scope 201 | memcpy(&f, &u, 4); | ^~~~~~ ../src/util/serialize.h:201:4: note: ‘memcpy’ is defined in header ‘’; did you forget to ‘#include ’? ../src/util/serialize.h: In function ‘void writeF32(irr::u8*, irr::f32)’: ../src/util/serialize.h:317:4: error: ‘memcpy’ was not declared in this scope 317 | memcpy(&u, &i, 4); | ^~~~~~ ../src/util/serialize.h:317:4: note: ‘memcpy’ is defined in header ‘’; did you forget to ‘#include ’? ../src/util/serialize.h: At global scope: ../src/util/serialize.h:400:41: warning: extra ‘;’ [-Wpedantic] 400 | MAKE_STREAM_READ_FXN(u8, U8, 1); | ^ ../src/util/serialize.h:401:41: warning: extra ‘;’ [-Wpedantic] 401 | MAKE_STREAM_READ_FXN(u16, U16, 2); | ^ ../src/util/serialize.h:402:41: warning: extra ‘;’ [-Wpedantic] 402 | MAKE_STREAM_READ_FXN(u32, U32, 4); | ^ ../src/util/serialize.h:403:41: warning: extra ‘;’ [-Wpedantic] 403 | MAKE_STREAM_READ_FXN(u64, U64, 8); | ^ ../src/util/serialize.h:404:41: warning: extra ‘;’ [-Wpedantic] 404 | MAKE_STREAM_READ_FXN(s8, S8, 1); | ^ ../src/util/serialize.h:405:41: warning: extra ‘;’ [-Wpedantic] 405 | MAKE_STREAM_READ_FXN(s16, S16, 2); | ^ ../src/util/serialize.h:406:41: warning: extra ‘;’ [-Wpedantic] 406 | MAKE_STREAM_READ_FXN(s32, S32, 4); | ^ ../src/util/serialize.h:407:41: warning: extra ‘;’ [-Wpedantic] 407 | MAKE_STREAM_READ_FXN(s64, S64, 8); | ^ ../src/util/serialize.h:408:41: warning: extra ‘;’ [-Wpedantic] 408 | MAKE_STREAM_READ_FXN(f32, F1000, 4); | ^ ../src/util/serialize.h:409:41: warning: extra ‘;’ [-Wpedantic] 409 | MAKE_STREAM_READ_FXN(f32, F32, 4); | ^ ../src/util/serialize.h:410:41: warning: extra ‘;’ [-Wpedantic] 410 | MAKE_STREAM_READ_FXN(v2s16, V2S16, 4); | ^ ../src/util/serialize.h:411:41: warning: extra ‘;’ [-Wpedantic] 411 | MAKE_STREAM_READ_FXN(v3s16, V3S16, 6); | ^ ../src/util/serialize.h:412:41: warning: extra ‘;’ [-Wpedantic] 412 | MAKE_STREAM_READ_FXN(v2s32, V2S32, 8); | ^ ../src/util/serialize.h:413:41: warning: extra ‘;’ [-Wpedantic] 413 | MAKE_STREAM_READ_FXN(v3s32, V3S32, 12); | ^ ../src/util/serialize.h:414:41: warning: extra ‘;’ [-Wpedantic] 414 | MAKE_STREAM_READ_FXN(v3f, V3F1000, 12); | ^ ../src/util/serialize.h:415:41: warning: extra ‘;’ [-Wpedantic] 415 | MAKE_STREAM_READ_FXN(v2f, V2F32, 8); | ^ ../src/util/serialize.h:416:41: warning: extra ‘;’ [-Wpedantic] 416 | MAKE_STREAM_READ_FXN(v3f, V3F32, 12); | ^ ../src/util/serialize.h:417:46: warning: extra ‘;’ [-Wpedantic] 417 | MAKE_STREAM_READ_FXN(video::SColor, ARGB8, 4); | ^ ../src/util/serialize.h:419:42: warning: extra ‘;’ [-Wpedantic] 419 | MAKE_STREAM_WRITE_FXN(u8, U8, 1); | ^ ../src/util/serialize.h:420:42: warning: extra ‘;’ [-Wpedantic] 420 | MAKE_STREAM_WRITE_FXN(u16, U16, 2); | ^ ../src/util/serialize.h:421:42: warning: extra ‘;’ [-Wpedantic] 421 | MAKE_STREAM_WRITE_FXN(u32, U32, 4); | ^ ../src/util/serialize.h:422:42: warning: extra ‘;’ [-Wpedantic] 422 | MAKE_STREAM_WRITE_FXN(u64, U64, 8); | ^ ../src/util/serialize.h:423:42: warning: extra ‘;’ [-Wpedantic] 423 | MAKE_STREAM_WRITE_FXN(s8, S8, 1); | ^ ../src/util/serialize.h:424:42: warning: extra ‘;’ [-Wpedantic] 424 | MAKE_STREAM_WRITE_FXN(s16, S16, 2); | ^ ../src/util/serialize.h:425:42: warning: extra ‘;’ [-Wpedantic] 425 | MAKE_STREAM_WRITE_FXN(s32, S32, 4); | ^ ../src/util/serialize.h:426:42: warning: extra ‘;’ [-Wpedantic] 426 | MAKE_STREAM_WRITE_FXN(s64, S64, 8); | ^ ../src/util/serialize.h:427:42: warning: extra ‘;’ [-Wpedantic] 427 | MAKE_STREAM_WRITE_FXN(f32, F1000, 4); | ^ ../src/util/serialize.h:428:42: warning: extra ‘;’ [-Wpedantic] 428 | MAKE_STREAM_WRITE_FXN(f32, F32, 4); | ^ ../src/util/serialize.h:429:42: warning: extra ‘;’ [-Wpedantic] 429 | MAKE_STREAM_WRITE_FXN(v2s16, V2S16, 4); | ^ ../src/util/serialize.h:430:42: warning: extra ‘;’ [-Wpedantic] 430 | MAKE_STREAM_WRITE_FXN(v3s16, V3S16, 6); | ^ ../src/util/serialize.h:431:42: warning: extra ‘;’ [-Wpedantic] 431 | MAKE_STREAM_WRITE_FXN(v2s32, V2S32, 8); | ^ ../src/util/serialize.h:432:42: warning: extra ‘;’ [-Wpedantic] 432 | MAKE_STREAM_WRITE_FXN(v3s32, V3S32, 12); | ^ ../src/util/serialize.h:433:42: warning: extra ‘;’ [-Wpedantic] 433 | MAKE_STREAM_WRITE_FXN(v3f, V3F1000, 12); | ^ ../src/util/serialize.h:434:42: warning: extra ‘;’ [-Wpedantic] 434 | MAKE_STREAM_WRITE_FXN(v2f, V2F32, 8); | ^ ../src/util/serialize.h:435:42: warning: extra ‘;’ [-Wpedantic] 435 | MAKE_STREAM_WRITE_FXN(v3f, V3F32, 12); | ^ ../src/util/serialize.h:436:47: warning: extra ‘;’ [-Wpedantic] 436 | MAKE_STREAM_WRITE_FXN(video::SColor, ARGB8, 4); | ^ In file included from ../src/itemdef.h:28, from ../src/inventory.h:22, from ../src/inventorymanager.h:22, from ../src/client/client.h:31, from ../src/network/clientpackethandler.cpp:20: ../src/sound.h: In constructor ‘SimpleSoundSpec::SimpleSoundSpec(const string&, float, bool, float, float)’: ../src/sound.h:33:48: warning: declaration of ‘pitch’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~~^~~~~~~~~~~~ ../src/sound.h:59:8: note: shadowed declaration is here 59 | float pitch = 1.0f; | ^~~~~ ../src/sound.h:33:29: warning: declaration of ‘fade’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~~^~~~~~~~~~~ ../src/sound.h:58:8: note: shadowed declaration is here 58 | float fade = 0.0f; | ^~~~ ../src/sound.h:33:9: warning: declaration of ‘loop’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~^~~~~~~~~~~~ ../src/sound.h:60:7: note: shadowed declaration is here 60 | bool loop = false; | ^~~~ ../src/sound.h:32:54: warning: declaration of ‘gain’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 32 | SimpleSoundSpec(const std::string &name = "", float gain = 1.0f, | ~~~~~~^~~~~~~~~~~ ../src/sound.h:57:8: note: shadowed declaration is here 57 | float gain = 1.0f; | ^~~~ ../src/sound.h:32:37: warning: declaration of ‘name’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 32 | SimpleSoundSpec(const std::string &name = "", float gain = 1.0f, | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/sound.h:56:14: note: shadowed declaration is here 56 | std::string name; | ^~~~ ../src/sound.h: In constructor ‘SimpleSoundSpec::SimpleSoundSpec(const string&, float, bool, float, float)’: ../src/sound.h:33:48: warning: declaration of ‘pitch’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~~^~~~~~~~~~~~ ../src/sound.h:59:8: note: shadowed declaration is here 59 | float pitch = 1.0f; | ^~~~~ ../src/sound.h:33:29: warning: declaration of ‘fade’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~~^~~~~~~~~~~ ../src/sound.h:58:8: note: shadowed declaration is here 58 | float fade = 0.0f; | ^~~~ ../src/sound.h:33:9: warning: declaration of ‘loop’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~^~~~~~~~~~~~ ../src/sound.h:60:7: note: shadowed declaration is here 60 | bool loop = false; | ^~~~ ../src/sound.h:32:54: warning: declaration of ‘gain’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 32 | SimpleSoundSpec(const std::string &name = "", float gain = 1.0f, | ~~~~~~^~~~~~~~~~~ ../src/sound.h:57:8: note: shadowed declaration is here 57 | float gain = 1.0f; | ^~~~ ../src/sound.h:32:37: warning: declaration of ‘name’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 32 | SimpleSoundSpec(const std::string &name = "", float gain = 1.0f, | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/sound.h:56:14: note: shadowed declaration is here 56 | std::string name; | ^~~~ ../src/sound.h: In constructor ‘SimpleSoundSpec::SimpleSoundSpec(const string&, float, bool, float, float)’: ../src/sound.h:33:48: warning: declaration of ‘pitch’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~~^~~~~~~~~~~~ ../src/sound.h:59:8: note: shadowed declaration is here 59 | float pitch = 1.0f; | ^~~~~ ../src/sound.h:33:29: warning: declaration of ‘fade’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~~^~~~~~~~~~~ ../src/sound.h:58:8: note: shadowed declaration is here 58 | float fade = 0.0f; | ^~~~ ../src/sound.h:33:9: warning: declaration of ‘loop’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~^~~~~~~~~~~~ ../src/sound.h:60:7: note: shadowed declaration is here 60 | bool loop = false; | ^~~~ ../src/sound.h:32:54: warning: declaration of ‘gain’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 32 | SimpleSoundSpec(const std::string &name = "", float gain = 1.0f, | ~~~~~~^~~~~~~~~~~ ../src/sound.h:57:8: note: shadowed declaration is here 57 | float gain = 1.0f; | ^~~~ ../src/sound.h:32:37: warning: declaration of ‘name’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 32 | SimpleSoundSpec(const std::string &name = "", float gain = 1.0f, | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/sound.h:56:14: note: shadowed declaration is here 56 | std::string name; | ^~~~ In file included from /usr/include/jsoncpp/json/config.h:102, from /usr/include/jsoncpp/json/json.h:9, from ../src/tool.h:26, from ../src/itemstackmetadata.h:23, from ../src/inventory.h:24, from ../src/inventorymanager.h:22, from ../src/client/client.h:31, from ../src/network/clientpackethandler.cpp:20: /usr/include/jsoncpp/json/allocator.h: In member function ‘void Json::SecureAllocator::deallocate(Json::SecureAllocator::pointer, Json::SecureAllocator::size_type)’: /usr/include/jsoncpp/json/allocator.h:42:10: error: ‘memset’ is not a member of ‘std’ 42 | std::memset(p, 0, n * sizeof(T)); | ^~~~~~ In file included from /usr/include/jsoncpp/json/reader.h:11, from /usr/include/jsoncpp/json/json.h:11, from ../src/tool.h:26, from ../src/itemstackmetadata.h:23, from ../src/inventory.h:24, from ../src/inventorymanager.h:22, from ../src/client/client.h:31, from ../src/network/clientpackethandler.cpp:20: /usr/include/jsoncpp/json/value.h: In member function ‘void Json::Value::setComment(const char*, Json::CommentPlacement)’: /usr/include/jsoncpp/json/value.h:567:32: error: ‘strlen’ was not declared in this scope 567 | setComment(String(comment, strlen(comment)), placement); | ^~~~~~ /usr/include/jsoncpp/json/value.h:1:1: note: ‘strlen’ is defined in header ‘’; did you forget to ‘#include ’? +++ |+#include 1 | // Copyright 2007-2010 Baptiste Lepilleur and The JsonCpp Authors In file included from ../src/client/client.h:31, from ../src/network/clientpackethandler.cpp:20: ../src/inventorymanager.h: At global scope: ../src/inventorymanager.h:134:39: warning: extra ‘;’ [-Wpedantic] 134 | virtual ~InventoryAction() = default;; | ^ | - In file included from ../src/client/localplayer.h:22, from ../src/client/client.h:32, from ../src/network/clientpackethandler.cpp:20: ../src/player.h:129:28: warning: extra ‘;’ [-Wpedantic] 129 | DISABLE_CLASS_COPY(Player); | ^ | - In file included from ../src/client/../mapnode.h:24, from ../src/client/../particles.h:29, from ../src/client/particles.h:26, from ../src/client/client.h:34, from ../src/network/clientpackethandler.cpp:20: ../src/client/../util/pointer.h: In constructor ‘ConstSharedPtr::ConstSharedPtr(T*)’: ../src/client/../util/pointer.h:30:20: warning: declaration of ‘ptr’ shadows a member of ‘ConstSharedPtr’ [-Wshadow] 30 | ConstSharedPtr(T *ptr) : ptr(ptr) {} | ~~~^~~ ../src/client/../util/pointer.h:38:21: note: shadowed declaration is here 38 | std::shared_ptr ptr; | ^~~ ../src/client/../util/pointer.h: In constructor ‘ConstSharedPtr::ConstSharedPtr(const std::shared_ptr<_Tp>&)’: ../src/client/../util/pointer.h:31:43: warning: declaration of ‘ptr’ shadows a member of ‘ConstSharedPtr’ [-Wshadow] 31 | ConstSharedPtr(const std::shared_ptr &ptr) : ptr(ptr) {} | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ ../src/client/../util/pointer.h:38:21: note: shadowed declaration is here 38 | std::shared_ptr ptr; | ^~~ ../src/client/../util/pointer.h: In constructor ‘SharedBuffer::SharedBuffer(unsigned int)’: ../src/client/../util/pointer.h:171:22: error: ‘memset’ is not a member of ‘std’ 171 | std::memset(data,0,sizeof(T)*m_size); | ^~~~~~ In file included from ../src/client/particles.h:26, from ../src/client/client.h:34, from ../src/network/clientpackethandler.cpp:20: ../src/client/../particles.h: At global scope: ../src/client/../particles.h:52:26: warning: extra ‘;’ [-Wpedantic] 52 | DECL_PARAM_OVERLOADS(u8); DECL_PARAM_OVERLOADS(s8); | ^ ../src/client/../particles.h:52:53: warning: extra ‘;’ [-Wpedantic] 52 | DECL_PARAM_OVERLOADS(u8); DECL_PARAM_OVERLOADS(s8); | ^ ../src/client/../particles.h:53:27: warning: extra ‘;’ [-Wpedantic] 53 | DECL_PARAM_OVERLOADS(u16); DECL_PARAM_OVERLOADS(s16); | ^ ../src/client/../particles.h:53:54: warning: extra ‘;’ [-Wpedantic] 53 | DECL_PARAM_OVERLOADS(u16); DECL_PARAM_OVERLOADS(s16); | ^ ../src/client/../particles.h:54:27: warning: extra ‘;’ [-Wpedantic] 54 | DECL_PARAM_OVERLOADS(u32); DECL_PARAM_OVERLOADS(s32); | ^ ../src/client/../particles.h:54:54: warning: extra ‘;’ [-Wpedantic] 54 | DECL_PARAM_OVERLOADS(u32); DECL_PARAM_OVERLOADS(s32); | ^ ../src/client/../particles.h:55:27: warning: extra ‘;’ [-Wpedantic] 55 | DECL_PARAM_OVERLOADS(f32); | ^ ../src/client/../particles.h:56:27: warning: extra ‘;’ [-Wpedantic] 56 | DECL_PARAM_OVERLOADS(v2f); | ^ ../src/client/../particles.h:57:27: warning: extra ‘;’ [-Wpedantic] 57 | DECL_PARAM_OVERLOADS(v3f); | ^ ../src/client/../particles.h: In instantiation of ‘struct ParticleParamTypes::Parameter’: ../src/client/../particles.h:245:5: required from ‘struct ParticleParamTypes::TweenedParameter >’ ../src/client/../particles.h:351:41: required from here ../src/client/../particles.h:89:9: warning: ‘struct ParticleParamTypes::Parameter’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 89 | struct Parameter | ^~~~~~~~~ ../src/client/../particles.h: In instantiation of ‘struct ParticleParamTypes::Parameter, 2>’: ../src/client/../particles.h:126:9: required from ‘struct ParticleParamTypes::VectorParameter, 2>’ ../src/client/../particles.h:245:5: required from ‘struct ParticleParamTypes::TweenedParameter, 2> >’ ../src/client/../particles.h:352:46: required from here ../src/client/../particles.h:89:9: warning: ‘struct ParticleParamTypes::Parameter, 2>’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] ../src/client/../particles.h: In instantiation of ‘struct ParticleParamTypes::VectorParameter, 2>’: ../src/client/../particles.h:245:5: required from ‘struct ParticleParamTypes::TweenedParameter, 2> >’ ../src/client/../particles.h:352:46: required from here ../src/client/../particles.h:126:9: warning: base class ‘struct ParticleParamTypes::Parameter, 2>’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 126 | struct VectorParameter : public Parameter { | ^~~~~~~~~~~~~~~ ../src/client/../particles.h:126:9: warning: ‘struct ParticleParamTypes::VectorParameter, 2>’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] ../src/client/../particles.h: In instantiation of ‘struct ParticleParamTypes::Parameter, 3>’: ../src/client/../particles.h:126:9: required from ‘struct ParticleParamTypes::VectorParameter, 3>’ ../src/client/../particles.h:164:5: required from ‘struct ParticleParamTypes::RangedParameter, 3> >’ ../src/client/../particles.h:399:31: required from here ../src/client/../particles.h:89:9: warning: ‘struct ParticleParamTypes::Parameter, 3>’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 89 | struct Parameter | ^~~~~~~~~ ../src/client/../particles.h: In instantiation of ‘struct ParticleParamTypes::VectorParameter, 3>’: ../src/client/../particles.h:164:5: required from ‘struct ParticleParamTypes::RangedParameter, 3> >’ ../src/client/../particles.h:399:31: required from here ../src/client/../particles.h:126:9: warning: base class ‘struct ParticleParamTypes::Parameter, 3>’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 126 | struct VectorParameter : public Parameter { | ^~~~~~~~~~~~~~~ ../src/client/../particles.h:126:9: warning: ‘struct ParticleParamTypes::VectorParameter, 3>’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] In file included from ../src/client/mesh_generator_thread.h:24, from ../src/client/client.h:37, from ../src/network/clientpackethandler.cpp:20: ../src/client/mapblock_mesh.h: In constructor ‘MapBlockBspTree::TreeNode::TreeNode(v3f, v3f, const std::vector&, irr::s32, irr::s32)’: ../src/client/mapblock_mesh.h:129:94: warning: declaration of ‘back_ref’ shadows a member of ‘MapBlockBspTree::TreeNode’ [-Wshadow] 129 | TreeNode(v3f normal, v3f origin, const std::vector &triangle_refs, s32 front_ref, s32 back_ref) : | ~~~~^~~~~~~~ ../src/client/mapblock_mesh.h:126:7: note: shadowed declaration is here 126 | s32 back_ref; | ^~~~~~~~ ../src/client/mapblock_mesh.h:129:79: warning: declaration of ‘front_ref’ shadows a member of ‘MapBlockBspTree::TreeNode’ [-Wshadow] 129 | TreeNode(v3f normal, v3f origin, const std::vector &triangle_refs, s32 front_ref, s32 back_ref) : | ~~~~^~~~~~~~~ ../src/client/mapblock_mesh.h:125:7: note: shadowed declaration is here 125 | s32 front_ref; | ^~~~~~~~~ ../src/client/mapblock_mesh.h:129:60: warning: declaration of ‘triangle_refs’ shadows a member of ‘MapBlockBspTree::TreeNode’ [-Wshadow] 129 | TreeNode(v3f normal, v3f origin, const std::vector &triangle_refs, s32 front_ref, s32 back_ref) : | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ ../src/client/mapblock_mesh.h:124:20: note: shadowed declaration is here 124 | std::vector triangle_refs; | ^~~~~~~~~~~~~ ../src/client/mapblock_mesh.h:129:28: warning: declaration of ‘origin’ shadows a member of ‘MapBlockBspTree::TreeNode’ [-Wshadow] 129 | TreeNode(v3f normal, v3f origin, const std::vector &triangle_refs, s32 front_ref, s32 back_ref) : | ~~~~^~~~~~ ../src/client/mapblock_mesh.h:123:7: note: shadowed declaration is here 123 | v3f origin; | ^~~~~~ ../src/client/mapblock_mesh.h:129:16: warning: declaration of ‘normal’ shadows a member of ‘MapBlockBspTree::TreeNode’ [-Wshadow] 129 | TreeNode(v3f normal, v3f origin, const std::vector &triangle_refs, s32 front_ref, s32 back_ref) : | ~~~~^~~~~~ ../src/client/mapblock_mesh.h:122:7: note: shadowed declaration is here 122 | v3f normal; | ^~~~~~ ../src/client/mapblock_mesh.h: In constructor ‘MapBlockBspTree::TreeNode::TreeNode(v3f, v3f, const std::vector&, irr::s32, irr::s32)’: ../src/client/mapblock_mesh.h:129:94: warning: declaration of ‘back_ref’ shadows a member of ‘MapBlockBspTree::TreeNode’ [-Wshadow] 129 | TreeNode(v3f normal, v3f origin, const std::vector &triangle_refs, s32 front_ref, s32 back_ref) : | ~~~~^~~~~~~~ ../src/client/mapblock_mesh.h:126:7: note: shadowed declaration is here 126 | s32 back_ref; | ^~~~~~~~ ../src/client/mapblock_mesh.h:129:79: warning: declaration of ‘front_ref’ shadows a member of ‘MapBlockBspTree::TreeNode’ [-Wshadow] 129 | TreeNode(v3f normal, v3f origin, const std::vector &triangle_refs, s32 front_ref, s32 back_ref) : | ~~~~^~~~~~~~~ ../src/client/mapblock_mesh.h:125:7: note: shadowed declaration is here 125 | s32 front_ref; | ^~~~~~~~~ ../src/client/mapblock_mesh.h:129:60: warning: declaration of ‘triangle_refs’ shadows a member of ‘MapBlockBspTree::TreeNode’ [-Wshadow] 129 | TreeNode(v3f normal, v3f origin, const std::vector &triangle_refs, s32 front_ref, s32 back_ref) : | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ ../src/client/mapblock_mesh.h:124:20: note: shadowed declaration is here 124 | std::vector triangle_refs; | ^~~~~~~~~~~~~ ../src/client/mapblock_mesh.h:129:28: warning: declaration of ‘origin’ shadows a member of ‘MapBlockBspTree::TreeNode’ [-Wshadow] 129 | TreeNode(v3f normal, v3f origin, const std::vector &triangle_refs, s32 front_ref, s32 back_ref) : | ~~~~^~~~~~ ../src/client/mapblock_mesh.h:123:7: note: shadowed declaration is here 123 | v3f origin; | ^~~~~~ ../src/client/mapblock_mesh.h:129:16: warning: declaration of ‘normal’ shadows a member of ‘MapBlockBspTree::TreeNode’ [-Wshadow] 129 | TreeNode(v3f normal, v3f origin, const std::vector &triangle_refs, s32 front_ref, s32 back_ref) : | ~~~~^~~~~~ ../src/client/mapblock_mesh.h:122:7: note: shadowed declaration is here 122 | v3f normal; | ^~~~~~ ../src/client/mapblock_mesh.h: In constructor ‘MapBlockBspTree::TreeNode::TreeNode(v3f, v3f, const std::vector&, irr::s32, irr::s32)’: ../src/client/mapblock_mesh.h:129:94: warning: declaration of ‘back_ref’ shadows a member of ‘MapBlockBspTree::TreeNode’ [-Wshadow] 129 | TreeNode(v3f normal, v3f origin, const std::vector &triangle_refs, s32 front_ref, s32 back_ref) : | ~~~~^~~~~~~~ ../src/client/mapblock_mesh.h:126:7: note: shadowed declaration is here 126 | s32 back_ref; | ^~~~~~~~ ../src/client/mapblock_mesh.h:129:79: warning: declaration of ‘front_ref’ shadows a member of ‘MapBlockBspTree::TreeNode’ [-Wshadow] 129 | TreeNode(v3f normal, v3f origin, const std::vector &triangle_refs, s32 front_ref, s32 back_ref) : | ~~~~^~~~~~~~~ ../src/client/mapblock_mesh.h:125:7: note: shadowed declaration is here 125 | s32 front_ref; | ^~~~~~~~~ ../src/client/mapblock_mesh.h:129:60: warning: declaration of ‘triangle_refs’ shadows a member of ‘MapBlockBspTree::TreeNode’ [-Wshadow] 129 | TreeNode(v3f normal, v3f origin, const std::vector &triangle_refs, s32 front_ref, s32 back_ref) : | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ ../src/client/mapblock_mesh.h:124:20: note: shadowed declaration is here 124 | std::vector triangle_refs; | ^~~~~~~~~~~~~ ../src/client/mapblock_mesh.h:129:28: warning: declaration of ‘origin’ shadows a member of ‘MapBlockBspTree::TreeNode’ [-Wshadow] 129 | TreeNode(v3f normal, v3f origin, const std::vector &triangle_refs, s32 front_ref, s32 back_ref) : | ~~~~^~~~~~ ../src/client/mapblock_mesh.h:123:7: note: shadowed declaration is here 123 | v3f origin; | ^~~~~~ ../src/client/mapblock_mesh.h:129:16: warning: declaration of ‘normal’ shadows a member of ‘MapBlockBspTree::TreeNode’ [-Wshadow] 129 | TreeNode(v3f normal, v3f origin, const std::vector &triangle_refs, s32 front_ref, s32 back_ref) : | ~~~~^~~~~~ ../src/client/mapblock_mesh.h:122:7: note: shadowed declaration is here 122 | v3f normal; | ^~~~~~ In file included from ../src/util/container.h:25, from ../src/util/thread.h:27, from ../src/client/mesh_generator_thread.h:26, from ../src/client/client.h:37, from ../src/network/clientpackethandler.cpp:20: ../src/threading/semaphore.h: At global scope: ../src/threading/semaphore.h:38:31: warning: extra ‘;’ [-Wpedantic] 38 | DISABLE_CLASS_COPY(Semaphore); | ^ | - In file included from ../src/client/client.h:38, from ../src/network/clientpackethandler.cpp:20: ../src/network/address.h: In constructor ‘IPv6AddressBytes::IPv6AddressBytes()’: ../src/network/address.h:42:23: error: ‘memset’ was not declared in this scope 42 | IPv6AddressBytes() { memset(bytes, 0, 16); } | ^~~~~~ ../src/network/address.h:38:1: note: ‘memset’ is defined in header ‘’; did you forget to ‘#include ’? 37 | #include "networkexceptions.h" +++ |+#include 38 | In file included from ../src/gameparams.h:23, from ../src/client/client.h:40, from ../src/network/clientpackethandler.cpp:20: ../src/content/subgames.h: In constructor ‘SubgameSpec::SubgameSpec(const string&, const string&, const string&, const std::unordered_map, std::__cxx11::basic_string >&, const string&, const string&, const string&, int)’: ../src/content/subgames.h:52:40: warning: declaration of ‘release’ shadows a member of ‘SubgameSpec’ [-Wshadow] 52 | const std::string &author = "", int release = 0) : | ~~~~^~~~~~~~~~~ ../src/content/subgames.h:34:6: note: shadowed declaration is here 34 | int release; | ^~~~~~~ ../src/content/subgames.h:52:23: warning: declaration of ‘author’ shadows a member of ‘SubgameSpec’ [-Wshadow] 52 | const std::string &author = "", int release = 0) : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../src/content/subgames.h:33:14: note: shadowed declaration is here 33 | std::string author; | ^~~~~~ ../src/content/subgames.h:51:23: warning: declaration of ‘menuicon_path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 51 | const std::string &menuicon_path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:42:14: note: shadowed declaration is here 42 | std::string menuicon_path; | ^~~~~~~~~~~~~ ../src/content/subgames.h:50:23: warning: declaration of ‘title’ shadows a member of ‘SubgameSpec’ [-Wshadow] 50 | const std::string &title = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ ../src/content/subgames.h:32:14: note: shadowed declaration is here 32 | std::string title; | ^~~~~ ../src/content/subgames.h:49:56: warning: declaration of ‘addon_mods_paths’ shadows a member of ‘SubgameSpec’ [-Wshadow] 49 | const std::unordered_map &addon_mods_paths = {}, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:41:47: note: shadowed declaration is here 41 | std::unordered_map addon_mods_paths; | ^~~~~~~~~~~~~~~~ ../src/content/subgames.h:48:23: warning: declaration of ‘gamemods_path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 48 | const std::string &gamemods_path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:36:14: note: shadowed declaration is here 36 | std::string gamemods_path; | ^~~~~~~~~~~~~ ../src/content/subgames.h:47:61: warning: declaration of ‘path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 47 | SubgameSpec(const std::string &id = "", const std::string &path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:35:14: note: shadowed declaration is here 35 | std::string path; | ^~~~ ../src/content/subgames.h:47:33: warning: declaration of ‘id’ shadows a member of ‘SubgameSpec’ [-Wshadow] 47 | SubgameSpec(const std::string &id = "", const std::string &path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~ ../src/content/subgames.h:31:14: note: shadowed declaration is here 31 | std::string id; | ^~ ../src/content/subgames.h: In constructor ‘SubgameSpec::SubgameSpec(const string&, const string&, const string&, const std::unordered_map, std::__cxx11::basic_string >&, const string&, const string&, const string&, int)’: ../src/content/subgames.h:52:40: warning: declaration of ‘release’ shadows a member of ‘SubgameSpec’ [-Wshadow] 52 | const std::string &author = "", int release = 0) : | ~~~~^~~~~~~~~~~ ../src/content/subgames.h:34:6: note: shadowed declaration is here 34 | int release; | ^~~~~~~ ../src/content/subgames.h:52:23: warning: declaration of ‘author’ shadows a member of ‘SubgameSpec’ [-Wshadow] 52 | const std::string &author = "", int release = 0) : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../src/content/subgames.h:33:14: note: shadowed declaration is here 33 | std::string author; | ^~~~~~ ../src/content/subgames.h:51:23: warning: declaration of ‘menuicon_path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 51 | const std::string &menuicon_path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:42:14: note: shadowed declaration is here 42 | std::string menuicon_path; | ^~~~~~~~~~~~~ ../src/content/subgames.h:50:23: warning: declaration of ‘title’ shadows a member of ‘SubgameSpec’ [-Wshadow] 50 | const std::string &title = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ ../src/content/subgames.h:32:14: note: shadowed declaration is here 32 | std::string title; | ^~~~~ ../src/content/subgames.h:49:56: warning: declaration of ‘addon_mods_paths’ shadows a member of ‘SubgameSpec’ [-Wshadow] 49 | const std::unordered_map &addon_mods_paths = {}, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:41:47: note: shadowed declaration is here 41 | std::unordered_map addon_mods_paths; | ^~~~~~~~~~~~~~~~ ../src/content/subgames.h:48:23: warning: declaration of ‘gamemods_path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 48 | const std::string &gamemods_path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:36:14: note: shadowed declaration is here 36 | std::string gamemods_path; | ^~~~~~~~~~~~~ ../src/content/subgames.h:47:61: warning: declaration of ‘path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 47 | SubgameSpec(const std::string &id = "", const std::string &path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:35:14: note: shadowed declaration is here 35 | std::string path; | ^~~~ ../src/content/subgames.h:47:33: warning: declaration of ‘id’ shadows a member of ‘SubgameSpec’ [-Wshadow] 47 | SubgameSpec(const std::string &id = "", const std::string &path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~ ../src/content/subgames.h:31:14: note: shadowed declaration is here 31 | std::string id; | ^~ ../src/content/subgames.h: In constructor ‘SubgameSpec::SubgameSpec(const string&, const string&, const string&, const std::unordered_map, std::__cxx11::basic_string >&, const string&, const string&, const string&, int)’: ../src/content/subgames.h:52:40: warning: declaration of ‘release’ shadows a member of ‘SubgameSpec’ [-Wshadow] 52 | const std::string &author = "", int release = 0) : | ~~~~^~~~~~~~~~~ ../src/content/subgames.h:34:6: note: shadowed declaration is here 34 | int release; | ^~~~~~~ ../src/content/subgames.h:52:23: warning: declaration of ‘author’ shadows a member of ‘SubgameSpec’ [-Wshadow] 52 | const std::string &author = "", int release = 0) : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../src/content/subgames.h:33:14: note: shadowed declaration is here 33 | std::string author; | ^~~~~~ ../src/content/subgames.h:51:23: warning: declaration of ‘menuicon_path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 51 | const std::string &menuicon_path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:42:14: note: shadowed declaration is here 42 | std::string menuicon_path; | ^~~~~~~~~~~~~ ../src/content/subgames.h:50:23: warning: declaration of ‘title’ shadows a member of ‘SubgameSpec’ [-Wshadow] 50 | const std::string &title = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ ../src/content/subgames.h:32:14: note: shadowed declaration is here 32 | std::string title; | ^~~~~ ../src/content/subgames.h:49:56: warning: declaration of ‘addon_mods_paths’ shadows a member of ‘SubgameSpec’ [-Wshadow] 49 | const std::unordered_map &addon_mods_paths = {}, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:41:47: note: shadowed declaration is here 41 | std::unordered_map addon_mods_paths; | ^~~~~~~~~~~~~~~~ ../src/content/subgames.h:48:23: warning: declaration of ‘gamemods_path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 48 | const std::string &gamemods_path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:36:14: note: shadowed declaration is here 36 | std::string gamemods_path; | ^~~~~~~~~~~~~ ../src/content/subgames.h:47:61: warning: declaration of ‘path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 47 | SubgameSpec(const std::string &id = "", const std::string &path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:35:14: note: shadowed declaration is here 35 | std::string path; | ^~~~ ../src/content/subgames.h:47:33: warning: declaration of ‘id’ shadows a member of ‘SubgameSpec’ [-Wshadow] 47 | SubgameSpec(const std::string &id = "", const std::string &path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~ ../src/content/subgames.h:31:14: note: shadowed declaration is here 31 | std::string id; | ^~ ../src/content/subgames.h: In constructor ‘WorldSpec::WorldSpec(const string&, const string&, const string&)’: ../src/content/subgames.h:84:23: warning: declaration of ‘gameid’ shadows a member of ‘WorldSpec’ [-Wshadow] 84 | const std::string &gameid = "") : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../src/content/subgames.h:81:14: note: shadowed declaration is here 81 | std::string gameid; | ^~~~~~ ../src/content/subgames.h:83:61: warning: declaration of ‘name’ shadows a member of ‘WorldSpec’ [-Wshadow] 83 | WorldSpec(const std::string &path = "", const std::string &name = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:80:14: note: shadowed declaration is here 80 | std::string name; | ^~~~ ../src/content/subgames.h:83:31: warning: declaration of ‘path’ shadows a member of ‘WorldSpec’ [-Wshadow] 83 | WorldSpec(const std::string &path = "", const std::string &name = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:79:14: note: shadowed declaration is here 79 | std::string path; | ^~~~ ../src/content/subgames.h: In constructor ‘WorldSpec::WorldSpec(const string&, const string&, const string&)’: ../src/content/subgames.h:84:23: warning: declaration of ‘gameid’ shadows a member of ‘WorldSpec’ [-Wshadow] 84 | const std::string &gameid = "") : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../src/content/subgames.h:81:14: note: shadowed declaration is here 81 | std::string gameid; | ^~~~~~ ../src/content/subgames.h:83:61: warning: declaration of ‘name’ shadows a member of ‘WorldSpec’ [-Wshadow] 83 | WorldSpec(const std::string &path = "", const std::string &name = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:80:14: note: shadowed declaration is here 80 | std::string name; | ^~~~ ../src/content/subgames.h:83:31: warning: declaration of ‘path’ shadows a member of ‘WorldSpec’ [-Wshadow] 83 | WorldSpec(const std::string &path = "", const std::string &name = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:79:14: note: shadowed declaration is here 79 | std::string path; | ^~~~ ../src/content/subgames.h: In constructor ‘WorldSpec::WorldSpec(const string&, const string&, const string&)’: ../src/content/subgames.h:84:23: warning: declaration of ‘gameid’ shadows a member of ‘WorldSpec’ [-Wshadow] 84 | const std::string &gameid = "") : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../src/content/subgames.h:81:14: note: shadowed declaration is here 81 | std::string gameid; | ^~~~~~ ../src/content/subgames.h:83:61: warning: declaration of ‘name’ shadows a member of ‘WorldSpec’ [-Wshadow] 83 | WorldSpec(const std::string &path = "", const std::string &name = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:80:14: note: shadowed declaration is here 80 | std::string name; | ^~~~ ../src/content/subgames.h:83:31: warning: declaration of ‘path’ shadows a member of ‘WorldSpec’ [-Wshadow] 83 | WorldSpec(const std::string &path = "", const std::string &name = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:79:14: note: shadowed declaration is here 79 | std::string path; | ^~~~ In file included from ../src/network/clientpackethandler.cpp:20: ../src/client/client.h: At global scope: ../src/client/client.h:136:28: warning: extra ‘;’ [-Wpedantic] 136 | DISABLE_CLASS_COPY(Client); | ^ | - ../src/client/client.h:111:7: warning: base class ‘class IGameDef’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 111 | class Client : public con::PeerHandler, public InventoryManager, public IGameDef | ^~~~~~ In file included from ../src/network/clientpackethandler.cpp:23: ../src/client/camera.h: In constructor ‘Nametag::Nametag(irr::scene::ISceneNode*, const string&, const irr::video::SColor&, const Optional&, const v3f&)’: ../src/client/camera.h:48:15: warning: declaration of ‘pos’ shadows a member of ‘Nametag’ [-Wshadow] 48 | const v3f &pos): | ~~~~~~~~~~~^~~ ../src/client/camera.h:42:6: note: shadowed declaration is here 42 | v3f pos; | ^~~ ../src/client/camera.h:47:35: warning: declaration of ‘bgcolor’ shadows a member of ‘Nametag’ [-Wshadow] 47 | const Optional &bgcolor, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ ../src/client/camera.h:41:26: note: shadowed declaration is here 41 | Optional bgcolor; | ^~~~~~~ ../src/client/camera.h:46:25: warning: declaration of ‘textcolor’ shadows a member of ‘Nametag’ [-Wshadow] 46 | const video::SColor &textcolor, | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/client/camera.h:40:16: note: shadowed declaration is here 40 | video::SColor textcolor; | ^~~~~~~~~ ../src/client/camera.h:45:23: warning: declaration of ‘text’ shadows a member of ‘Nametag’ [-Wshadow] 45 | const std::string &text, | ~~~~~~~~~~~~~~~~~~~^~~~ ../src/client/camera.h:39:14: note: shadowed declaration is here 39 | std::string text; | ^~~~ ../src/client/camera.h: In constructor ‘Nametag::Nametag(irr::scene::ISceneNode*, const string&, const irr::video::SColor&, const Optional&, const v3f&)’: ../src/client/camera.h:48:15: warning: declaration of ‘pos’ shadows a member of ‘Nametag’ [-Wshadow] 48 | const v3f &pos): | ~~~~~~~~~~~^~~ ../src/client/camera.h:42:6: note: shadowed declaration is here 42 | v3f pos; | ^~~ ../src/client/camera.h:47:35: warning: declaration of ‘bgcolor’ shadows a member of ‘Nametag’ [-Wshadow] 47 | const Optional &bgcolor, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ ../src/client/camera.h:41:26: note: shadowed declaration is here 41 | Optional bgcolor; | ^~~~~~~ ../src/client/camera.h:46:25: warning: declaration of ‘textcolor’ shadows a member of ‘Nametag’ [-Wshadow] 46 | const video::SColor &textcolor, | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/client/camera.h:40:16: note: shadowed declaration is here 40 | video::SColor textcolor; | ^~~~~~~~~ ../src/client/camera.h:45:23: warning: declaration of ‘text’ shadows a member of ‘Nametag’ [-Wshadow] 45 | const std::string &text, | ~~~~~~~~~~~~~~~~~~~^~~~ ../src/client/camera.h:39:14: note: shadowed declaration is here 39 | std::string text; | ^~~~ ../src/client/camera.h: In constructor ‘Nametag::Nametag(irr::scene::ISceneNode*, const string&, const irr::video::SColor&, const Optional&, const v3f&)’: ../src/client/camera.h:48:15: warning: declaration of ‘pos’ shadows a member of ‘Nametag’ [-Wshadow] 48 | const v3f &pos): | ~~~~~~~~~~~^~~ ../src/client/camera.h:42:6: note: shadowed declaration is here 42 | v3f pos; | ^~~ ../src/client/camera.h:47:35: warning: declaration of ‘bgcolor’ shadows a member of ‘Nametag’ [-Wshadow] 47 | const Optional &bgcolor, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ ../src/client/camera.h:41:26: note: shadowed declaration is here 41 | Optional bgcolor; | ^~~~~~~ ../src/client/camera.h:46:25: warning: declaration of ‘textcolor’ shadows a member of ‘Nametag’ [-Wshadow] 46 | const video::SColor &textcolor, | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/client/camera.h:40:16: note: shadowed declaration is here 40 | video::SColor textcolor; | ^~~~~~~~~ ../src/client/camera.h:45:23: warning: declaration of ‘text’ shadows a member of ‘Nametag’ [-Wshadow] 45 | const std::string &text, | ~~~~~~~~~~~~~~~~~~~^~~~ ../src/client/camera.h:39:14: note: shadowed declaration is here 39 | std::string text; | ^~~~ In file included from ../src/network/clientpackethandler.cpp:27: ../src/map.h: In member function ‘VoxelArea MapEditEvent::getArea() const’: ../src/map.h:98:15: warning: declaration of ‘p’ shadows a member of ‘MapEditEvent’ [-Wshadow] 98 | for (v3s16 p : modified_blocks) { | ^ ../src/map.h:73:8: note: shadowed declaration is here 73 | v3s16 p; | ^ ../src/map.h: At global scope: ../src/map.h:111:7: warning: ‘class MapEventReceiver’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 111 | class MapEventReceiver | ^~~~~~~~~~~~~~~~ ../src/map.h:124:25: warning: extra ‘;’ [-Wpedantic] 124 | DISABLE_CLASS_COPY(Map); | ^ | - In file included from ../src/mapblock.h:33, from ../src/mapsector.h:24, from ../src/network/clientpackethandler.cpp:28: ../src/mapgen/mapgen.h:179:28: warning: extra ‘;’ [-Wpedantic] 179 | DISABLE_CLASS_COPY(Mapgen); | ^ | - In file included from ../src/network/clientpackethandler.cpp:29: ../src/client/minimap.h: In constructor ‘MinimapMarker::MinimapMarker(irr::scene::ISceneNode*)’: ../src/client/minimap.h:52:35: warning: declaration of ‘parent_node’ shadows a member of ‘MinimapMarker’ [-Wshadow] 52 | MinimapMarker(scene::ISceneNode *parent_node): | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../src/client/minimap.h:56:21: note: shadowed declaration is here 56 | scene::ISceneNode *parent_node; | ^~~~~~~~~~~ ../src/client/minimap.h: In constructor ‘MinimapMarker::MinimapMarker(irr::scene::ISceneNode*)’: ../src/client/minimap.h:52:35: warning: declaration of ‘parent_node’ shadows a member of ‘MinimapMarker’ [-Wshadow] 52 | MinimapMarker(scene::ISceneNode *parent_node): | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../src/client/minimap.h:56:21: note: shadowed declaration is here 56 | scene::ISceneNode *parent_node; | ^~~~~~~~~~~ ../src/client/minimap.h: In constructor ‘MinimapMarker::MinimapMarker(irr::scene::ISceneNode*)’: ../src/client/minimap.h:52:35: warning: declaration of ‘parent_node’ shadows a member of ‘MinimapMarker’ [-Wshadow] 52 | MinimapMarker(scene::ISceneNode *parent_node): | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../src/client/minimap.h:56:21: note: shadowed declaration is here 56 | scene::ISceneNode *parent_node; | ^~~~~~~~~~~ In file included from ../src/server.h:27, from ../src/network/clientpackethandler.cpp:33: ../src/content/mods.h: In constructor ‘ModSpec::ModSpec(const string&, const string&, bool, const string&)’: ../src/content/mods.h:83:101: warning: declaration of ‘virtual_path’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ../src/content/mods.h:71:14: note: shadowed declaration is here 71 | std::string virtual_path; | ^~~~~~~~~~~~ ../src/content/mods.h:83:65: warning: declaration of ‘part_of_modpack’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~^~~~~~~~~~~~~~~ ../src/content/mods.h:52:7: note: shadowed declaration is here 52 | bool part_of_modpack = false; | ^~~~~~~~~~~~~~~ ../src/content/mods.h:83:54: warning: declaration of ‘path’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~ ../src/content/mods.h:43:14: note: shadowed declaration is here 43 | std::string path; | ^~~~ ../src/content/mods.h:83:29: warning: declaration of ‘name’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~ ../src/content/mods.h:41:14: note: shadowed declaration is here 41 | std::string name; | ^~~~ ../src/content/mods.h: In constructor ‘ModSpec::ModSpec(const string&, const string&, bool, const string&)’: ../src/content/mods.h:83:101: warning: declaration of ‘virtual_path’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ../src/content/mods.h:71:14: note: shadowed declaration is here 71 | std::string virtual_path; | ^~~~~~~~~~~~ ../src/content/mods.h:83:65: warning: declaration of ‘part_of_modpack’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~^~~~~~~~~~~~~~~ ../src/content/mods.h:52:7: note: shadowed declaration is here 52 | bool part_of_modpack = false; | ^~~~~~~~~~~~~~~ ../src/content/mods.h:83:54: warning: declaration of ‘path’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~ ../src/content/mods.h:43:14: note: shadowed declaration is here 43 | std::string path; | ^~~~ ../src/content/mods.h:83:29: warning: declaration of ‘name’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~ ../src/content/mods.h:41:14: note: shadowed declaration is here 41 | std::string name; | ^~~~ ../src/content/mods.h: In constructor ‘ModSpec::ModSpec(const string&, const string&, bool, const string&)’: ../src/content/mods.h:83:101: warning: declaration of ‘virtual_path’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ../src/content/mods.h:71:14: note: shadowed declaration is here 71 | std::string virtual_path; | ^~~~~~~~~~~~ ../src/content/mods.h:83:65: warning: declaration of ‘part_of_modpack’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~^~~~~~~~~~~~~~~ ../src/content/mods.h:52:7: note: shadowed declaration is here 52 | bool part_of_modpack = false; | ^~~~~~~~~~~~~~~ ../src/content/mods.h:83:54: warning: declaration of ‘path’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~ ../src/content/mods.h:43:14: note: shadowed declaration is here 43 | std::string path; | ^~~~ ../src/content/mods.h:83:29: warning: declaration of ‘name’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~ ../src/content/mods.h:41:14: note: shadowed declaration is here 41 | std::string name; | ^~~~ In file included from ../src/server/activeobjectmgr.h:25, from ../src/serverenvironment.h:26, from ../src/server.h:38, from ../src/network/clientpackethandler.cpp:33: ../src/server/serveractiveobject.h: At global scope: ../src/server/serveractiveobject.h:51:7: warning: base class ‘class ActiveObject’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 51 | class ServerActiveObject : public ActiveObject | ^~~~~~~~~~~~~~~~~~ In file included from ../src/client/activeobjectmgr.h:24, from ../src/client/clientenvironment.h:26, from ../src/client/client.h:22, from ../src/network/clientpackethandler.cpp:20: ../src/client/../activeobjectmgr.h: In instantiation of ‘class ActiveObjectMgr’: ../src/server/activeobjectmgr.h:29:34: required from here ../src/client/../activeobjectmgr.h:29:7: warning: ‘class ActiveObjectMgr’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 29 | class ActiveObjectMgr | ^~~~~~~~~~~~~~~ In file included from ../src/serverenvironment.h:26, from ../src/server.h:38, from ../src/network/clientpackethandler.cpp:33: ../src/server/activeobjectmgr.h:29:7: warning: base class ‘class ActiveObjectMgr’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 29 | class ActiveObjectMgr : public ::ActiveObjectMgr | ^~~~~~~~~~~~~~~ ../src/server/activeobjectmgr.h:29:7: warning: ‘class server::ActiveObjectMgr’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] In file included from ../src/network/clientpackethandler.cpp:33: ../src/server.h:155:28: warning: extra ‘;’ [-Wpedantic] 155 | DISABLE_CLASS_COPY(Server); | ^ | - ../src/server.h:137:7: warning: base class ‘class MapEventReceiver’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 137 | class Server : public con::PeerHandler, public MapEventReceiver, | ^~~~~~ ../src/server.h:137:7: warning: base class ‘class IGameDef’ has accessible non-virtual destructor [-Wnon-virtual-dtor] In file included from ../src/network/clientpackethandler.cpp:36: ../src/client/sound.h:27:7: warning: ‘class OnDemandSoundFetcher’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 27 | class OnDemandSoundFetcher | ^~~~~~~~~~~~~~~~~~~~ In file included from ../src/network/clientpackethandler.cpp:38: ../src/network/connection.h:333:39: warning: extra ‘;’ [-Wpedantic] 333 | DISABLE_CLASS_COPY(ConnectionCommand); | ^ | - ../src/network/connection.h:680:37: warning: extra ‘;’ [-Wpedantic] 680 | DISABLE_CLASS_COPY(ConnectionEvent); | ^ | - In file included from ../src/script/scripting_client.h:23, from ../src/network/clientpackethandler.cpp:39: ../src/script/cpp_api/s_base.h:86:35: warning: extra ‘;’ [-Wpedantic] 86 | DISABLE_CLASS_COPY(ScriptApiBase); | ^ | - [6/272] Building CXX object src/CMakeFiles/main.dir/main.cpp.o FAILED: src/CMakeFiles/main.dir/main.cpp.o /usr/bin/c++ -DUSE_CMAKE_CONFIG_H -D_IRR_STATIC_LIB_ -I../src -Isrc -I/usr/include/postgresql -I/usr/include/leveldb -I/usr/include/hiredis -I../src/script -I../src/util -isystem /usr/include/luajit-2.1 -isystem /usr/include/jsoncpp -isystem /home/mezhir/code/open_contrib/irrlicht/include -isystem /home/mezhir/code/open_contrib/irrlicht/source/Irrlicht -DNDEBUG -Wall -Wextra -Wno-unused-parameter -Wno-implicit-fallthrough -pipe -funroll-loops -O3 -fomit-frame-pointer -fno-math-errno -fno-trapping-math -ffinite-math-only -fno-signed-zeros -Wall -Wshadow -Wnon-virtual-dtor -pedantic -std=gnu++14 -MD -MT src/CMakeFiles/main.dir/main.cpp.o -MF src/CMakeFiles/main.dir/main.cpp.o.d -o src/CMakeFiles/main.dir/main.cpp.o -c ../src/main.cpp In file included from ../src/util/string.h:26, from /usr/include/memory.h:29, from /home/mezhir/code/open_contrib/irrlicht/include/irrAllocator.h:11, from /home/mezhir/code/open_contrib/irrlicht/include/irrString.h:9, from /home/mezhir/code/open_contrib/irrlicht/include/matrix4.h:14, from /home/mezhir/code/open_contrib/irrlicht/include/SMaterial.h:9, from /home/mezhir/code/open_contrib/irrlicht/include/IMeshBuffer.h:9, from /home/mezhir/code/open_contrib/irrlicht/include/CMeshBuffer.h:9, from /home/mezhir/code/open_contrib/irrlicht/include/irrlicht.h:35, from ../src/main.cpp:21: /usr/include/c++/10/cstring:77:11: error: ‘memchr’ has not been declared in ‘::’ 77 | using ::memchr; | ^~~~~~ /usr/include/c++/10/cstring:78:11: error: ‘memcmp’ has not been declared in ‘::’ 78 | using ::memcmp; | ^~~~~~ /usr/include/c++/10/cstring:79:11: error: ‘memcpy’ has not been declared in ‘::’ 79 | using ::memcpy; | ^~~~~~ /usr/include/c++/10/cstring:80:11: error: ‘memmove’ has not been declared in ‘::’ 80 | using ::memmove; | ^~~~~~~ /usr/include/c++/10/cstring:81:11: error: ‘memset’ has not been declared in ‘::’ 81 | using ::memset; | ^~~~~~ /usr/include/c++/10/cstring:82:11: error: ‘strcat’ has not been declared in ‘::’ 82 | using ::strcat; | ^~~~~~ /usr/include/c++/10/cstring:83:11: error: ‘strcmp’ has not been declared in ‘::’ 83 | using ::strcmp; | ^~~~~~ /usr/include/c++/10/cstring:84:11: error: ‘strcoll’ has not been declared in ‘::’ 84 | using ::strcoll; | ^~~~~~~ /usr/include/c++/10/cstring:85:11: error: ‘strcpy’ has not been declared in ‘::’ 85 | using ::strcpy; | ^~~~~~ /usr/include/c++/10/cstring:86:11: error: ‘strcspn’ has not been declared in ‘::’ 86 | using ::strcspn; | ^~~~~~~ /usr/include/c++/10/cstring:87:11: error: ‘strerror’ has not been declared in ‘::’ 87 | using ::strerror; | ^~~~~~~~ /usr/include/c++/10/cstring:88:11: error: ‘strlen’ has not been declared in ‘::’ 88 | using ::strlen; | ^~~~~~ /usr/include/c++/10/cstring:89:11: error: ‘strncat’ has not been declared in ‘::’ 89 | using ::strncat; | ^~~~~~~ /usr/include/c++/10/cstring:90:11: error: ‘strncmp’ has not been declared in ‘::’ 90 | using ::strncmp; | ^~~~~~~ /usr/include/c++/10/cstring:91:11: error: ‘strncpy’ has not been declared in ‘::’ 91 | using ::strncpy; | ^~~~~~~ /usr/include/c++/10/cstring:92:11: error: ‘strspn’ has not been declared in ‘::’ 92 | using ::strspn; | ^~~~~~ /usr/include/c++/10/cstring:93:11: error: ‘strtok’ has not been declared in ‘::’ 93 | using ::strtok; | ^~~~~~ /usr/include/c++/10/cstring:94:11: error: ‘strxfrm’ has not been declared in ‘::’ 94 | using ::strxfrm; | ^~~~~~~ /usr/include/c++/10/cstring:95:11: error: ‘strchr’ has not been declared in ‘::’ 95 | using ::strchr; | ^~~~~~ /usr/include/c++/10/cstring:96:11: error: ‘strpbrk’ has not been declared in ‘::’ 96 | using ::strpbrk; | ^~~~~~~ /usr/include/c++/10/cstring:97:11: error: ‘strrchr’ has not been declared in ‘::’ 97 | using ::strrchr; | ^~~~~~~ /usr/include/c++/10/cstring:98:11: error: ‘strstr’ has not been declared in ‘::’ 98 | using ::strstr; | ^~~~~~ In file included from /usr/include/memory.h:29, from /home/mezhir/code/open_contrib/irrlicht/include/irrAllocator.h:11, from /home/mezhir/code/open_contrib/irrlicht/include/irrString.h:9, from /home/mezhir/code/open_contrib/irrlicht/include/matrix4.h:14, from /home/mezhir/code/open_contrib/irrlicht/include/SMaterial.h:9, from /home/mezhir/code/open_contrib/irrlicht/include/IMeshBuffer.h:9, from /home/mezhir/code/open_contrib/irrlicht/include/CMeshBuffer.h:9, from /home/mezhir/code/open_contrib/irrlicht/include/irrlicht.h:35, from ../src/main.cpp:21: ../src/util/string.h:734:53: error: ‘stringw’ in namespace ‘irr::core’ does not name a type 734 | inline std::string stringw_to_utf8(const irr::core::stringw &input) | ^~~~~~~ ../src/util/string.h: In function ‘std::string stringw_to_utf8(const int&)’: ../src/util/string.h:736:25: error: request for member ‘c_str’ in ‘input’, which is of non-class type ‘const int’ 736 | std::wstring str(input.c_str()); | ^~~~~ ../src/util/string.h: At global scope: ../src/util/string.h:743:19: error: ‘stringw’ in namespace ‘irr::core’ does not name a type 743 | inline irr::core::stringw utf8_to_stringw(const std::string &input) | ^~~~~~~ In file included from /home/mezhir/code/open_contrib/irrlicht/include/matrix4.h:14, from /home/mezhir/code/open_contrib/irrlicht/include/SMaterial.h:9, from /home/mezhir/code/open_contrib/irrlicht/include/IMeshBuffer.h:9, from /home/mezhir/code/open_contrib/irrlicht/include/CMeshBuffer.h:9, from /home/mezhir/code/open_contrib/irrlicht/include/irrlicht.h:35, from ../src/main.cpp:21: /home/mezhir/code/open_contrib/irrlicht/include/irrString.h: In function ‘size_t irr::core::multibyteToWString(irr::core::string&, const char*)’: /home/mezhir/code/open_contrib/irrlicht/include/irrString.h:1451:35: error: ‘strlen’ is not a member of ‘std’ 1451 | const u32 s = source ? (u32)std::strlen(source) : 0; | ^~~~~~ In file included from /home/mezhir/code/open_contrib/irrlicht/include/SMaterial.h:9, from /home/mezhir/code/open_contrib/irrlicht/include/IMeshBuffer.h:9, from /home/mezhir/code/open_contrib/irrlicht/include/CMeshBuffer.h:9, from /home/mezhir/code/open_contrib/irrlicht/include/irrlicht.h:35, from ../src/main.cpp:21: /home/mezhir/code/open_contrib/irrlicht/include/matrix4.h: In copy constructor ‘irr::core::CMatrix4::CMatrix4(const irr::core::CMatrix4&, irr::core::CMatrix4::eConstructor)’: /home/mezhir/code/open_contrib/irrlicht/include/matrix4.h:507:11: error: ‘memset’ is not a member of ‘std’ 507 | std::memset(M, 0, 16*sizeof(T)); | ^~~~~~ /home/mezhir/code/open_contrib/irrlicht/include/matrix4.h:511:11: error: ‘memset’ is not a member of ‘std’ 511 | std::memset(M, 0, 16*sizeof(T)); | ^~~~~~ /home/mezhir/code/open_contrib/irrlicht/include/matrix4.h: In member function ‘irr::core::CMatrix4& irr::core::CMatrix4::makeIdentity()’: /home/mezhir/code/open_contrib/irrlicht/include/matrix4.h:1043:9: error: ‘memset’ is not a member of ‘std’ 1043 | std::memset(M, 0, 16*sizeof(T)); | ^~~~~~ In file included from /home/mezhir/code/open_contrib/irrlicht/include/irrlicht.h:82, from ../src/main.cpp:21: /home/mezhir/code/open_contrib/irrlicht/include/IImage.h: In member function ‘void irr::video::IImage::setMipMapsData(void*, bool, bool)’: /home/mezhir/code/open_contrib/irrlicht/include/IImage.h:315:6: error: ‘memcpy’ was not declared in this scope 315 | memcpy(MipMapsData, data, dataSize); | ^~~~~~ In file included from /home/mezhir/code/open_contrib/irrlicht/include/irrlicht.h:82, from ../src/main.cpp:21: /home/mezhir/code/open_contrib/irrlicht/include/IImage.h:1:1: note: ‘memcpy’ is defined in header ‘’; did you forget to ‘#include ’? +++ |+#include 1 | // Copyright (C) 2002-2012 Nikolaus Gebhardt In file included from ../src/util/container.h:25, from ../src/chat_interface.h:22, from ../src/main.cpp:24: ../src/threading/semaphore.h: At global scope: ../src/threading/semaphore.h:38:31: warning: extra ‘;’ [-Wpedantic] 38 | DISABLE_CLASS_COPY(Semaphore); | ^ | - In file included from ../src/debug.h:26, from ../src/main.cpp:25: ../src/log.h:103:7: warning: ‘class ILogOutput’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 103 | class ILogOutput { | ^~~~~~~~~~ ../src/log.h:111:7: warning: base class ‘class ILogOutput’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 111 | class ICombinedLogOutput : public ILogOutput { | ^~~~~~~~~~~~~~~~~~ ../src/log.h:111:7: warning: ‘class ICombinedLogOutput’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] ../src/log.h:121:7: warning: base class ‘class ICombinedLogOutput’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 121 | class StreamLogOutput : public ICombinedLogOutput { | ^~~~~~~~~~~~~~~ ../src/log.h:121:7: warning: ‘class StreamLogOutput’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] ../src/log.h:140:7: warning: base class ‘class ICombinedLogOutput’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 140 | class FileLogOutput : public ICombinedLogOutput { | ^~~~~~~~~~~~~ ../src/log.h:140:7: warning: ‘class FileLogOutput’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] ../src/log.h:153:7: warning: base class ‘class ICombinedLogOutput’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 153 | class LogOutputBuffer : public ICombinedLogOutput { | ^~~~~~~~~~~~~~~ ../src/log.h:216:7: warning: ‘class LogTarget’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 216 | class LogTarget { | ^~~~~~~~~ ../src/log.h:290:31: warning: extra ‘;’ [-Wpedantic] 290 | DISABLE_CLASS_COPY(LogStream); | ^ | - In file included from ../src/mapnode.h:24, from ../src/unittest/test.h:28, from ../src/main.cpp:26: ../src/util/pointer.h: In constructor ‘ConstSharedPtr::ConstSharedPtr(T*)’: ../src/util/pointer.h:30:20: warning: declaration of ‘ptr’ shadows a member of ‘ConstSharedPtr’ [-Wshadow] 30 | ConstSharedPtr(T *ptr) : ptr(ptr) {} | ~~~^~~ ../src/util/pointer.h:38:21: note: shadowed declaration is here 38 | std::shared_ptr ptr; | ^~~ ../src/util/pointer.h: In constructor ‘ConstSharedPtr::ConstSharedPtr(const std::shared_ptr<_Tp>&)’: ../src/util/pointer.h:31:43: warning: declaration of ‘ptr’ shadows a member of ‘ConstSharedPtr’ [-Wshadow] 31 | ConstSharedPtr(const std::shared_ptr &ptr) : ptr(ptr) {} | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ ../src/util/pointer.h:38:21: note: shadowed declaration is here 38 | std::shared_ptr ptr; | ^~~ ../src/util/pointer.h: In constructor ‘SharedBuffer::SharedBuffer(unsigned int)’: ../src/util/pointer.h:171:22: error: ‘memset’ is not a member of ‘std’ 171 | std::memset(data,0,sizeof(T)*m_size); | ^~~~~~ In file included from ../src/main.cpp:26: ../src/unittest/test.h: At global scope: ../src/unittest/test.h:104:7: warning: ‘class TestBase’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 104 | class TestBase { | ^~~~~~~~ In file included from ../src/server.h:23, from ../src/main.cpp:27: ../src/map.h: In member function ‘VoxelArea MapEditEvent::getArea() const’: ../src/map.h:98:15: warning: declaration of ‘p’ shadows a member of ‘MapEditEvent’ [-Wshadow] 98 | for (v3s16 p : modified_blocks) { | ^ ../src/map.h:73:8: note: shadowed declaration is here 73 | v3s16 p; | ^ ../src/map.h: At global scope: ../src/map.h:111:7: warning: ‘class MapEventReceiver’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 111 | class MapEventReceiver | ^~~~~~~~~~~~~~~~ ../src/map.h:124:25: warning: extra ‘;’ [-Wpedantic] 124 | DISABLE_CLASS_COPY(Map); | ^ | - In file included from ../src/server.h:25, from ../src/main.cpp:27: ../src/gamedef.h:49:7: warning: ‘class IGameDef’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 49 | class IGameDef | ^~~~~~~~ In file included from /usr/include/jsoncpp/json/config.h:102, from /usr/include/jsoncpp/json/json.h:9, from ../src/content/mods.h:28, from ../src/server.h:27, from ../src/main.cpp:27: /usr/include/jsoncpp/json/allocator.h: In member function ‘void Json::SecureAllocator::deallocate(Json::SecureAllocator::pointer, Json::SecureAllocator::size_type)’: /usr/include/jsoncpp/json/allocator.h:42:10: error: ‘memset’ is not a member of ‘std’ 42 | std::memset(p, 0, n * sizeof(T)); | ^~~~~~ In file included from /usr/include/jsoncpp/json/reader.h:11, from /usr/include/jsoncpp/json/json.h:11, from ../src/content/mods.h:28, from ../src/server.h:27, from ../src/main.cpp:27: /usr/include/jsoncpp/json/value.h: In member function ‘void Json::Value::setComment(const char*, Json::CommentPlacement)’: /usr/include/jsoncpp/json/value.h:567:32: error: ‘strlen’ was not declared in this scope 567 | setComment(String(comment, strlen(comment)), placement); | ^~~~~~ /usr/include/jsoncpp/json/value.h:1:1: note: ‘strlen’ is defined in header ‘’; did you forget to ‘#include ’? +++ |+#include 1 | // Copyright 2007-2010 Baptiste Lepilleur and The JsonCpp Authors In file included from ../src/content/mods.h:33, from ../src/server.h:27, from ../src/main.cpp:27: ../src/content/subgames.h: In constructor ‘SubgameSpec::SubgameSpec(const string&, const string&, const string&, const std::unordered_map, std::__cxx11::basic_string >&, const string&, const string&, const string&, int)’: ../src/content/subgames.h:52:40: warning: declaration of ‘release’ shadows a member of ‘SubgameSpec’ [-Wshadow] 52 | const std::string &author = "", int release = 0) : | ~~~~^~~~~~~~~~~ ../src/content/subgames.h:34:6: note: shadowed declaration is here 34 | int release; | ^~~~~~~ ../src/content/subgames.h:52:23: warning: declaration of ‘author’ shadows a member of ‘SubgameSpec’ [-Wshadow] 52 | const std::string &author = "", int release = 0) : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../src/content/subgames.h:33:14: note: shadowed declaration is here 33 | std::string author; | ^~~~~~ ../src/content/subgames.h:51:23: warning: declaration of ‘menuicon_path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 51 | const std::string &menuicon_path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:42:14: note: shadowed declaration is here 42 | std::string menuicon_path; | ^~~~~~~~~~~~~ ../src/content/subgames.h:50:23: warning: declaration of ‘title’ shadows a member of ‘SubgameSpec’ [-Wshadow] 50 | const std::string &title = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ ../src/content/subgames.h:32:14: note: shadowed declaration is here 32 | std::string title; | ^~~~~ ../src/content/subgames.h:49:56: warning: declaration of ‘addon_mods_paths’ shadows a member of ‘SubgameSpec’ [-Wshadow] 49 | const std::unordered_map &addon_mods_paths = {}, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:41:47: note: shadowed declaration is here 41 | std::unordered_map addon_mods_paths; | ^~~~~~~~~~~~~~~~ ../src/content/subgames.h:48:23: warning: declaration of ‘gamemods_path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 48 | const std::string &gamemods_path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:36:14: note: shadowed declaration is here 36 | std::string gamemods_path; | ^~~~~~~~~~~~~ ../src/content/subgames.h:47:61: warning: declaration of ‘path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 47 | SubgameSpec(const std::string &id = "", const std::string &path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:35:14: note: shadowed declaration is here 35 | std::string path; | ^~~~ ../src/content/subgames.h:47:33: warning: declaration of ‘id’ shadows a member of ‘SubgameSpec’ [-Wshadow] 47 | SubgameSpec(const std::string &id = "", const std::string &path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~ ../src/content/subgames.h:31:14: note: shadowed declaration is here 31 | std::string id; | ^~ ../src/content/subgames.h: In constructor ‘SubgameSpec::SubgameSpec(const string&, const string&, const string&, const std::unordered_map, std::__cxx11::basic_string >&, const string&, const string&, const string&, int)’: ../src/content/subgames.h:52:40: warning: declaration of ‘release’ shadows a member of ‘SubgameSpec’ [-Wshadow] 52 | const std::string &author = "", int release = 0) : | ~~~~^~~~~~~~~~~ ../src/content/subgames.h:34:6: note: shadowed declaration is here 34 | int release; | ^~~~~~~ ../src/content/subgames.h:52:23: warning: declaration of ‘author’ shadows a member of ‘SubgameSpec’ [-Wshadow] 52 | const std::string &author = "", int release = 0) : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../src/content/subgames.h:33:14: note: shadowed declaration is here 33 | std::string author; | ^~~~~~ ../src/content/subgames.h:51:23: warning: declaration of ‘menuicon_path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 51 | const std::string &menuicon_path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:42:14: note: shadowed declaration is here 42 | std::string menuicon_path; | ^~~~~~~~~~~~~ ../src/content/subgames.h:50:23: warning: declaration of ‘title’ shadows a member of ‘SubgameSpec’ [-Wshadow] 50 | const std::string &title = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ ../src/content/subgames.h:32:14: note: shadowed declaration is here 32 | std::string title; | ^~~~~ ../src/content/subgames.h:49:56: warning: declaration of ‘addon_mods_paths’ shadows a member of ‘SubgameSpec’ [-Wshadow] 49 | const std::unordered_map &addon_mods_paths = {}, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:41:47: note: shadowed declaration is here 41 | std::unordered_map addon_mods_paths; | ^~~~~~~~~~~~~~~~ ../src/content/subgames.h:48:23: warning: declaration of ‘gamemods_path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 48 | const std::string &gamemods_path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:36:14: note: shadowed declaration is here 36 | std::string gamemods_path; | ^~~~~~~~~~~~~ ../src/content/subgames.h:47:61: warning: declaration of ‘path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 47 | SubgameSpec(const std::string &id = "", const std::string &path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:35:14: note: shadowed declaration is here 35 | std::string path; | ^~~~ ../src/content/subgames.h:47:33: warning: declaration of ‘id’ shadows a member of ‘SubgameSpec’ [-Wshadow] 47 | SubgameSpec(const std::string &id = "", const std::string &path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~ ../src/content/subgames.h:31:14: note: shadowed declaration is here 31 | std::string id; | ^~ ../src/content/subgames.h: In constructor ‘SubgameSpec::SubgameSpec(const string&, const string&, const string&, const std::unordered_map, std::__cxx11::basic_string >&, const string&, const string&, const string&, int)’: ../src/content/subgames.h:52:40: warning: declaration of ‘release’ shadows a member of ‘SubgameSpec’ [-Wshadow] 52 | const std::string &author = "", int release = 0) : | ~~~~^~~~~~~~~~~ ../src/content/subgames.h:34:6: note: shadowed declaration is here 34 | int release; | ^~~~~~~ ../src/content/subgames.h:52:23: warning: declaration of ‘author’ shadows a member of ‘SubgameSpec’ [-Wshadow] 52 | const std::string &author = "", int release = 0) : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../src/content/subgames.h:33:14: note: shadowed declaration is here 33 | std::string author; | ^~~~~~ ../src/content/subgames.h:51:23: warning: declaration of ‘menuicon_path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 51 | const std::string &menuicon_path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:42:14: note: shadowed declaration is here 42 | std::string menuicon_path; | ^~~~~~~~~~~~~ ../src/content/subgames.h:50:23: warning: declaration of ‘title’ shadows a member of ‘SubgameSpec’ [-Wshadow] 50 | const std::string &title = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ ../src/content/subgames.h:32:14: note: shadowed declaration is here 32 | std::string title; | ^~~~~ ../src/content/subgames.h:49:56: warning: declaration of ‘addon_mods_paths’ shadows a member of ‘SubgameSpec’ [-Wshadow] 49 | const std::unordered_map &addon_mods_paths = {}, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:41:47: note: shadowed declaration is here 41 | std::unordered_map addon_mods_paths; | ^~~~~~~~~~~~~~~~ ../src/content/subgames.h:48:23: warning: declaration of ‘gamemods_path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 48 | const std::string &gamemods_path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ ../src/content/subgames.h:36:14: note: shadowed declaration is here 36 | std::string gamemods_path; | ^~~~~~~~~~~~~ ../src/content/subgames.h:47:61: warning: declaration of ‘path’ shadows a member of ‘SubgameSpec’ [-Wshadow] 47 | SubgameSpec(const std::string &id = "", const std::string &path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:35:14: note: shadowed declaration is here 35 | std::string path; | ^~~~ ../src/content/subgames.h:47:33: warning: declaration of ‘id’ shadows a member of ‘SubgameSpec’ [-Wshadow] 47 | SubgameSpec(const std::string &id = "", const std::string &path = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~ ../src/content/subgames.h:31:14: note: shadowed declaration is here 31 | std::string id; | ^~ ../src/content/subgames.h: In constructor ‘WorldSpec::WorldSpec(const string&, const string&, const string&)’: ../src/content/subgames.h:84:23: warning: declaration of ‘gameid’ shadows a member of ‘WorldSpec’ [-Wshadow] 84 | const std::string &gameid = "") : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../src/content/subgames.h:81:14: note: shadowed declaration is here 81 | std::string gameid; | ^~~~~~ ../src/content/subgames.h:83:61: warning: declaration of ‘name’ shadows a member of ‘WorldSpec’ [-Wshadow] 83 | WorldSpec(const std::string &path = "", const std::string &name = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:80:14: note: shadowed declaration is here 80 | std::string name; | ^~~~ ../src/content/subgames.h:83:31: warning: declaration of ‘path’ shadows a member of ‘WorldSpec’ [-Wshadow] 83 | WorldSpec(const std::string &path = "", const std::string &name = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:79:14: note: shadowed declaration is here 79 | std::string path; | ^~~~ ../src/content/subgames.h: In constructor ‘WorldSpec::WorldSpec(const string&, const string&, const string&)’: ../src/content/subgames.h:84:23: warning: declaration of ‘gameid’ shadows a member of ‘WorldSpec’ [-Wshadow] 84 | const std::string &gameid = "") : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../src/content/subgames.h:81:14: note: shadowed declaration is here 81 | std::string gameid; | ^~~~~~ ../src/content/subgames.h:83:61: warning: declaration of ‘name’ shadows a member of ‘WorldSpec’ [-Wshadow] 83 | WorldSpec(const std::string &path = "", const std::string &name = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:80:14: note: shadowed declaration is here 80 | std::string name; | ^~~~ ../src/content/subgames.h:83:31: warning: declaration of ‘path’ shadows a member of ‘WorldSpec’ [-Wshadow] 83 | WorldSpec(const std::string &path = "", const std::string &name = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:79:14: note: shadowed declaration is here 79 | std::string path; | ^~~~ ../src/content/subgames.h: In constructor ‘WorldSpec::WorldSpec(const string&, const string&, const string&)’: ../src/content/subgames.h:84:23: warning: declaration of ‘gameid’ shadows a member of ‘WorldSpec’ [-Wshadow] 84 | const std::string &gameid = "") : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ../src/content/subgames.h:81:14: note: shadowed declaration is here 81 | std::string gameid; | ^~~~~~ ../src/content/subgames.h:83:61: warning: declaration of ‘name’ shadows a member of ‘WorldSpec’ [-Wshadow] 83 | WorldSpec(const std::string &path = "", const std::string &name = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:80:14: note: shadowed declaration is here 80 | std::string name; | ^~~~ ../src/content/subgames.h:83:31: warning: declaration of ‘path’ shadows a member of ‘WorldSpec’ [-Wshadow] 83 | WorldSpec(const std::string &path = "", const std::string &name = "", | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/content/subgames.h:79:14: note: shadowed declaration is here 79 | std::string path; | ^~~~ In file included from ../src/server.h:27, from ../src/main.cpp:27: ../src/content/mods.h: In constructor ‘ModSpec::ModSpec(const string&, const string&, bool, const string&)’: ../src/content/mods.h:83:101: warning: declaration of ‘virtual_path’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ../src/content/mods.h:71:14: note: shadowed declaration is here 71 | std::string virtual_path; | ^~~~~~~~~~~~ ../src/content/mods.h:83:65: warning: declaration of ‘part_of_modpack’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~^~~~~~~~~~~~~~~ ../src/content/mods.h:52:7: note: shadowed declaration is here 52 | bool part_of_modpack = false; | ^~~~~~~~~~~~~~~ ../src/content/mods.h:83:54: warning: declaration of ‘path’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~ ../src/content/mods.h:43:14: note: shadowed declaration is here 43 | std::string path; | ^~~~ ../src/content/mods.h:83:29: warning: declaration of ‘name’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~ ../src/content/mods.h:41:14: note: shadowed declaration is here 41 | std::string name; | ^~~~ ../src/content/mods.h: In constructor ‘ModSpec::ModSpec(const string&, const string&, bool, const string&)’: ../src/content/mods.h:83:101: warning: declaration of ‘virtual_path’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ../src/content/mods.h:71:14: note: shadowed declaration is here 71 | std::string virtual_path; | ^~~~~~~~~~~~ ../src/content/mods.h:83:65: warning: declaration of ‘part_of_modpack’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~^~~~~~~~~~~~~~~ ../src/content/mods.h:52:7: note: shadowed declaration is here 52 | bool part_of_modpack = false; | ^~~~~~~~~~~~~~~ ../src/content/mods.h:83:54: warning: declaration of ‘path’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~ ../src/content/mods.h:43:14: note: shadowed declaration is here 43 | std::string path; | ^~~~ ../src/content/mods.h:83:29: warning: declaration of ‘name’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~ ../src/content/mods.h:41:14: note: shadowed declaration is here 41 | std::string name; | ^~~~ ../src/content/mods.h: In constructor ‘ModSpec::ModSpec(const string&, const string&, bool, const string&)’: ../src/content/mods.h:83:101: warning: declaration of ‘virtual_path’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ../src/content/mods.h:71:14: note: shadowed declaration is here 71 | std::string virtual_path; | ^~~~~~~~~~~~ ../src/content/mods.h:83:65: warning: declaration of ‘part_of_modpack’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~^~~~~~~~~~~~~~~ ../src/content/mods.h:52:7: note: shadowed declaration is here 52 | bool part_of_modpack = false; | ^~~~~~~~~~~~~~~ ../src/content/mods.h:83:54: warning: declaration of ‘path’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~ ../src/content/mods.h:43:14: note: shadowed declaration is here 43 | std::string path; | ^~~~ ../src/content/mods.h:83:29: warning: declaration of ‘name’ shadows a member of ‘ModSpec’ [-Wshadow] 83 | ModSpec(const std::string &name, const std::string &path, bool part_of_modpack, const std::string &virtual_path) : | ~~~~~~~~~~~~~~~~~~~^~~~ ../src/content/mods.h:41:14: note: shadowed declaration is here 41 | std::string name; | ^~~~ In file included from ../src/sound.h:24, from ../src/itemdef.h:28, from ../src/inventory.h:22, from ../src/inventorymanager.h:22, from ../src/server.h:28, from ../src/main.cpp:27: ../src/util/serialize.h: In function ‘irr::u16 readU16(const u8*)’: ../src/util/serialize.h:73:2: error: ‘memcpy’ was not declared in this scope 73 | memcpy(&val, data, 2); | ^~~~~~ ../src/util/serialize.h:42:1: note: ‘memcpy’ is defined in header ‘’; did you forget to ‘#include ’? 41 | #include // for memcpy +++ |+#include 42 | #include ../src/util/serialize.h: In function ‘irr::u32 readU32(const u8*)’: ../src/util/serialize.h:80:2: error: ‘memcpy’ was not declared in this scope 80 | memcpy(&val, data, 4); | ^~~~~~ ../src/util/serialize.h:80:2: note: ‘memcpy’ is defined in header ‘’; did you forget to ‘#include ’? ../src/util/serialize.h: In function ‘irr::u64 readU64(const u8*)’: ../src/util/serialize.h:87:2: error: ‘memcpy’ was not declared in this scope 87 | memcpy(&val, data, 8); | ^~~~~~ ../src/util/serialize.h:87:2: note: ‘memcpy’ is defined in header ‘’; did you forget to ‘#include ’? ../src/util/serialize.h: In function ‘void writeU16(irr::u8*, irr::u16)’: ../src/util/serialize.h:94:2: error: ‘memcpy’ was not declared in this scope 94 | memcpy(data, &val, 2); | ^~~~~~ ../src/util/serialize.h:94:2: note: ‘memcpy’ is defined in header ‘’; did you forget to ‘#include ’? ../src/util/serialize.h: In function ‘void writeU32(irr::u8*, irr::u32)’: ../src/util/serialize.h:100:2: error: ‘memcpy’ was not declared in this scope 100 | memcpy(data, &val, 4); | ^~~~~~ ../src/util/serialize.h:100:2: note: ‘memcpy’ is defined in header ‘’; did you forget to ‘#include ’? ../src/util/serialize.h: In function ‘void writeU64(irr::u8*, irr::u64)’: ../src/util/serialize.h:106:2: error: ‘memcpy’ was not declared in this scope 106 | memcpy(data, &val, 8); | ^~~~~~ ../src/util/serialize.h:106:2: note: ‘memcpy’ is defined in header ‘’; did you forget to ‘#include ’? ../src/util/serialize.h: In function ‘irr::f32 readF32(const u8*)’: ../src/util/serialize.h:201:4: error: ‘memcpy’ was not declared in this scope 201 | memcpy(&f, &u, 4); | ^~~~~~ ../src/util/serialize.h:201:4: note: ‘memcpy’ is defined in header ‘’; did you forget to ‘#include ’? ../src/util/serialize.h: In function ‘void writeF32(irr::u8*, irr::f32)’: ../src/util/serialize.h:317:4: error: ‘memcpy’ was not declared in this scope 317 | memcpy(&u, &i, 4); | ^~~~~~ ../src/util/serialize.h:317:4: note: ‘memcpy’ is defined in header ‘’; did you forget to ‘#include ’? ../src/util/serialize.h: At global scope: ../src/util/serialize.h:400:41: warning: extra ‘;’ [-Wpedantic] 400 | MAKE_STREAM_READ_FXN(u8, U8, 1); | ^ ../src/util/serialize.h:401:41: warning: extra ‘;’ [-Wpedantic] 401 | MAKE_STREAM_READ_FXN(u16, U16, 2); | ^ ../src/util/serialize.h:402:41: warning: extra ‘;’ [-Wpedantic] 402 | MAKE_STREAM_READ_FXN(u32, U32, 4); | ^ ../src/util/serialize.h:403:41: warning: extra ‘;’ [-Wpedantic] 403 | MAKE_STREAM_READ_FXN(u64, U64, 8); | ^ ../src/util/serialize.h:404:41: warning: extra ‘;’ [-Wpedantic] 404 | MAKE_STREAM_READ_FXN(s8, S8, 1); | ^ ../src/util/serialize.h:405:41: warning: extra ‘;’ [-Wpedantic] 405 | MAKE_STREAM_READ_FXN(s16, S16, 2); | ^ ../src/util/serialize.h:406:41: warning: extra ‘;’ [-Wpedantic] 406 | MAKE_STREAM_READ_FXN(s32, S32, 4); | ^ ../src/util/serialize.h:407:41: warning: extra ‘;’ [-Wpedantic] 407 | MAKE_STREAM_READ_FXN(s64, S64, 8); | ^ ../src/util/serialize.h:408:41: warning: extra ‘;’ [-Wpedantic] 408 | MAKE_STREAM_READ_FXN(f32, F1000, 4); | ^ ../src/util/serialize.h:409:41: warning: extra ‘;’ [-Wpedantic] 409 | MAKE_STREAM_READ_FXN(f32, F32, 4); | ^ ../src/util/serialize.h:410:41: warning: extra ‘;’ [-Wpedantic] 410 | MAKE_STREAM_READ_FXN(v2s16, V2S16, 4); | ^ ../src/util/serialize.h:411:41: warning: extra ‘;’ [-Wpedantic] 411 | MAKE_STREAM_READ_FXN(v3s16, V3S16, 6); | ^ ../src/util/serialize.h:412:41: warning: extra ‘;’ [-Wpedantic] 412 | MAKE_STREAM_READ_FXN(v2s32, V2S32, 8); | ^ ../src/util/serialize.h:413:41: warning: extra ‘;’ [-Wpedantic] 413 | MAKE_STREAM_READ_FXN(v3s32, V3S32, 12); | ^ ../src/util/serialize.h:414:41: warning: extra ‘;’ [-Wpedantic] 414 | MAKE_STREAM_READ_FXN(v3f, V3F1000, 12); | ^ ../src/util/serialize.h:415:41: warning: extra ‘;’ [-Wpedantic] 415 | MAKE_STREAM_READ_FXN(v2f, V2F32, 8); | ^ ../src/util/serialize.h:416:41: warning: extra ‘;’ [-Wpedantic] 416 | MAKE_STREAM_READ_FXN(v3f, V3F32, 12); | ^ ../src/util/serialize.h:417:46: warning: extra ‘;’ [-Wpedantic] 417 | MAKE_STREAM_READ_FXN(video::SColor, ARGB8, 4); | ^ ../src/util/serialize.h:419:42: warning: extra ‘;’ [-Wpedantic] 419 | MAKE_STREAM_WRITE_FXN(u8, U8, 1); | ^ ../src/util/serialize.h:420:42: warning: extra ‘;’ [-Wpedantic] 420 | MAKE_STREAM_WRITE_FXN(u16, U16, 2); | ^ ../src/util/serialize.h:421:42: warning: extra ‘;’ [-Wpedantic] 421 | MAKE_STREAM_WRITE_FXN(u32, U32, 4); | ^ ../src/util/serialize.h:422:42: warning: extra ‘;’ [-Wpedantic] 422 | MAKE_STREAM_WRITE_FXN(u64, U64, 8); | ^ ../src/util/serialize.h:423:42: warning: extra ‘;’ [-Wpedantic] 423 | MAKE_STREAM_WRITE_FXN(s8, S8, 1); | ^ ../src/util/serialize.h:424:42: warning: extra ‘;’ [-Wpedantic] 424 | MAKE_STREAM_WRITE_FXN(s16, S16, 2); | ^ ../src/util/serialize.h:425:42: warning: extra ‘;’ [-Wpedantic] 425 | MAKE_STREAM_WRITE_FXN(s32, S32, 4); | ^ ../src/util/serialize.h:426:42: warning: extra ‘;’ [-Wpedantic] 426 | MAKE_STREAM_WRITE_FXN(s64, S64, 8); | ^ ../src/util/serialize.h:427:42: warning: extra ‘;’ [-Wpedantic] 427 | MAKE_STREAM_WRITE_FXN(f32, F1000, 4); | ^ ../src/util/serialize.h:428:42: warning: extra ‘;’ [-Wpedantic] 428 | MAKE_STREAM_WRITE_FXN(f32, F32, 4); | ^ ../src/util/serialize.h:429:42: warning: extra ‘;’ [-Wpedantic] 429 | MAKE_STREAM_WRITE_FXN(v2s16, V2S16, 4); | ^ ../src/util/serialize.h:430:42: warning: extra ‘;’ [-Wpedantic] 430 | MAKE_STREAM_WRITE_FXN(v3s16, V3S16, 6); | ^ ../src/util/serialize.h:431:42: warning: extra ‘;’ [-Wpedantic] 431 | MAKE_STREAM_WRITE_FXN(v2s32, V2S32, 8); | ^ ../src/util/serialize.h:432:42: warning: extra ‘;’ [-Wpedantic] 432 | MAKE_STREAM_WRITE_FXN(v3s32, V3S32, 12); | ^ ../src/util/serialize.h:433:42: warning: extra ‘;’ [-Wpedantic] 433 | MAKE_STREAM_WRITE_FXN(v3f, V3F1000, 12); | ^ ../src/util/serialize.h:434:42: warning: extra ‘;’ [-Wpedantic] 434 | MAKE_STREAM_WRITE_FXN(v2f, V2F32, 8); | ^ ../src/util/serialize.h:435:42: warning: extra ‘;’ [-Wpedantic] 435 | MAKE_STREAM_WRITE_FXN(v3f, V3F32, 12); | ^ ../src/util/serialize.h:436:47: warning: extra ‘;’ [-Wpedantic] 436 | MAKE_STREAM_WRITE_FXN(video::SColor, ARGB8, 4); | ^ In file included from ../src/itemdef.h:28, from ../src/inventory.h:22, from ../src/inventorymanager.h:22, from ../src/server.h:28, from ../src/main.cpp:27: ../src/sound.h: In constructor ‘SimpleSoundSpec::SimpleSoundSpec(const string&, float, bool, float, float)’: ../src/sound.h:33:48: warning: declaration of ‘pitch’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~~^~~~~~~~~~~~ ../src/sound.h:59:8: note: shadowed declaration is here 59 | float pitch = 1.0f; | ^~~~~ ../src/sound.h:33:29: warning: declaration of ‘fade’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~~^~~~~~~~~~~ ../src/sound.h:58:8: note: shadowed declaration is here 58 | float fade = 0.0f; | ^~~~ ../src/sound.h:33:9: warning: declaration of ‘loop’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~^~~~~~~~~~~~ ../src/sound.h:60:7: note: shadowed declaration is here 60 | bool loop = false; | ^~~~ ../src/sound.h:32:54: warning: declaration of ‘gain’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 32 | SimpleSoundSpec(const std::string &name = "", float gain = 1.0f, | ~~~~~~^~~~~~~~~~~ ../src/sound.h:57:8: note: shadowed declaration is here 57 | float gain = 1.0f; | ^~~~ ../src/sound.h:32:37: warning: declaration of ‘name’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 32 | SimpleSoundSpec(const std::string &name = "", float gain = 1.0f, | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/sound.h:56:14: note: shadowed declaration is here 56 | std::string name; | ^~~~ ../src/sound.h: In constructor ‘SimpleSoundSpec::SimpleSoundSpec(const string&, float, bool, float, float)’: ../src/sound.h:33:48: warning: declaration of ‘pitch’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~~^~~~~~~~~~~~ ../src/sound.h:59:8: note: shadowed declaration is here 59 | float pitch = 1.0f; | ^~~~~ ../src/sound.h:33:29: warning: declaration of ‘fade’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~~^~~~~~~~~~~ ../src/sound.h:58:8: note: shadowed declaration is here 58 | float fade = 0.0f; | ^~~~ ../src/sound.h:33:9: warning: declaration of ‘loop’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~^~~~~~~~~~~~ ../src/sound.h:60:7: note: shadowed declaration is here 60 | bool loop = false; | ^~~~ ../src/sound.h:32:54: warning: declaration of ‘gain’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 32 | SimpleSoundSpec(const std::string &name = "", float gain = 1.0f, | ~~~~~~^~~~~~~~~~~ ../src/sound.h:57:8: note: shadowed declaration is here 57 | float gain = 1.0f; | ^~~~ ../src/sound.h:32:37: warning: declaration of ‘name’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 32 | SimpleSoundSpec(const std::string &name = "", float gain = 1.0f, | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/sound.h:56:14: note: shadowed declaration is here 56 | std::string name; | ^~~~ ../src/sound.h: In constructor ‘SimpleSoundSpec::SimpleSoundSpec(const string&, float, bool, float, float)’: ../src/sound.h:33:48: warning: declaration of ‘pitch’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~~^~~~~~~~~~~~ ../src/sound.h:59:8: note: shadowed declaration is here 59 | float pitch = 1.0f; | ^~~~~ ../src/sound.h:33:29: warning: declaration of ‘fade’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~~^~~~~~~~~~~ ../src/sound.h:58:8: note: shadowed declaration is here 58 | float fade = 0.0f; | ^~~~ ../src/sound.h:33:9: warning: declaration of ‘loop’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 33 | bool loop = false, float fade = 0.0f, float pitch = 1.0f) : | ~~~~~^~~~~~~~~~~~ ../src/sound.h:60:7: note: shadowed declaration is here 60 | bool loop = false; | ^~~~ ../src/sound.h:32:54: warning: declaration of ‘gain’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 32 | SimpleSoundSpec(const std::string &name = "", float gain = 1.0f, | ~~~~~~^~~~~~~~~~~ ../src/sound.h:57:8: note: shadowed declaration is here 57 | float gain = 1.0f; | ^~~~ ../src/sound.h:32:37: warning: declaration of ‘name’ shadows a member of ‘SimpleSoundSpec’ [-Wshadow] 32 | SimpleSoundSpec(const std::string &name = "", float gain = 1.0f, | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ../src/sound.h:56:14: note: shadowed declaration is here 56 | std::string name; | ^~~~ In file included from ../src/server.h:28, from ../src/main.cpp:27: ../src/inventorymanager.h: At global scope: ../src/inventorymanager.h:134:39: warning: extra ‘;’ [-Wpedantic] 134 | virtual ~InventoryAction() = default;; | ^ | - In file included from ../src/server.h:31, from ../src/main.cpp:27: ../src/particles.h:52:26: warning: extra ‘;’ [-Wpedantic] 52 | DECL_PARAM_OVERLOADS(u8); DECL_PARAM_OVERLOADS(s8); | ^ ../src/particles.h:52:53: warning: extra ‘;’ [-Wpedantic] 52 | DECL_PARAM_OVERLOADS(u8); DECL_PARAM_OVERLOADS(s8); | ^ ../src/particles.h:53:27: warning: extra ‘;’ [-Wpedantic] 53 | DECL_PARAM_OVERLOADS(u16); DECL_PARAM_OVERLOADS(s16); | ^ ../src/particles.h:53:54: warning: extra ‘;’ [-Wpedantic] 53 | DECL_PARAM_OVERLOADS(u16); DECL_PARAM_OVERLOADS(s16); | ^ ../src/particles.h:54:27: warning: extra ‘;’ [-Wpedantic] 54 | DECL_PARAM_OVERLOADS(u32); DECL_PARAM_OVERLOADS(s32); | ^ ../src/particles.h:54:54: warning: extra ‘;’ [-Wpedantic] 54 | DECL_PARAM_OVERLOADS(u32); DECL_PARAM_OVERLOADS(s32); | ^ ../src/particles.h:55:27: warning: extra ‘;’ [-Wpedantic] 55 | DECL_PARAM_OVERLOADS(f32); | ^ ../src/particles.h:56:27: warning: extra ‘;’ [-Wpedantic] 56 | DECL_PARAM_OVERLOADS(v2f); | ^ ../src/particles.h:57:27: warning: extra ‘;’ [-Wpedantic] 57 | DECL_PARAM_OVERLOADS(v3f); | ^ ../src/particles.h: In instantiation of ‘struct ParticleParamTypes::Parameter’: ../src/particles.h:245:5: required from ‘struct ParticleParamTypes::TweenedParameter >’ ../src/particles.h:351:41: required from here ../src/particles.h:89:9: warning: ‘struct ParticleParamTypes::Parameter’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 89 | struct Parameter | ^~~~~~~~~ ../src/particles.h: In instantiation of ‘struct ParticleParamTypes::Parameter, 2>’: ../src/particles.h:126:9: required from ‘struct ParticleParamTypes::VectorParameter, 2>’ ../src/particles.h:245:5: required from ‘struct ParticleParamTypes::TweenedParameter, 2> >’ ../src/particles.h:352:46: required from here ../src/particles.h:89:9: warning: ‘struct ParticleParamTypes::Parameter, 2>’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] ../src/particles.h: In instantiation of ‘struct ParticleParamTypes::VectorParameter, 2>’: ../src/particles.h:245:5: required from ‘struct ParticleParamTypes::TweenedParameter, 2> >’ ../src/particles.h:352:46: required from here ../src/particles.h:126:9: warning: base class ‘struct ParticleParamTypes::Parameter, 2>’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 126 | struct VectorParameter : public Parameter { | ^~~~~~~~~~~~~~~ ../src/particles.h:126:9: warning: ‘struct ParticleParamTypes::VectorParameter, 2>’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] ../src/particles.h: In instantiation of ‘struct ParticleParamTypes::Parameter, 3>’: ../src/particles.h:126:9: required from ‘struct ParticleParamTypes::VectorParameter, 3>’ ../src/particles.h:164:5: required from ‘struct ParticleParamTypes::RangedParameter, 3> >’ ../src/particles.h:399:31: required from here ../src/particles.h:89:9: warning: ‘struct ParticleParamTypes::Parameter, 3>’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 89 | struct Parameter | ^~~~~~~~~ ../src/particles.h: In instantiation of ‘struct ParticleParamTypes::VectorParameter, 3>’: ../src/particles.h:164:5: required from ‘struct ParticleParamTypes::RangedParameter, 3> >’ ../src/particles.h:399:31: required from here ../src/particles.h:126:9: warning: base class ‘struct ParticleParamTypes::Parameter, 3>’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 126 | struct VectorParameter : public Parameter { | ^~~~~~~~~~~~~~~ ../src/particles.h:126:9: warning: ‘struct ParticleParamTypes::VectorParameter, 3>’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] In file included from ../src/server.h:33, from ../src/main.cpp:27: ../src/network/address.h: In constructor ‘IPv6AddressBytes::IPv6AddressBytes()’: ../src/network/address.h:42:23: error: ‘memset’ was not declared in this scope 42 | IPv6AddressBytes() { memset(bytes, 0, 16); } | ^~~~~~ ../src/network/address.h:38:1: note: ‘memset’ is defined in header ‘’; did you forget to ‘#include ’? 37 | #include "networkexceptions.h" +++ |+#include 38 | In file included from ../src/serverenvironment.h:22, from ../src/server.h:38, from ../src/main.cpp:27: ../src/activeobject.h: At global scope: ../src/activeobject.h:78:7: warning: ‘class ActiveObject’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 78 | class ActiveObject | ^~~~~~~~~~~~ In file included from ../src/serverenvironment.h:23, from ../src/server.h:38, from ../src/main.cpp:27: ../src/environment.h:52:33: warning: extra ‘;’ [-Wpedantic] 52 | DISABLE_CLASS_COPY(Environment); | ^ | - In file included from ../src/server/activeobjectmgr.h:25, from ../src/serverenvironment.h:26, from ../src/server.h:38, from ../src/main.cpp:27: ../src/server/serveractiveobject.h:51:7: warning: base class ‘class ActiveObject’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 51 | class ServerActiveObject : public ActiveObject | ^~~~~~~~~~~~~~~~~~ In file included from ../src/server/activeobjectmgr.h:24, from ../src/serverenvironment.h:26, from ../src/server.h:38, from ../src/main.cpp:27: ../src/server/../activeobjectmgr.h: In instantiation of ‘class ActiveObjectMgr’: ../src/server/activeobjectmgr.h:29:34: required from here ../src/server/../activeobjectmgr.h:29:7: warning: ‘class ActiveObjectMgr’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 29 | class ActiveObjectMgr | ^~~~~~~~~~~~~~~ In file included from ../src/serverenvironment.h:26, from ../src/server.h:38, from ../src/main.cpp:27: ../src/server/activeobjectmgr.h:29:7: warning: base class ‘class ActiveObjectMgr’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 29 | class ActiveObjectMgr : public ::ActiveObjectMgr | ^~~~~~~~~~~~~~~ ../src/server/activeobjectmgr.h:29:7: warning: ‘class server::ActiveObjectMgr’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] In file included from ../src/main.cpp:27: ../src/server.h:155:28: warning: extra ‘;’ [-Wpedantic] 155 | DISABLE_CLASS_COPY(Server); | ^ | - ../src/server.h:137:7: warning: base class ‘class MapEventReceiver’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 137 | class Server : public con::PeerHandler, public MapEventReceiver, | ^~~~~~ ../src/server.h:137:7: warning: base class ‘class IGameDef’ has accessible non-virtual destructor [-Wnon-virtual-dtor] In file included from ../src/main.cpp:37: ../src/database/database.h:30:7: warning: ‘class Database’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 30 | class Database | ^~~~~~~~ ../src/database/database.h:38:7: warning: base class ‘class Database’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 38 | class MapDatabase : public Database | ^~~~~~~~~~~ ../src/database/database.h:89:7: warning: base class ‘class Database’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 89 | class ModMetadataDatabase : public Database | ^~~~~~~~~~~~~~~~~~~ In file included from ../src/main.cpp:39: ../src/player.h:129:28: warning: extra ‘;’ [-Wpedantic] 129 | DISABLE_CLASS_COPY(Player); | ^ | - In file included from ../src/mapblock.h:33, from ../src/main.cpp:42: ../src/mapgen/mapgen.h:179:28: warning: extra ‘;’ [-Wpedantic] 179 | DISABLE_CLASS_COPY(Mapgen); | ^ | - In file included from ../src/main.cpp:44: ../src/terminal_chat_console.h:31:7: warning: base class ‘class ILogOutput’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 31 | class TermLogOutput : public ILogOutput { | ^~~~~~~~~~~~~ ../src/terminal_chat_console.h:31:7: warning: ‘class TermLogOutput’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] In file included from ../src/client/inputhandler.h:23, from ../src/client/clientlauncher.h:23, from ../src/main.cpp:48: ../src/client/joystick_controller.h:45:8: warning: ‘struct JoystickCombination’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 45 | struct JoystickCombination { | ^~~~~~~~~~~~~~~~~~~ ../src/client/joystick_controller.h:52:8: warning: base class ‘struct JoystickCombination’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 52 | struct JoystickButtonCmb : public JoystickCombination { | ^~~~~~~~~~~~~~~~~ ../src/client/joystick_controller.h: In constructor ‘JoystickButtonCmb::JoystickButtonCmb(GameKeyType, irr::u32, irr::u32)’: ../src/client/joystick_controller.h:56:58: warning: declaration of ‘compare_mask’ shadows a member of ‘JoystickButtonCmb’ [-Wshadow] 56 | JoystickButtonCmb(GameKeyType key, u32 filter_mask, u32 compare_mask) : | ~~~~^~~~~~~~~~~~ ../src/client/joystick_controller.h:68:6: note: shadowed declaration is here 68 | u32 compare_mask; | ^~~~~~~~~~~~ ../src/client/joystick_controller.h:56:41: warning: declaration of ‘filter_mask’ shadows a member of ‘JoystickButtonCmb’ [-Wshadow] 56 | JoystickButtonCmb(GameKeyType key, u32 filter_mask, u32 compare_mask) : | ~~~~^~~~~~~~~~~ ../src/client/joystick_controller.h:67:6: note: shadowed declaration is here 67 | u32 filter_mask; | ^~~~~~~~~~~ ../src/client/joystick_controller.h:56:32: warning: declaration of ‘key’ shadows a member of ‘JoystickButtonCmb’ [-Wshadow] 56 | JoystickButtonCmb(GameKeyType key, u32 filter_mask, u32 compare_mask) : | ~~~~~~~~~~~~^~~ ../src/client/joystick_controller.h:49:14: note: shadowed declaration is here 49 | GameKeyType key; | ^~~ ../src/client/joystick_controller.h: In constructor ‘JoystickButtonCmb::JoystickButtonCmb(GameKeyType, irr::u32, irr::u32)’: ../src/client/joystick_controller.h:56:58: warning: declaration of ‘compare_mask’ shadows a member of ‘JoystickButtonCmb’ [-Wshadow] 56 | JoystickButtonCmb(GameKeyType key, u32 filter_mask, u32 compare_mask) : | ~~~~^~~~~~~~~~~~ ../src/client/joystick_controller.h:68:6: note: shadowed declaration is here 68 | u32 compare_mask; | ^~~~~~~~~~~~ ../src/client/joystick_controller.h:56:41: warning: declaration of ‘filter_mask’ shadows a member of ‘JoystickButtonCmb’ [-Wshadow] 56 | JoystickButtonCmb(GameKeyType key, u32 filter_mask, u32 compare_mask) : | ~~~~^~~~~~~~~~~ ../src/client/joystick_controller.h:67:6: note: shadowed declaration is here 67 | u32 filter_mask; | ^~~~~~~~~~~ ../src/client/joystick_controller.h:56:32: warning: declaration of ‘key’ shadows a member of ‘JoystickButtonCmb’ [-Wshadow] 56 | JoystickButtonCmb(GameKeyType key, u32 filter_mask, u32 compare_mask) : | ~~~~~~~~~~~~^~~ ../src/client/joystick_controller.h:49:14: note: shadowed declaration is here 49 | GameKeyType key; | ^~~ ../src/client/joystick_controller.h: In constructor ‘JoystickButtonCmb::JoystickButtonCmb(GameKeyType, irr::u32, irr::u32)’: ../src/client/joystick_controller.h:56:58: warning: declaration of ‘compare_mask’ shadows a member of ‘JoystickButtonCmb’ [-Wshadow] 56 | JoystickButtonCmb(GameKeyType key, u32 filter_mask, u32 compare_mask) : | ~~~~^~~~~~~~~~~~ ../src/client/joystick_controller.h:68:6: note: shadowed declaration is here 68 | u32 compare_mask; | ^~~~~~~~~~~~ ../src/client/joystick_controller.h:56:41: warning: declaration of ‘filter_mask’ shadows a member of ‘JoystickButtonCmb’ [-Wshadow] 56 | JoystickButtonCmb(GameKeyType key, u32 filter_mask, u32 compare_mask) : | ~~~~^~~~~~~~~~~ ../src/client/joystick_controller.h:67:6: note: shadowed declaration is here 67 | u32 filter_mask; | ^~~~~~~~~~~ ../src/client/joystick_controller.h:56:32: warning: declaration of ‘key’ shadows a member of ‘JoystickButtonCmb’ [-Wshadow] 56 | JoystickButtonCmb(GameKeyType key, u32 filter_mask, u32 compare_mask) : | ~~~~~~~~~~~~^~~ ../src/client/joystick_controller.h:49:14: note: shadowed declaration is here 49 | GameKeyType key; | ^~~ ../src/client/joystick_controller.h: At global scope: ../src/client/joystick_controller.h:71:8: warning: base class ‘struct JoystickCombination’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 71 | struct JoystickAxisCmb : public JoystickCombination { | ^~~~~~~~~~~~~~~ ../src/client/joystick_controller.h: In constructor ‘JoystickAxisCmb::JoystickAxisCmb(GameKeyType, irr::u16, int, irr::s16)’: ../src/client/joystick_controller.h:75:75: warning: declaration of ‘thresh’ shadows a member of ‘JoystickAxisCmb’ [-Wshadow] 75 | JoystickAxisCmb(GameKeyType key, u16 axis_to_compare, int direction, s16 thresh) : | ~~~~^~~~~~ ../src/client/joystick_controller.h:92:6: note: shadowed declaration is here 92 | s16 thresh; | ^~~~~~ ../src/client/joystick_controller.h:75:60: warning: declaration of ‘direction’ shadows a member of ‘JoystickAxisCmb’ [-Wshadow] 75 | JoystickAxisCmb(GameKeyType key, u16 axis_to_compare, int direction, s16 thresh) : | ~~~~^~~~~~~~~ ../src/client/joystick_controller.h:91:6: note: shadowed declaration is here 91 | int direction; | ^~~~~~~~~ ../src/client/joystick_controller.h:75:39: warning: declaration of ‘axis_to_compare’ shadows a member of ‘JoystickAxisCmb’ [-Wshadow] 75 | JoystickAxisCmb(GameKeyType key, u16 axis_to_compare, int direction, s16 thresh) : | ~~~~^~~~~~~~~~~~~~~ ../src/client/joystick_controller.h:87:6: note: shadowed declaration is here 87 | u16 axis_to_compare; | ^~~~~~~~~~~~~~~ ../src/client/joystick_controller.h:75:30: warning: declaration of ‘key’ shadows a member of ‘JoystickAxisCmb’ [-Wshadow] 75 | JoystickAxisCmb(GameKeyType key, u16 axis_to_compare, int direction, s16 thresh) : | ~~~~~~~~~~~~^~~ ../src/client/joystick_controller.h:49:14: note: shadowed declaration is here 49 | GameKeyType key; | ^~~ ../src/client/joystick_controller.h: In constructor ‘JoystickAxisCmb::JoystickAxisCmb(GameKeyType, irr::u16, int, irr::s16)’: ../src/client/joystick_controller.h:75:75: warning: declaration of ‘thresh’ shadows a member of ‘JoystickAxisCmb’ [-Wshadow] 75 | JoystickAxisCmb(GameKeyType key, u16 axis_to_compare, int direction, s16 thresh) : | ~~~~^~~~~~ ../src/client/joystick_controller.h:92:6: note: shadowed declaration is here 92 | s16 thresh; | ^~~~~~ ../src/client/joystick_controller.h:75:60: warning: declaration of ‘direction’ shadows a member of ‘JoystickAxisCmb’ [-Wshadow] 75 | JoystickAxisCmb(GameKeyType key, u16 axis_to_compare, int direction, s16 thresh) : | ~~~~^~~~~~~~~ ../src/client/joystick_controller.h:91:6: note: shadowed declaration is here 91 | int direction; | ^~~~~~~~~ ../src/client/joystick_controller.h:75:39: warning: declaration of ‘axis_to_compare’ shadows a member of ‘JoystickAxisCmb’ [-Wshadow] 75 | JoystickAxisCmb(GameKeyType key, u16 axis_to_compare, int direction, s16 thresh) : | ~~~~^~~~~~~~~~~~~~~ ../src/client/joystick_controller.h:87:6: note: shadowed declaration is here 87 | u16 axis_to_compare; | ^~~~~~~~~~~~~~~ ../src/client/joystick_controller.h:75:30: warning: declaration of ‘key’ shadows a member of ‘JoystickAxisCmb’ [-Wshadow] 75 | JoystickAxisCmb(GameKeyType key, u16 axis_to_compare, int direction, s16 thresh) : | ~~~~~~~~~~~~^~~ ../src/client/joystick_controller.h:49:14: note: shadowed declaration is here 49 | GameKeyType key; | ^~~ ../src/client/joystick_controller.h: In constructor ‘JoystickAxisCmb::JoystickAxisCmb(GameKeyType, irr::u16, int, irr::s16)’: ../src/client/joystick_controller.h:75:75: warning: declaration of ‘thresh’ shadows a member of ‘JoystickAxisCmb’ [-Wshadow] 75 | JoystickAxisCmb(GameKeyType key, u16 axis_to_compare, int direction, s16 thresh) : | ~~~~^~~~~~ ../src/client/joystick_controller.h:92:6: note: shadowed declaration is here 92 | s16 thresh; | ^~~~~~ ../src/client/joystick_controller.h:75:60: warning: declaration of ‘direction’ shadows a member of ‘JoystickAxisCmb’ [-Wshadow] 75 | JoystickAxisCmb(GameKeyType key, u16 axis_to_compare, int direction, s16 thresh) : | ~~~~^~~~~~~~~ ../src/client/joystick_controller.h:91:6: note: shadowed declaration is here 91 | int direction; | ^~~~~~~~~ ../src/client/joystick_controller.h:75:39: warning: declaration of ‘axis_to_compare’ shadows a member of ‘JoystickAxisCmb’ [-Wshadow] 75 | JoystickAxisCmb(GameKeyType key, u16 axis_to_compare, int direction, s16 thresh) : | ~~~~^~~~~~~~~~~~~~~ ../src/client/joystick_controller.h:87:6: note: shadowed declaration is here 87 | u16 axis_to_compare; | ^~~~~~~~~~~~~~~ ../src/client/joystick_controller.h:75:30: warning: declaration of ‘key’ shadows a member of ‘JoystickAxisCmb’ [-Wshadow] 75 | JoystickAxisCmb(GameKeyType key, u16 axis_to_compare, int direction, s16 thresh) : | ~~~~~~~~~~~~^~~ ../src/client/joystick_controller.h:49:14: note: shadowed declaration is here 49 | GameKeyType key; | ^~~ In file included from ../src/client/clientlauncher.h:23, from ../src/main.cpp:48: ../src/client/inputhandler.h: At global scope: ../src/client/inputhandler.h:64:7: warning: ‘class KeyList’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 64 | class KeyList : private std::list | ^~~~~~~ In file included from ../src/gui/guiFormSpecMenu.h:29, from ../src/gui/guiEngine.h:26, from ../src/main.cpp:49: ../src/gui/modalMenu.h:28:7: warning: ‘class IMenuManager’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 28 | class IMenuManager | ^~~~~~~~~~~~ In file included from ../src/gui/StyleSpec.h:21, from ../src/gui/guiFormSpecMenu.h:37, from ../src/gui/guiEngine.h:26, from ../src/main.cpp:49: ../src/client/fontengine.h: In constructor ‘FontSpec::FontSpec(unsigned int, FontMode, bool, bool)’: ../src/client/fontengine.h:42:66: warning: declaration of ‘italic’ shadows a member of ‘FontSpec’ [-Wshadow] 42 | FontSpec(unsigned int font_size, FontMode mode, bool bold, bool italic) : | ~~~~~^~~~~~ ../src/client/fontengine.h:56:7: note: shadowed declaration is here 56 | bool italic; | ^~~~~~ ../src/client/fontengine.h:42:55: warning: declaration of ‘bold’ shadows a member of ‘FontSpec’ [-Wshadow] 42 | FontSpec(unsigned int font_size, FontMode mode, bool bold, bool italic) : | ~~~~~^~~~ ../src/client/fontengine.h:55:7: note: shadowed declaration is here 55 | bool bold; | ^~~~ ../src/client/fontengine.h:42:44: warning: declaration of ‘mode’ shadows a member of ‘FontSpec’ [-Wshadow] 42 | FontSpec(unsigned int font_size, FontMode mode, bool bold, bool italic) : | ~~~~~~~~~^~~~ ../src/client/fontengine.h:54:11: note: shadowed declaration is here 54 | FontMode mode; | ^~~~ ../src/client/fontengine.h: In constructor ‘FontSpec::FontSpec(unsigned int, FontMode, bool, bool)’: ../src/client/fontengine.h:42:66: warning: declaration of ‘italic’ shadows a member of ‘FontSpec’ [-Wshadow] 42 | FontSpec(unsigned int font_size, FontMode mode, bool bold, bool italic) : | ~~~~~^~~~~~ ../src/client/fontengine.h:56:7: note: shadowed declaration is here 56 | bool italic; | ^~~~~~ ../src/client/fontengine.h:42:55: warning: declaration of ‘bold’ shadows a member of ‘FontSpec’ [-Wshadow] 42 | FontSpec(unsigned int font_size, FontMode mode, bool bold, bool italic) : | ~~~~~^~~~ ../src/client/fontengine.h:55:7: note: shadowed declaration is here 55 | bool bold; | ^~~~ ../src/client/fontengine.h:42:44: warning: declaration of ‘mode’ shadows a member of ‘FontSpec’ [-Wshadow] 42 | FontSpec(unsigned int font_size, FontMode mode, bool bold, bool italic) : | ~~~~~~~~~^~~~ ../src/client/fontengine.h:54:11: note: shadowed declaration is here 54 | FontMode mode; | ^~~~ ../src/client/fontengine.h: In constructor ‘FontSpec::FontSpec(unsigned int, FontMode, bool, bool)’: ../src/client/fontengine.h:42:66: warning: declaration of ‘italic’ shadows a member of ‘FontSpec’ [-Wshadow] 42 | FontSpec(unsigned int font_size, FontMode mode, bool bold, bool italic) : | ~~~~~^~~~~~ ../src/client/fontengine.h:56:7: note: shadowed declaration is here 56 | bool italic; | ^~~~~~ ../src/client/fontengine.h:42:55: warning: declaration of ‘bold’ shadows a member of ‘FontSpec’ [-Wshadow] 42 | FontSpec(unsigned int font_size, FontMode mode, bool bold, bool italic) : | ~~~~~^~~~ ../src/client/fontengine.h:55:7: note: shadowed declaration is here 55 | bool bold; | ^~~~ ../src/client/fontengine.h:42:44: warning: declaration of ‘mode’ shadows a member of ‘FontSpec’ [-Wshadow] 42 | FontSpec(unsigned int font_size, FontMode mode, bool bold, bool italic) : | ~~~~~~~~~^~~~ ../src/client/fontengine.h:54:11: note: shadowed declaration is here 54 | FontMode mode; | ^~~~ ../src/client/fontengine.h: At global scope: ../src/client/fontengine.h:166:32: warning: extra ‘;’ [-Wpedantic] 166 | DISABLE_CLASS_COPY(FontEngine); | ^ | - In file included from ../src/gui/guiEngine.h:26, from ../src/main.cpp:49: ../src/gui/guiFormSpecMenu.h: In constructor ‘GUIFormSpecMenu::FieldSpec::FieldSpec(const string&, const wstring&, const wstring&, irr::s32, int, irr::gui::ECURSOR_ICON)’: ../src/gui/guiFormSpecMenu.h:107:51: warning: declaration of ‘priority’ shadows a member of ‘GUIFormSpecMenu::FieldSpec’ [-Wshadow] 107 | const std::wstring &default_text, s32 id, int priority = 0, | ~~~~^~~~~~~~~~~~ ../src/gui/guiFormSpecMenu.h:129:7: note: shadowed declaration is here 129 | int priority; | ^~~~~~~~ ../src/gui/guiFormSpecMenu.h: In constructor ‘GUIFormSpecMenu::FieldSpec::FieldSpec(const string&, const wstring&, const wstring&, irr::s32, int, irr::gui::ECURSOR_ICON)’: ../src/gui/guiFormSpecMenu.h:107:51: warning: declaration of ‘priority’ shadows a member of ‘GUIFormSpecMenu::FieldSpec’ [-Wshadow] 107 | const std::wstring &default_text, s32 id, int priority = 0, | ~~~~^~~~~~~~~~~~ ../src/gui/guiFormSpecMenu.h:129:7: note: shadowed declaration is here 129 | int priority; | ^~~~~~~~ ../src/gui/guiFormSpecMenu.h: In constructor ‘GUIFormSpecMenu::FieldSpec::FieldSpec(const string&, const wstring&, const wstring&, irr::s32, int, irr::gui::ECURSOR_ICON)’: ../src/gui/guiFormSpecMenu.h:107:51: warning: declaration of ‘priority’ shadows a member of ‘GUIFormSpecMenu::FieldSpec’ [-Wshadow] 107 | const std::wstring &default_text, s32 id, int priority = 0, | ~~~~^~~~~~~~~~~~ ../src/gui/guiFormSpecMenu.h:129:7: note: shadowed declaration is here 129 | int priority; | ^~~~~~~~ In file included from ../src/gui/guiEngine.h:27, from ../src/main.cpp:49: ../src/client/sound.h: At global scope: ../src/client/sound.h:27:7: warning: ‘class OnDemandSoundFetcher’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 27 | class OnDemandSoundFetcher | ^~~~~~~~~~~~~~~~~~~~ In file included from ../src/main.cpp:49: ../src/gui/guiEngine.h:119:7: warning: base class ‘class OnDemandSoundFetcher’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 119 | class MenuMusicFetcher: public OnDemandSoundFetcher | ^~~~~~~~~~~~~~~~ ../src/gui/guiEngine.h:119:7: warning: ‘class MenuMusicFetcher’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] In file included from ../src/main.cpp:50: ../src/gui/mainmenumanager.h:29:7: warning: ‘class IGameCallback’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] 29 | class IGameCallback | ^~~~~~~~~~~~~ ../src/gui/mainmenumanager.h:46:7: warning: base class ‘class IMenuManager’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 46 | class MainMenuManager : public IMenuManager | ^~~~~~~~~~~~~~~ ../src/gui/mainmenumanager.h:46:7: warning: ‘class MainMenuManager’ has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor] ../src/gui/mainmenumanager.h:102:7: warning: base class ‘class IGameCallback’ has accessible non-virtual destructor [-Wnon-virtual-dtor] 102 | class MainGameCallback : public IGameCallback | ^~~~~~~~~~~~~~~~ ../src/main.cpp: In function ‘void set_allowed_options(OptionList*)’: ../src/main.cpp:279:45: warning: declaration of ‘allowed_options’ shadows a global declaration [-Wshadow] 279 | static void set_allowed_options(OptionList *allowed_options) | ~~~~~~~~~~~~^~~~~~~~~~~~~~~ ../src/main.cpp:128:19: note: shadowed declaration is here 128 | static OptionList allowed_options; | ^~~~~~~~~~~~~~~ ../src/main.cpp: In function ‘void print_help(const OptionList&)’: ../src/main.cpp:354:42: warning: declaration of ‘allowed_options’ shadows a global declaration [-Wshadow] 354 | static void print_help(const OptionList &allowed_options) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ ../src/main.cpp:128:19: note: shadowed declaration is here 128 | static OptionList allowed_options; | ^~~~~~~~~~~~~~~ ../src/main.cpp: In function ‘void print_allowed_options(const OptionList&)’: ../src/main.cpp:360:53: warning: declaration of ‘allowed_options’ shadows a global declaration [-Wshadow] 360 | static void print_allowed_options(const OptionList &allowed_options) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ ../src/main.cpp:128:19: note: shadowed declaration is here 128 | static OptionList allowed_options; | ^~~~~~~~~~~~~~~ ninja: build stopped: subcommand failed.