Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

clang analyzer static analysis results #1877

Closed
matthiaskrgr opened this issue Aug 3, 2017 · 18 comments
Closed

clang analyzer static analysis results #1877

matthiaskrgr opened this issue Aug 3, 2017 · 18 comments

Comments

@matthiaskrgr
Copy link
Contributor

matthiaskrgr commented Aug 3, 2017

scan-build.txt
Hi, I ran clang static analyzer aka scan-build on wesnoth, these are the results.
Unfortunately it failed to generated the reports as html for some reason, but I have the raw text.

Wesnoth @ 34d13ad

mkdir build
cd build
scan-build -enable-checker alpha.core.BoolAssignment,alpha.core.CastSize,alpha.core.FixedAddr,alpha.core.IdenticalExpr,alpha.core.PointerArithm,alpha.core.PointerSub,alpha.core.SizeofPtr,alpha.security.ArrayBoundV2,alpha.security.MallocOverflow,alpha.security.ReturnPtrRange,alpha.unix.Chroot,alpha.unix.PthreadLock,alpha.unix.SimpleStream,alpha.unix.Stream,alpha.unix.cstring.BufferOverlap,alpha.unix.cstring.NotNullTerminated,alpha.unix.cstring.OutOfBounds,security.FloatLoopCounter,security.insecureAPI.rand  cmake ..
scan-build -enable-checker alpha.core.BoolAssignment,alpha.core.CastSize,alpha.core.FixedAddr,alpha.core.IdenticalExpr,alpha.core.PointerArithm,alpha.core.PointerSub,alpha.core.SizeofPtr,alpha.security.ArrayBoundV2,alpha.security.MallocOverflow,alpha.security.ReturnPtrRange,alpha.unix.Chroot,alpha.unix.PthreadLock,alpha.unix.SimpleStream,alpha.unix.Stream,alpha.unix.cstring.BufferOverlap,alpha.unix.cstring.NotNullTerminated,alpha.unix.cstring.OutOfBounds,security.FloatLoopCounter,security.insecureAPI.rand  make wesnoth  wesnothd test

results:

scan-build: Using '/home/matthias/LLVM/LLVM_dev/stage_2/build/bin/clang-6.0' for static analysis
[  0%] Building CXX object src/CMakeFiles/wesnoth-sdl.dir/sdl/exception.cpp.o
[  0%] Building CXX object src/CMakeFiles/wesnoth-sdl.dir/sdl/rect.cpp.o
[  0%] Building CXX object src/CMakeFiles/wesnoth-sdl.dir/sdl/surface.cpp.o
[  0%] Building CXX object src/CMakeFiles/wesnoth-sdl.dir/sdl/utils.cpp.o
/home/matthias/vcs/github/wesnoth/src/sdl/utils.cpp:488:7: warning: Value stored to 'avg_a' is never read
                                  avg_a /= count;
                                  ^        ~~~~~
/home/matthias/vcs/github/wesnoth/src/sdl/utils.cpp:578:5: warning: Variable 'xloc' with floating point type 'float' should not be used as a loop counter
                                for(float xloc = xsrc; xloc < xsrc+xratio; xloc += 1) {
                                ^                      ~~~~                ~~~~
/home/matthias/vcs/github/wesnoth/src/sdl/utils.cpp:581:6: warning: Variable 'yloc' with floating point type 'float' should not be used as a loop counter
                                        for(float yloc = ysrc; yloc < ysrc+yratio; yloc += 1) {
                                        ^                      ~~~~                ~~~~
/home/matthias/vcs/github/wesnoth/src/sdl/utils.cpp:1504:21: warning: Division by zero
                                        | (std::min(red/avg,ff) << 16)
                                                    ~~~^~~~
4 warnings generated.
[  0%] Building CXX object src/CMakeFiles/wesnoth-sdl.dir/sdl/window.cpp.o
[  0%] Building CXX object src/CMakeFiles/wesnoth-sdl.dir/tracer.cpp.o
[  0%] Building CXX object src/CMakeFiles/wesnoth-sdl.dir/xBRZ/xbrz.cpp.o
[  0%] Building C object src/CMakeFiles/wesnoth-sdl.dir/SDL_SavePNG/savepng.c.o
/home/matthias/vcs/github/wesnoth/src/SDL_SavePNG/savepng.c:118:46: warning: the computation of the size of the memory allocation may overflow
                pal_ptr = (png_colorp)(malloc(pal->ncolors * sizeof(png_color)));
                                              ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
/home/matthias/vcs/github/wesnoth/src/SDL_SavePNG/savepng.c:144:55: warning: the computation of the size of the memory allocation may overflow
        row_pointers = (png_bytep*) (malloc(sizeof(png_bytep)*surface->h));
                                            ~~~~~~~~~~~~~~~~~^~~~~~~~~~~
2 warnings generated.
[  0%] Linking CXX static library libwesnoth-sdl.a
[  0%] Built target wesnoth-sdl
[  0%] Built target wesnoth-revision_dummy
[  0%] Built target wesnoth-revision
[  0%] Building CXX object src/CMakeFiles/wesnoth-core.dir/color.cpp.o
[  0%] Building CXX object src/CMakeFiles/wesnoth-core.dir/color_range.cpp.o
[  0%] Building CXX object src/CMakeFiles/wesnoth-core.dir/config.cpp.o
[  0%] Building CXX object src/CMakeFiles/wesnoth-core.dir/config_attribute_value.cpp.o
[  0%] Building CXX object src/CMakeFiles/wesnoth-core.dir/filesystem_boost.cpp.o
In file included from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:12:0,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/detail/streambuf/indirect_streambuf.hpp:31,
                 from /usr/include/boost/iostreams/stream_buffer.hpp:22,
                 from /usr/include/boost/iostreams/stream.hpp:21,
                 from /home/matthias/vcs/github/wesnoth/src/filesystem_boost.cpp:28:
/usr/include/boost/type_traits/detail/bool_trait_def.hpp:18:79: note: #pragma message: NOTE: Use of this header (bool_trait_def.hpp) is deprecated
 # pragma message("NOTE: Use of this header (bool_trait_def.hpp) is deprecated")
                                                                               ^
In file included from /usr/include/boost/type_traits/detail/bool_trait_def.hpp:21:0,
                 from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:12,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/detail/streambuf/indirect_streambuf.hpp:31,
                 from /usr/include/boost/iostreams/stream_buffer.hpp:22,
                 from /usr/include/boost/iostreams/stream.hpp:21,
                 from /home/matthias/vcs/github/wesnoth/src/filesystem_boost.cpp:28:
/usr/include/boost/type_traits/detail/template_arity_spec.hpp:13:84: note: #pragma message: NOTE: Use of this header (template_arity_spec.hpp) is deprecated
 # pragma message("NOTE: Use of this header (template_arity_spec.hpp) is deprecated")
                                                                                    ^
In file included from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:13:0,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/detail/streambuf/indirect_streambuf.hpp:31,
                 from /usr/include/boost/iostreams/stream_buffer.hpp:22,
                 from /usr/include/boost/iostreams/stream.hpp:21,
                 from /home/matthias/vcs/github/wesnoth/src/filesystem_boost.cpp:28:
/usr/include/boost/type_traits/detail/template_arity_spec.hpp:13:84: note: #pragma message: NOTE: Use of this header (template_arity_spec.hpp) is deprecated
 # pragma message("NOTE: Use of this header (template_arity_spec.hpp) is deprecated")
                                                                                    ^
[  0%] Building CXX object src/CMakeFiles/wesnoth-core.dir/filesystem_common.cpp.o
[  0%] Building CXX object src/CMakeFiles/wesnoth-core.dir/font/constants.cpp.o
[  0%] Building CXX object src/CMakeFiles/wesnoth-core.dir/game_config.cpp.o
[  0%] Building CXX object src/CMakeFiles/wesnoth-core.dir/gettext_boost.cpp.o
In file included from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:12:0,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/detail/streambuf/indirect_streambuf.hpp:31,
                 from /usr/include/boost/iostreams/stream_buffer.hpp:22,
                 from /usr/include/boost/iostreams/stream.hpp:21,
                 from /usr/include/boost/spirit/home/qi/stream/detail/iterator_source.hpp:14,
                 from /usr/include/boost/spirit/home/qi/stream/stream.hpp:16,
                 from /usr/include/boost/spirit/home/qi/stream.hpp:15,
                 from /usr/include/boost/spirit/home/qi.hpp:30,
                 from /usr/include/boost/spirit/include/qi.hpp:16,
                 from /home/matthias/vcs/github/wesnoth/src/spirit_po/default_plural_forms_expressions.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/spirit_po/exceptions.hpp:9,
                 from /home/matthias/vcs/github/wesnoth/src/spirit_po/catalog_metadata.hpp:13,
                 from /home/matthias/vcs/github/wesnoth/src/spirit_po/catalog.hpp:13,
                 from /home/matthias/vcs/github/wesnoth/src/spirit_po.hpp:10,
                 from /home/matthias/vcs/github/wesnoth/src/gettext_boost.cpp:39:
/usr/include/boost/type_traits/detail/bool_trait_def.hpp:18:79: note: #pragma message: NOTE: Use of this header (bool_trait_def.hpp) is deprecated
 # pragma message("NOTE: Use of this header (bool_trait_def.hpp) is deprecated")
                                                                               ^
In file included from /usr/include/boost/type_traits/detail/bool_trait_def.hpp:21:0,
                 from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:12,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/detail/streambuf/indirect_streambuf.hpp:31,
                 from /usr/include/boost/iostreams/stream_buffer.hpp:22,
                 from /usr/include/boost/iostreams/stream.hpp:21,
                 from /usr/include/boost/spirit/home/qi/stream/detail/iterator_source.hpp:14,
                 from /usr/include/boost/spirit/home/qi/stream/stream.hpp:16,
                 from /usr/include/boost/spirit/home/qi/stream.hpp:15,
                 from /usr/include/boost/spirit/home/qi.hpp:30,
                 from /usr/include/boost/spirit/include/qi.hpp:16,
                 from /home/matthias/vcs/github/wesnoth/src/spirit_po/default_plural_forms_expressions.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/spirit_po/exceptions.hpp:9,
                 from /home/matthias/vcs/github/wesnoth/src/spirit_po/catalog_metadata.hpp:13,
                 from /home/matthias/vcs/github/wesnoth/src/spirit_po/catalog.hpp:13,
                 from /home/matthias/vcs/github/wesnoth/src/spirit_po.hpp:10,
                 from /home/matthias/vcs/github/wesnoth/src/gettext_boost.cpp:39:
/usr/include/boost/type_traits/detail/template_arity_spec.hpp:13:84: note: #pragma message: NOTE: Use of this header (template_arity_spec.hpp) is deprecated
 # pragma message("NOTE: Use of this header (template_arity_spec.hpp) is deprecated")
                                                                                    ^
In file included from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:13:0,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/detail/streambuf/indirect_streambuf.hpp:31,
                 from /usr/include/boost/iostreams/stream_buffer.hpp:22,
                 from /usr/include/boost/iostreams/stream.hpp:21,
                 from /usr/include/boost/spirit/home/qi/stream/detail/iterator_source.hpp:14,
                 from /usr/include/boost/spirit/home/qi/stream/stream.hpp:16,
                 from /usr/include/boost/spirit/home/qi/stream.hpp:15,
                 from /usr/include/boost/spirit/home/qi.hpp:30,
                 from /usr/include/boost/spirit/include/qi.hpp:16,
                 from /home/matthias/vcs/github/wesnoth/src/spirit_po/default_plural_forms_expressions.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/spirit_po/exceptions.hpp:9,
                 from /home/matthias/vcs/github/wesnoth/src/spirit_po/catalog_metadata.hpp:13,
                 from /home/matthias/vcs/github/wesnoth/src/spirit_po/catalog.hpp:13,
                 from /home/matthias/vcs/github/wesnoth/src/spirit_po.hpp:10,
                 from /home/matthias/vcs/github/wesnoth/src/gettext_boost.cpp:39:
/usr/include/boost/type_traits/detail/template_arity_spec.hpp:13:84: note: #pragma message: NOTE: Use of this header (template_arity_spec.hpp) is deprecated
 # pragma message("NOTE: Use of this header (template_arity_spec.hpp) is deprecated")
                                                                                    ^
[  0%] Building CXX object src/CMakeFiles/wesnoth-core.dir/hash.cpp.o
[  0%] Building CXX object src/CMakeFiles/wesnoth-core.dir/log.cpp.o
[  0%] Building CXX object src/CMakeFiles/wesnoth-core.dir/map/location.cpp.o
[  0%] Building CXX object src/CMakeFiles/wesnoth-core.dir/map/map.cpp.o
[  0%] Building CXX object src/CMakeFiles/wesnoth-core.dir/mt_rng.cpp.o
[  0%] Building CXX object src/CMakeFiles/wesnoth-core.dir/seed_rng.cpp.o
[  0%] Building CXX object src/CMakeFiles/wesnoth-core.dir/serialization/binary_or_text.cpp.o
In file included from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:12:0,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.cpp:21:
/usr/include/boost/type_traits/detail/bool_trait_def.hpp:18:79: note: #pragma message: NOTE: Use of this header (bool_trait_def.hpp) is deprecated
 # pragma message("NOTE: Use of this header (bool_trait_def.hpp) is deprecated")
                                                                               ^
In file included from /usr/include/boost/type_traits/detail/bool_trait_def.hpp:21:0,
                 from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:12,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.cpp:21:
/usr/include/boost/type_traits/detail/template_arity_spec.hpp:13:84: note: #pragma message: NOTE: Use of this header (template_arity_spec.hpp) is deprecated
 # pragma message("NOTE: Use of this header (template_arity_spec.hpp) is deprecated")
                                                                                    ^
In file included from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:13:0,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.cpp:21:
/usr/include/boost/type_traits/detail/template_arity_spec.hpp:13:84: note: #pragma message: NOTE: Use of this header (template_arity_spec.hpp) is deprecated
 # pragma message("NOTE: Use of this header (template_arity_spec.hpp) is deprecated")
                                                                                    ^
[  0%] Building CXX object src/CMakeFiles/wesnoth-core.dir/serialization/parser.cpp.o
^[[1;5F^[[1;5F^[[1;5FIn file included from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:12:0,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/parser.cpp:37:
/usr/include/boost/type_traits/detail/bool_trait_def.hpp:18:79: note: #pragma message: NOTE: Use of this header (bool_trait_def.hpp) is deprecated
 # pragma message("NOTE: Use of this header (bool_trait_def.hpp) is deprecated")
                                                                               ^
In file included from /usr/include/boost/type_traits/detail/bool_trait_def.hpp:21:0,
                 from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:12,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/parser.cpp:37:
/usr/include/boost/type_traits/detail/template_arity_spec.hpp:13:84: note: #pragma message: NOTE: Use of this header (template_arity_spec.hpp) is deprecated
 # pragma message("NOTE: Use of this header (template_arity_spec.hpp) is deprecated")
                                                                                    ^
In file included from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:13:0,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/parser.cpp:37:
/usr/include/boost/type_traits/detail/template_arity_spec.hpp:13:84: note: #pragma message: NOTE: Use of this header (template_arity_spec.hpp) is deprecated
 # pragma message("NOTE: Use of this header (template_arity_spec.hpp) is deprecated")
                                                                                    ^
[  4%] Building CXX object src/CMakeFiles/wesnoth-core.dir/serialization/preprocessor.cpp.o
In file included from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:12:0,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/preprocessor.cpp:27:
/usr/include/boost/type_traits/detail/bool_trait_def.hpp:18:79: note: #pragma message: NOTE: Use of this header (bool_trait_def.hpp) is deprecated
 # pragma message("NOTE: Use of this header (bool_trait_def.hpp) is deprecated")
                                                                               ^
In file included from /usr/include/boost/type_traits/detail/bool_trait_def.hpp:21:0,
                 from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:12,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/preprocessor.cpp:27:
/usr/include/boost/type_traits/detail/template_arity_spec.hpp:13:84: note: #pragma message: NOTE: Use of this header (template_arity_spec.hpp) is deprecated
 # pragma message("NOTE: Use of this header (template_arity_spec.hpp) is deprecated")
                                                                                    ^
In file included from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:13:0,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/preprocessor.cpp:27:
/usr/include/boost/type_traits/detail/template_arity_spec.hpp:13:84: note: #pragma message: NOTE: Use of this header (template_arity_spec.hpp) is deprecated
 # pragma message("NOTE: Use of this header (template_arity_spec.hpp) is deprecated")
                                                                                    ^
/home/matthias/vcs/github/wesnoth/src/serialization/preprocessor.cpp:331:8: warning: Use of memory after it is freed
                if (!current_->get_chunk()) {
                     ^~~~~~~~~~~~~~~~~~~~~
1 warning generated.
[  4%] Building CXX object src/CMakeFiles/wesnoth-core.dir/serialization/schema_validator.cpp.o
[  4%] Building CXX object src/CMakeFiles/wesnoth-core.dir/serialization/string_utils.cpp.o
[  4%] Building CXX object src/CMakeFiles/wesnoth-core.dir/serialization/tag.cpp.o
[  4%] Building CXX object src/CMakeFiles/wesnoth-core.dir/serialization/tokenizer.cpp.o
[  4%] Building CXX object src/CMakeFiles/wesnoth-core.dir/serialization/unicode.cpp.o
[  4%] Building CXX object src/CMakeFiles/wesnoth-core.dir/serialization/validator.cpp.o
[  4%] Building CXX object src/CMakeFiles/wesnoth-core.dir/terrain/type_data.cpp.o
[  4%] Building CXX object src/CMakeFiles/wesnoth-core.dir/tstring.cpp.o
[  4%] Building CXX object src/CMakeFiles/wesnoth-core.dir/version.cpp.o
[  4%] Linking CXX static library libwesnoth-core.a
[  4%] Built target wesnoth-core
Scanning dependencies of target wesnoth-lua
[  4%] Building CXX object src/CMakeFiles/wesnoth-lua.dir/lua_jailbreak_exception.cpp.o
[  4%] Building CXX object src/CMakeFiles/wesnoth-lua.dir/lua/lapi.cpp.o
[  4%] Building CXX object src/CMakeFiles/wesnoth-lua.dir/lua/lauxlib.cpp.o
/home/matthias/vcs/github/wesnoth/src/lua/lauxlib.cpp:520:7: warning: Memory copy function accesses out-of-bound array element
      memcpy(newbuff, B->b, B->n * sizeof(char));  /* copy original content */
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/matthias/vcs/github/wesnoth/src/lua/lauxlib.cpp:720:23: warning: Opened File never closed. Potential Resource leak
    lf.buff[lf.n++] = '\n';  /* add line to correct line numbers */
                      ^~~~
/home/matthias/vcs/github/wesnoth/src/lua/lauxlib.cpp:721:7: warning: Opened File never closed. Potential Resource leak
  if (c == LUA_SIGNATURE[0] && filename) {  /* binary file? */
      ^
/home/matthias/vcs/github/wesnoth/src/lua/lauxlib.cpp:723:30: warning: Opened File never closed. Potential Resource leak
    if (lf.f == NULL) return errfile(L, "reopen", fnameindex);
                             ^~~~~~~
/home/matthias/vcs/github/wesnoth/src/lua/lauxlib.cpp:724:5: warning: Opened File never closed. Potential Resource leak
    skipcomment(&lf, &c);  /* re-read initial portion */
    ^~~~~~~~~~~
/home/matthias/vcs/github/wesnoth/src/lua/lauxlib.cpp:728:10: warning: Opened File never closed. Potential Resource leak
  status = lua_load(L, getF, &lf, lua_tostring(L, -1), mode);
  ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
6 warnings generated.
[  4%] Building CXX object src/CMakeFiles/wesnoth-lua.dir/lua/lbaselib.cpp.o
[  4%] Building CXX object src/CMakeFiles/wesnoth-lua.dir/lua/lbitlib.cpp.o
[  4%] Building CXX object src/CMakeFiles/wesnoth-lua.dir/lua/lcode.cpp.o
[  4%] Building CXX object src/CMakeFiles/wesnoth-lua.dir/lua/lcorolib.cpp.o
[  4%] Building CXX object src/CMakeFiles/wesnoth-lua.dir/lua/lctype.cpp.o
[  4%] Building CXX object src/CMakeFiles/wesnoth-lua.dir/lua/ldblib.cpp.o
[  8%] Building CXX object src/CMakeFiles/wesnoth-lua.dir/lua/ldebug.cpp.o
/home/matthias/vcs/github/wesnoth/src/lua/ldebug.cpp:543:9: warning: Out of bound memory access (access exceeds upper limit of memory block)
    if (c->upvals[i]->v == o) {
        ^~~~~~~~~~~~
1 warning generated.
[  8%] Building CXX object src/CMakeFiles/wesnoth-lua.dir/lua/ldo.cpp.o
[  8%] Building CXX object src/CMakeFiles/wesnoth-lua.dir/lua/ldump.cpp.o
[  8%] Building CXX object src/CMakeFiles/wesnoth-lua.dir/lua/lfunc.cpp.o
/home/matthias/vcs/github/wesnoth/src/lua/lfunc.cpp:52:19: warning: Out of bound memory access (access exceeds upper limit of memory block)
    cl->upvals[i] = uv;
    ~~~~~~~~~~~~~~^~~~
1 warning generated.
[  8%] Building CXX object src/CMakeFiles/wesnoth-lua.dir/lua/lgc.cpp.o
/home/matthias/vcs/github/wesnoth/src/lua/lgc.cpp:518:17: warning: Out of bound memory access (access exceeds upper limit of memory block)
    UpVal *uv = cl->upvals[i];
                ^~~~~~~~~~~~~
/home/matthias/vcs/github/wesnoth/src/lua/lgc.cpp:688:17: warning: Out of bound memory access (access exceeds upper limit of memory block)
    UpVal *uv = cl->upvals[i];
                ^~~~~~~~~~~~~
2 warnings generated.
[  8%] Building CXX object src/CMakeFiles/wesnoth-lua.dir/lua/liolib.cpp.o
/home/matthias/vcs/github/wesnoth/src/lua/liolib.cpp:247:1: warning: Opened File never closed. Potential Resource leak
}
^
/home/matthias/vcs/github/wesnoth/src/lua/liolib.cpp:257:61: warning: Opened File never closed. Potential Resource leak
  return (p->f == NULL) ? luaL_fileresult(L, 0, filename) : 1;
                                                            ^
/home/matthias/vcs/github/wesnoth/src/lua/liolib.cpp:283:57: warning: Opened File never closed. Potential Resource leak
  return (p->f == NULL) ? luaL_fileresult(L, 0, NULL) : 1;
                                                        ^
3 warnings generated.
[  8%] Building CXX object src/CMakeFiles/wesnoth-lua.dir/lua/llex.cpp.o
[  8%] Building CXX object src/CMakeFiles/wesnoth-lua.dir/lua/lmathlib.cpp.o
[  8%] Building CXX object src/CMakeFiles/wesnoth-lua.dir/lua/lmem.cpp.o
[  8%] Building CXX object src/CMakeFiles/wesnoth-lua.dir/lua/loadlib.cpp.o
[  8%] Building CXX object src/CMakeFiles/wesnoth-lua.dir/lua/lobject.cpp.o
[  8%] Building CXX object src/CMakeFiles/wesnoth-lua.dir/lua/lopcodes.cpp.o
[  8%] Building CXX object src/CMakeFiles/wesnoth-lua.dir/lua/loslib.cpp.o
/home/matthias/vcs/github/wesnoth/src/lua/loslib.cpp:214:22: warning: Access to field 'tm_sec' results in a dereference of a null pointer (loaded from variable 'stm')
  setfield(L, "sec", stm->tm_sec);
                     ^~~~~~~~~~~
1 warning generated.
[  8%] Building CXX object src/CMakeFiles/wesnoth-lua.dir/lua/lparser.cpp.o
[  8%] Building CXX object src/CMakeFiles/wesnoth-lua.dir/lua/lstate.cpp.o
/home/matthias/vcs/github/wesnoth/src/lua/lstate.cpp:276:3: warning: Memory copy function overflows destination buffer
  memcpy(lua_getextraspace(L1), lua_getextraspace(g->mainthread),
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.
[  8%] Building CXX object src/CMakeFiles/wesnoth-lua.dir/lua/lstring.cpp.o
/home/matthias/vcs/github/wesnoth/src/lua/lstring.cpp:187:3: warning: Memory copy function overflows destination buffer
  memcpy(getstr(ts), str, l * sizeof(char));
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/matthias/vcs/github/wesnoth/src/lua/lstring.cpp:207:5: warning: Memory copy function overflows destination buffer
    memcpy(getstr(ts), str, l * sizeof(char));
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2 warnings generated.
[  8%] Building CXX object src/CMakeFiles/wesnoth-lua.dir/lua/lstrlib.cpp.o
/home/matthias/vcs/github/wesnoth/src/lua/lstrlib.cpp:790:7: warning: Dereference of null pointer
      luaL_addchar(&b, *src++);
      ^~~~~~~~~~~~~~~~~~~~~~~~
/home/matthias/vcs/github/wesnoth/src/lua/lauxlib.h:151:24: note: expanded from macro 'luaL_addchar'
   ((B)->b[(B)->n++] = (c)))
                       ^~~
1 warning generated.
[  8%] Building CXX object src/CMakeFiles/wesnoth-lua.dir/lua/ltable.cpp.o
[  8%] Building CXX object src/CMakeFiles/wesnoth-lua.dir/lua/ltablib.cpp.o
[  8%] Building CXX object src/CMakeFiles/wesnoth-lua.dir/lua/ltm.cpp.o
[  8%] Building CXX object src/CMakeFiles/wesnoth-lua.dir/lua/lundump.cpp.o
[  8%] Building CXX object src/CMakeFiles/wesnoth-lua.dir/lua/lutf8lib.cpp.o
[  8%] Building CXX object src/CMakeFiles/wesnoth-lua.dir/lua/lvm.cpp.o
/home/matthias/vcs/github/wesnoth/src/lua/lvm.cpp:618:11: warning: Out of bound memory access (access exceeds upper limit of memory block)
      if (c->upvals[i]->v != v)
          ^~~~~~~~~~~~
/home/matthias/vcs/github/wesnoth/src/lua/lvm.cpp:642:22: warning: Out of bound memory access (access exceeds upper limit of memory block)
      ncl->upvals[i] = luaF_findupval(L, base + uv[i].idx);
      ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/matthias/vcs/github/wesnoth/src/lua/lvm.cpp:644:22: warning: Out of bound memory access (access exceeds upper limit of memory block)
      ncl->upvals[i] = encup[uv[i].idx];
      ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
3 warnings generated.
[ 13%] Building CXX object src/CMakeFiles/wesnoth-lua.dir/lua/lzio.cpp.o
[ 13%] Linking CXX static library libwesnoth-lua.a
[ 13%] Built target wesnoth-lua
Scanning dependencies of target wesnoth-game
[ 13%] Building CXX object src/CMakeFiles/wesnoth-game.dir/arrow.cpp.o
[ 13%] Building CXX object src/CMakeFiles/wesnoth-game.dir/cursor.cpp.o
[ 13%] Building CXX object src/CMakeFiles/wesnoth-game.dir/desktop/clipboard.cpp.o
[ 13%] Building CXX object src/CMakeFiles/wesnoth-game.dir/display.cpp.o
[ 13%] Building CXX object src/CMakeFiles/wesnoth-game.dir/display_context.cpp.o
[ 13%] Building CXX object src/CMakeFiles/wesnoth-game.dir/events.cpp.o
[ 13%] Building CXX object src/CMakeFiles/wesnoth-game.dir/floating_label.cpp.o
[ 13%] Building CXX object src/CMakeFiles/wesnoth-game.dir/font/font_config.cpp.o
[ 13%] Building CXX object src/CMakeFiles/wesnoth-game.dir/font/marked-up_text.cpp.o
[ 13%] Building CXX object src/CMakeFiles/wesnoth-game.dir/font/sdl_ttf.cpp.o
[ 13%] Building CXX object src/CMakeFiles/wesnoth-game.dir/font/standard_colors.cpp.o
[ 13%] Building CXX object src/CMakeFiles/wesnoth-game.dir/font/text.cpp.o
[ 17%] Building CXX object src/CMakeFiles/wesnoth-game.dir/font/text_cache.cpp.o
[ 17%] Building CXX object src/CMakeFiles/wesnoth-game.dir/font/text_formatting.cpp.o
[ 17%] Building CXX object src/CMakeFiles/wesnoth-game.dir/font/text_surface.cpp.o
[ 17%] Building CXX object src/CMakeFiles/wesnoth-game.dir/format_time_summary.cpp.o
[ 17%] Building CXX object src/CMakeFiles/wesnoth-game.dir/game_end_exceptions.cpp.o
[ 17%] Building CXX object src/CMakeFiles/wesnoth-game.dir/generators/cave_map_generator.cpp.o
[ 17%] Building CXX object src/CMakeFiles/wesnoth-game.dir/generators/default_map_generator.cpp.o
[ 17%] Building CXX object src/CMakeFiles/wesnoth-game.dir/generators/default_map_generator_job.cpp.o
/home/matthias/vcs/github/wesnoth/src/generators/default_map_generator_job.cpp:556:4: warning: Value stored to 'avg_distance' is never read
                        avg_distance = 0;
                        ^              ~
/home/matthias/vcs/github/wesnoth/src/generators/default_map_generator_job.cpp:889:2: warning: Value stored to 'ticks' is never read
        ticks = SDL_GetTicks();
        ^       ~~~~~~~~~~~~~~
/home/matthias/vcs/github/wesnoth/src/generators/default_map_generator_job.cpp:1158:2: warning: Value stored to 'ticks' is never read
        ticks = SDL_GetTicks();
        ^       ~~~~~~~~~~~~~~
3 warnings generated.
[ 17%] Building CXX object src/CMakeFiles/wesnoth-game.dir/generators/lua_map_generator.cpp.o
[ 17%] Building CXX object src/CMakeFiles/wesnoth-game.dir/generators/map_create.cpp.o
[ 17%] Building CXX object src/CMakeFiles/wesnoth-game.dir/generators/map_generator.cpp.o
[ 17%] Building CXX object src/CMakeFiles/wesnoth-game.dir/generic_event.cpp.o
[ 17%] Building CXX object src/CMakeFiles/wesnoth-game.dir/hotkey/command_executor.cpp.o
[ 17%] Building CXX object src/CMakeFiles/wesnoth-game.dir/hotkey/hotkey_command.cpp.o
[ 17%] Building CXX object src/CMakeFiles/wesnoth-game.dir/hotkey/hotkey_item.cpp.o
warning: Path diagnostic report is not generated. Current output format does not support diagnostics that cross file boundaries. Refer to --analyzer-output for valid output formats
In file included from /home/matthias/vcs/github/wesnoth/src/hotkey/hotkey_item.cpp:17:
In file included from /home/matthias/vcs/github/wesnoth/src/hotkey/hotkey_item.hpp:22:
In file included from /usr/include/boost/algorithm/string.hpp:21:
In file included from /usr/include/boost/algorithm/string/predicate.hpp:22:
/usr/include/boost/algorithm/string/compare.hpp:43:30: warning: Out of bound memory access (access exceeds upper limit of memory block)
                return Arg1==Arg2;
                             ^~~~
1 warning generated.
[ 17%] Building CXX object src/CMakeFiles/wesnoth-game.dir/hotkey/hotkey_manager.cpp.o
[ 17%] Building CXX object src/CMakeFiles/wesnoth-game.dir/image.cpp.o
[ 17%] Building CXX object src/CMakeFiles/wesnoth-game.dir/image_modifications.cpp.o
[ 17%] Building CXX object src/CMakeFiles/wesnoth-game.dir/preferences/credentials.cpp.o
[ 17%] Building CXX object src/CMakeFiles/wesnoth-game.dir/preferences/general.cpp.o
[ 17%] Building CXX object src/CMakeFiles/wesnoth-game.dir/joystick.cpp.o
[ 17%] Building CXX object src/CMakeFiles/wesnoth-game.dir/key.cpp.o
[ 17%] Building CXX object src/CMakeFiles/wesnoth-game.dir/language.cpp.o
[ 21%] Building CXX object src/CMakeFiles/wesnoth-game.dir/map/label.cpp.o
[ 21%] Building CXX object src/CMakeFiles/wesnoth-game.dir/minimap.cpp.o
[ 21%] Building CXX object src/CMakeFiles/wesnoth-game.dir/pathfind/astarsearch.cpp.o
[ 21%] Building CXX object src/CMakeFiles/wesnoth-game.dir/pathutils.cpp.o
[ 21%] Building CXX object src/CMakeFiles/wesnoth-game.dir/quit_confirmation.cpp.o
[ 21%] Building CXX object src/CMakeFiles/wesnoth-game.dir/reports.cpp.o
[ 21%] Building CXX object src/CMakeFiles/wesnoth-game.dir/show_dialog.cpp.o
[ 21%] Building CXX object src/CMakeFiles/wesnoth-game.dir/sound.cpp.o
[ 21%] Building CXX object src/CMakeFiles/wesnoth-game.dir/sound_music_track.cpp.o
/home/matthias/vcs/github/wesnoth/src/sound_music_track.cpp:99:4: warning: Opened File never closed. Potential Resource leak
                        LOG_AUDIO << "track does not appear to be an Ogg file '"
                        ^~~~~~~~~
/home/matthias/vcs/github/wesnoth/src/sound_music_track.cpp:28:19: note: expanded from macro 'LOG_AUDIO'
#define LOG_AUDIO LOG_STREAM(info, log_audio)
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/matthias/vcs/github/wesnoth/src/log.hpp:187:39: note: expanded from macro 'LOG_STREAM'
#define LOG_STREAM(level, domain) if (lg::level().dont_log(domain)) ; else lg::level()(domain)
                                      ^~~~~~~~~
/home/matthias/vcs/github/wesnoth/src/sound_music_track.cpp:105:30: warning: Opened File never closed. Potential Resource leak
                vorbis_comment* comments = ov_comment(&vf, -1);
                                           ^~~~~~~~~~
2 warnings generated.
[ 21%] Building CXX object src/CMakeFiles/wesnoth-game.dir/soundsource.cpp.o
[ 21%] Building CXX object src/CMakeFiles/wesnoth-game.dir/terrain/builder.cpp.o
warning: Path diagnostic report is not generated. Current output format does not support diagnostics that cross file boundaries. Refer to --analyzer-output for valid output formats
/home/matthias/vcs/github/wesnoth/src/terrain/builder.cpp:168:48: warning: Division by zero
                                img_list.back().set_animation_time(ri.rand % img_list.back().get_animation_duration());
                                                                   ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/matthias/vcs/github/wesnoth/src/terrain/builder.cpp:1191:30: warning: Forming reference to null pointer
                                const map_location loc = legacy_difference(*itor, min_constraint->loc);
                                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2 warnings generated.
[ 21%] Building CXX object src/CMakeFiles/wesnoth-game.dir/terrain/terrain.cpp.o
[ 21%] Building CXX object src/CMakeFiles/wesnoth-game.dir/terrain/translation.cpp.o
/home/matthias/vcs/github/wesnoth/src/terrain/translation.cpp:740:9: warning: Value stored to 'end' during its initialization is never read
        size_t end = str.size();
               ^~~   ~~~~~~~~~~
1 warning generated.
[ 21%] Building CXX object src/CMakeFiles/wesnoth-game.dir/theme.cpp.o
[ 21%] Building CXX object src/CMakeFiles/wesnoth-game.dir/time_of_day.cpp.o
[ 21%] Building CXX object src/CMakeFiles/wesnoth-game.dir/tooltips.cpp.o
[ 21%] Building CXX object src/CMakeFiles/wesnoth-game.dir/utils/make_enum.cpp.o
[ 21%] Building CXX object src/CMakeFiles/wesnoth-game.dir/video.cpp.o
[ 21%] Building CXX object src/CMakeFiles/wesnoth-game.dir/widgets/button.cpp.o
[ 21%] Building CXX object src/CMakeFiles/wesnoth-game.dir/widgets/label.cpp.o
[ 21%] Building CXX object src/CMakeFiles/wesnoth-game.dir/widgets/menu.cpp.o
[ 21%] Building CXX object src/CMakeFiles/wesnoth-game.dir/widgets/menu_style.cpp.o
[ 21%] Building CXX object src/CMakeFiles/wesnoth-game.dir/widgets/scrollarea.cpp.o
[ 21%] Building CXX object src/CMakeFiles/wesnoth-game.dir/widgets/scrollbar.cpp.o
/home/matthias/vcs/github/wesnoth/src/widgets/scrollbar.cpp:353:54: warning: Division by zero
                        int dep = y_dep * int(full_height_ - grip_height_)/ (groove.h - grip.h);
                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
1 warning generated.
[ 26%] Building CXX object src/CMakeFiles/wesnoth-game.dir/widgets/textbox.cpp.o
[ 26%] Building CXX object src/CMakeFiles/wesnoth-game.dir/widgets/widget.cpp.o
[ 26%] Building CXX object src/CMakeFiles/wesnoth-game.dir/wml_exception.cpp.o
[ 26%] Building CXX object src/CMakeFiles/wesnoth-game.dir/desktop/dbus_notification.cpp.o
[ 26%] Building CXX object src/CMakeFiles/wesnoth-game.dir/about.cpp.o
[ 26%] Building CXX object src/CMakeFiles/wesnoth-game.dir/actions/advancement.cpp.o
[ 26%] Building CXX object src/CMakeFiles/wesnoth-game.dir/actions/attack.cpp.o
/home/matthias/vcs/github/wesnoth/src/actions/attack.cpp:1377:4: warning: Value stored to 'hits' is never read
                        hits = results_hits;
                        ^      ~~~~~~~~~~~~
/home/matthias/vcs/github/wesnoth/src/actions/attack.cpp:1388:4: warning: Value stored to 'damage' is never read
                        damage = results_damage;
                        ^        ~~~~~~~~~~~~~~
2 warnings generated.
[ 26%] Building CXX object src/CMakeFiles/wesnoth-game.dir/actions/create.cpp.o
[ 26%] Building CXX object src/CMakeFiles/wesnoth-game.dir/actions/heal.cpp.o
[ 26%] Building CXX object src/CMakeFiles/wesnoth-game.dir/actions/move.cpp.o
[ 26%] Building CXX object src/CMakeFiles/wesnoth-game.dir/actions/shroud_clearing_action.cpp.o
[ 26%] Building CXX object src/CMakeFiles/wesnoth-game.dir/actions/undo.cpp.o
[ 26%] Building CXX object src/CMakeFiles/wesnoth-game.dir/actions/undo_action.cpp.o
[ 26%] Building CXX object src/CMakeFiles/wesnoth-game.dir/actions/undo_dismiss_action.cpp.o
[ 26%] Building CXX object src/CMakeFiles/wesnoth-game.dir/actions/undo_move_action.cpp.o
[ 26%] Building CXX object src/CMakeFiles/wesnoth-game.dir/actions/undo_recall_action.cpp.o
[ 26%] Building CXX object src/CMakeFiles/wesnoth-game.dir/actions/undo_recruit_action.cpp.o
[ 26%] Building CXX object src/CMakeFiles/wesnoth-game.dir/actions/undo_update_shroud_action.cpp.o
[ 26%] Building CXX object src/CMakeFiles/wesnoth-game.dir/actions/unit_creator.cpp.o
[ 26%] Building CXX object src/CMakeFiles/wesnoth-game.dir/actions/vision.cpp.o
[ 26%] Building CXX object src/CMakeFiles/wesnoth-game.dir/addon/client.cpp.o
warning: Path diagnostic report is not generated. Current output format does not support diagnostics that cross file boundaries. Refer to --analyzer-output for valid output formats
warning: Path diagnostic report is not generated. Current output format does not support diagnostics that cross file boundaries. Refer to --analyzer-output for valid output formats
In file included from /home/matthias/vcs/github/wesnoth/src/addon/client.cpp:29:
In file included from /home/matthias/vcs/github/wesnoth/src/addon/client.hpp:19:
In file included from /home/matthias/vcs/github/wesnoth/src/gui/dialogs/network_transmission.hpp:19:
In file included from /home/matthias/vcs/github/wesnoth/src/network_asio.hpp:30:
In file included from /usr/include/boost/asio.hpp:21:
In file included from /usr/include/boost/asio/basic_datagram_socket.hpp:20:
In file included from /usr/include/boost/asio/basic_socket.hpp:20:
In file included from /usr/include/boost/asio/basic_io_object.hpp:19:
In file included from /usr/include/boost/asio/io_service.hpp:767:
In file included from /usr/include/boost/asio/impl/io_service.hpp:19:
In file included from /usr/include/boost/asio/detail/service_registry.hpp:20:
In file included from /usr/include/boost/asio/detail/mutex.hpp:25:
/usr/include/boost/asio/detail/posix_mutex.hpp:52:11: warning: This lock has already been acquired
    (void)::pthread_mutex_lock(&mutex_); // Ignore EINVAL.
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/boost/asio/detail/posix_mutex.hpp:58:11: warning: This was not the most recently acquired lock. Possible lock order reversal
    (void)::pthread_mutex_unlock(&mutex_); // Ignore EINVAL.
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2 warnings generated.
[ 26%] Building CXX object src/CMakeFiles/wesnoth-game.dir/addon/info.cpp.o
[ 26%] Building CXX object src/CMakeFiles/wesnoth-game.dir/addon/manager.cpp.o
[ 30%] Building CXX object src/CMakeFiles/wesnoth-game.dir/addon/manager_ui.cpp.o
[ 30%] Building CXX object src/CMakeFiles/wesnoth-game.dir/addon/state.cpp.o
[ 30%] Building CXX object src/CMakeFiles/wesnoth-game.dir/addon/validation.cpp.o
[ 30%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/actions.cpp.o
[ 30%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/composite/ai.cpp.o
[ 30%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/composite/aspect.cpp.o
[ 30%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/composite/component.cpp.o
[ 30%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/composite/contexts.cpp.o
[ 30%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/composite/engine.cpp.o
[ 30%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/composite/goal.cpp.o
[ 30%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/composite/rca.cpp.o
[ 30%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/composite/stage.cpp.o
[ 30%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/configuration.cpp.o
[ 30%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/contexts.cpp.o
[ 30%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/default/aspect_attacks.cpp.o
[ 30%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/default/attack.cpp.o
/home/matthias/vcs/github/wesnoth/src/ai/default/attack.cpp:244:20: warning: Called C++ object pointer is null
                chance_to_kill = prev_def->hp_dist[0];
                                 ^~~~~~~~~~~~~~~~~~~~
1 warning generated.
[ 30%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/default/ca.cpp.o
[ 30%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/default/ca_move_to_targets.cpp.o
[ 30%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/default/contexts.cpp.o
[ 30%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/default/engine_cpp.cpp.o
[ 30%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/default/recruitment.cpp.o
[ 30%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/default/stage_rca.cpp.o
[ 30%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/formula/ai.cpp.o
[ 34%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/formula/callable_objects.cpp.o
[ 34%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/formula/candidates.cpp.o
[ 34%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/formula/engine_fai.cpp.o
[ 34%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/formula/function_table.cpp.o
[ 34%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/formula/stage_side_formulas.cpp.o
[ 34%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/formula/stage_unit_formulas.cpp.o
[ 34%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/game_info.cpp.o
[ 34%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/gamestate_observer.cpp.o
[ 34%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/lua/aspect_advancements.cpp.o
[ 34%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/lua/core.cpp.o
[ 34%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/lua/engine_lua.cpp.o
[ 34%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/lua/lua_object.cpp.o
[ 34%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/manager.cpp.o
[ 34%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/registry.cpp.o
[ 34%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/simulated_actions.cpp.o
[ 34%] Building CXX object src/CMakeFiles/wesnoth-game.dir/ai/testing.cpp.o
[ 34%] Building CXX object src/CMakeFiles/wesnoth-game.dir/animated.cpp.o
[ 34%] Building CXX object src/CMakeFiles/wesnoth-game.dir/attack_prediction.cpp.o
[ 34%] Building CXX object src/CMakeFiles/wesnoth-game.dir/build_info.cpp.o
[ 34%] Building CXX object src/CMakeFiles/wesnoth-game.dir/carryover.cpp.o
[ 34%] Building CXX object src/CMakeFiles/wesnoth-game.dir/chat_command_handler.cpp.o
[ 34%] Building CXX object src/CMakeFiles/wesnoth-game.dir/chat_events.cpp.o
[ 34%] Building CXX object src/CMakeFiles/wesnoth-game.dir/commandline_options.cpp.o
[ 34%] Building CXX object src/CMakeFiles/wesnoth-game.dir/config_cache.cpp.o
In file included from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:12:0,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/config_cache.cpp:23:
/usr/include/boost/type_traits/detail/bool_trait_def.hpp:18:79: note: #pragma message: NOTE: Use of this header (bool_trait_def.hpp) is deprecated
 # pragma message("NOTE: Use of this header (bool_trait_def.hpp) is deprecated")
                                                                               ^
In file included from /usr/include/boost/type_traits/detail/bool_trait_def.hpp:21:0,
                 from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:12,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/config_cache.cpp:23:
/usr/include/boost/type_traits/detail/template_arity_spec.hpp:13:84: note: #pragma message: NOTE: Use of this header (template_arity_spec.hpp) is deprecated
 # pragma message("NOTE: Use of this header (template_arity_spec.hpp) is deprecated")
                                                                                    ^
In file included from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:13:0,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/config_cache.cpp:23:
/usr/include/boost/type_traits/detail/template_arity_spec.hpp:13:84: note: #pragma message: NOTE: Use of this header (template_arity_spec.hpp) is deprecated
 # pragma message("NOTE: Use of this header (template_arity_spec.hpp) is deprecated")
                                                                                    ^
[ 39%] Building CXX object src/CMakeFiles/wesnoth-game.dir/controller_base.cpp.o
[ 39%] Building CXX object src/CMakeFiles/wesnoth-game.dir/countdown_clock.cpp.o
[ 39%] Building CXX object src/CMakeFiles/wesnoth-game.dir/desktop/notifications.cpp.o
[ 39%] Building CXX object src/CMakeFiles/wesnoth-game.dir/desktop/open.cpp.o
[ 39%] Building CXX object src/CMakeFiles/wesnoth-game.dir/desktop/paths.cpp.o
[ 39%] Building CXX object src/CMakeFiles/wesnoth-game.dir/desktop/version.cpp.o
[ 39%] Building CXX object src/CMakeFiles/wesnoth-game.dir/display_chat_manager.cpp.o
[ 39%] Building CXX object src/CMakeFiles/wesnoth-game.dir/editor/action/action.cpp.o
[ 39%] Building CXX object src/CMakeFiles/wesnoth-game.dir/editor/action/action_item.cpp.o
[ 39%] Building CXX object src/CMakeFiles/wesnoth-game.dir/editor/action/action_label.cpp.o
[ 39%] Building CXX object src/CMakeFiles/wesnoth-game.dir/editor/action/action_select.cpp.o
[ 39%] Building CXX object src/CMakeFiles/wesnoth-game.dir/editor/action/action_unit.cpp.o
[ 39%] Building CXX object src/CMakeFiles/wesnoth-game.dir/editor/action/action_village.cpp.o
[ 39%] Building CXX object src/CMakeFiles/wesnoth-game.dir/editor/action/mouse/mouse_action.cpp.o
[ 39%] Building CXX object src/CMakeFiles/wesnoth-game.dir/editor/action/mouse/mouse_action_item.cpp.o
[ 39%] Building CXX object src/CMakeFiles/wesnoth-game.dir/editor/action/mouse/mouse_action_map_label.cpp.o
[ 39%] Building CXX object src/CMakeFiles/wesnoth-game.dir/editor/action/mouse/mouse_action_select.cpp.o
[ 39%] Building CXX object src/CMakeFiles/wesnoth-game.dir/editor/action/mouse/mouse_action_unit.cpp.o
[ 39%] Building CXX object src/CMakeFiles/wesnoth-game.dir/editor/action/mouse/mouse_action_village.cpp.o
[ 39%] Building CXX object src/CMakeFiles/wesnoth-game.dir/editor/controller/editor_controller.cpp.o
[ 39%] Building CXX object src/CMakeFiles/wesnoth-game.dir/editor/editor_display.cpp.o
[ 39%] Building CXX object src/CMakeFiles/wesnoth-game.dir/editor/editor_main.cpp.o
[ 39%] Building CXX object src/CMakeFiles/wesnoth-game.dir/editor/map/context_manager.cpp.o
[ 43%] Building CXX object src/CMakeFiles/wesnoth-game.dir/editor/map/editor_map.cpp.o
[ 43%] Building CXX object src/CMakeFiles/wesnoth-game.dir/editor/map/map_context.cpp.o
In file included from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:12:0,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/editor/map/map_context.cpp:26:
/usr/include/boost/type_traits/detail/bool_trait_def.hpp:18:79: note: #pragma message: NOTE: Use of this header (bool_trait_def.hpp) is deprecated
 # pragma message("NOTE: Use of this header (bool_trait_def.hpp) is deprecated")
                                                                               ^
In file included from /usr/include/boost/type_traits/detail/bool_trait_def.hpp:21:0,
                 from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:12,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/editor/map/map_context.cpp:26:
/usr/include/boost/type_traits/detail/template_arity_spec.hpp:13:84: note: #pragma message: NOTE: Use of this header (template_arity_spec.hpp) is deprecated
 # pragma message("NOTE: Use of this header (template_arity_spec.hpp) is deprecated")
                                                                                    ^
In file included from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:13:0,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/editor/map/map_context.cpp:26:
/usr/include/boost/type_traits/detail/template_arity_spec.hpp:13:84: note: #pragma message: NOTE: Use of this header (template_arity_spec.hpp) is deprecated
 # pragma message("NOTE: Use of this header (template_arity_spec.hpp) is deprecated")
                                                                                    ^
[ 43%] Building CXX object src/CMakeFiles/wesnoth-game.dir/editor/map/map_fragment.cpp.o
[ 43%] Building CXX object src/CMakeFiles/wesnoth-game.dir/editor/palette/editor_palettes.cpp.o
[ 43%] Building CXX object src/CMakeFiles/wesnoth-game.dir/editor/palette/item_palette.cpp.o
[ 43%] Building CXX object src/CMakeFiles/wesnoth-game.dir/editor/palette/location_palette.cpp.o
[ 43%] Building CXX object src/CMakeFiles/wesnoth-game.dir/editor/palette/palette_manager.cpp.o
[ 43%] Building CXX object src/CMakeFiles/wesnoth-game.dir/editor/palette/terrain_palettes.cpp.o
[ 43%] Building CXX object src/CMakeFiles/wesnoth-game.dir/editor/palette/tristate_button.cpp.o
/home/matthias/vcs/github/wesnoth/src/editor/palette/tristate_button.cpp:102:8: warning: Value stored to 'new_state' during its initialization is never read
        STATE new_state = state_;
              ^~~~~~~~~   ~~~~~~
1 warning generated.
[ 43%] Building CXX object src/CMakeFiles/wesnoth-game.dir/editor/palette/unit_palette.cpp.o
[ 43%] Building CXX object src/CMakeFiles/wesnoth-game.dir/editor/toolkit/brush.cpp.o
[ 43%] Building CXX object src/CMakeFiles/wesnoth-game.dir/editor/toolkit/editor_toolkit.cpp.o
[ 43%] Building CXX object src/CMakeFiles/wesnoth-game.dir/fake_unit_manager.cpp.o
[ 43%] Building CXX object src/CMakeFiles/wesnoth-game.dir/fake_unit_ptr.cpp.o
[ 43%] Building CXX object src/CMakeFiles/wesnoth-game.dir/filesystem_sdl.cpp.o
[ 43%] Building CXX object src/CMakeFiles/wesnoth-game.dir/floating_textbox.cpp.o
[ 43%] Building CXX object src/CMakeFiles/wesnoth-game.dir/formula/callable_objects.cpp.o
[ 43%] Building CXX object src/CMakeFiles/wesnoth-game.dir/formula/debugger.cpp.o
[ 43%] Building CXX object src/CMakeFiles/wesnoth-game.dir/formula/debugger_fwd.cpp.o
[ 43%] Building CXX object src/CMakeFiles/wesnoth-game.dir/formula/formula.cpp.o
[ 43%] Building CXX object src/CMakeFiles/wesnoth-game.dir/formula/function.cpp.o
[ 43%] Building CXX object src/CMakeFiles/wesnoth-game.dir/formula/function_gamestate.cpp.o
[ 43%] Building CXX object src/CMakeFiles/wesnoth-game.dir/formula/string_utils.cpp.o
[ 47%] Building CXX object src/CMakeFiles/wesnoth-game.dir/formula/tokenizer.cpp.o
[ 47%] Building CXX object src/CMakeFiles/wesnoth-game.dir/formula/variant.cpp.o
[ 47%] Building CXX object src/CMakeFiles/wesnoth-game.dir/formula/variant_value.cpp.o
[ 47%] Building CXX object src/CMakeFiles/wesnoth-game.dir/game_board.cpp.o
[ 47%] Building CXX object src/CMakeFiles/wesnoth-game.dir/game_classification.cpp.o
[ 47%] Building CXX object src/CMakeFiles/wesnoth-game.dir/game_config_manager.cpp.o
[ 47%] Building CXX object src/CMakeFiles/wesnoth-game.dir/game_data.cpp.o
[ 47%] Building CXX object src/CMakeFiles/wesnoth-game.dir/game_display.cpp.o
[ 47%] Building CXX object src/CMakeFiles/wesnoth-game.dir/game_events/action_wml.cpp.o
[ 47%] Building CXX object src/CMakeFiles/wesnoth-game.dir/game_events/conditional_wml.cpp.o
[ 47%] Building CXX object src/CMakeFiles/wesnoth-game.dir/game_events/entity_location.cpp.o
[ 47%] Building CXX object src/CMakeFiles/wesnoth-game.dir/game_events/handlers.cpp.o
[ 47%] Building CXX object src/CMakeFiles/wesnoth-game.dir/game_events/manager.cpp.o
[ 47%] Building CXX object src/CMakeFiles/wesnoth-game.dir/game_events/manager_impl.cpp.o
[ 47%] Building CXX object src/CMakeFiles/wesnoth-game.dir/game_events/menu_item.cpp.o
[ 47%] Building CXX object src/CMakeFiles/wesnoth-game.dir/game_events/pump.cpp.o
[ 47%] Building CXX object src/CMakeFiles/wesnoth-game.dir/game_events/wmi_manager.cpp.o
[ 47%] Building CXX object src/CMakeFiles/wesnoth-game.dir/game_initialization/configure_engine.cpp.o
[ 47%] Building CXX object src/CMakeFiles/wesnoth-game.dir/game_initialization/connect_engine.cpp.o
/home/matthias/vcs/github/wesnoth/src/game_initialization/connect_engine.cpp:248:6: warning: Value stored to 'side_assigned' is never read
                                        side_assigned = true;
                                        ^               ~~~~
1 warning generated.
[ 47%] Building CXX object src/CMakeFiles/wesnoth-game.dir/game_initialization/create_engine.cpp.o
[ 47%] Building CXX object src/CMakeFiles/wesnoth-game.dir/game_initialization/depcheck.cpp.o
[ 47%] Building CXX object src/CMakeFiles/wesnoth-game.dir/game_initialization/flg_manager.cpp.o
[ 47%] Building CXX object src/CMakeFiles/wesnoth-game.dir/game_initialization/lobby_data.cpp.o
[ 52%] Building CXX object src/CMakeFiles/wesnoth-game.dir/game_initialization/lobby_info.cpp.o
[ 52%] Building CXX object src/CMakeFiles/wesnoth-game.dir/game_initialization/mp_game_utils.cpp.o
[ 52%] Building CXX object src/CMakeFiles/wesnoth-game.dir/game_initialization/multiplayer.cpp.o
[ 52%] Building CXX object src/CMakeFiles/wesnoth-game.dir/game_initialization/playcampaign.cpp.o
[ 52%] Building CXX object src/CMakeFiles/wesnoth-game.dir/game_initialization/singleplayer.cpp.o
[ 52%] Building CXX object src/CMakeFiles/wesnoth-game.dir/game_launcher.cpp.o
[ 52%] Building CXX object src/CMakeFiles/wesnoth-game.dir/game_state.cpp.o
[ 52%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/auxiliary/iterator/iterator.cpp.o
[ 52%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/auxiliary/iterator/walker_grid.cpp.o
[ 52%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/auxiliary/iterator/walker_tree_node.cpp.o
[ 52%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/auxiliary/iterator/walker_widget.cpp.o
[ 52%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/auxiliary/old_markup.cpp.o
[ 52%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/auxiliary/tips.cpp.o
[ 52%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/core/canvas.cpp.o
[ 52%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/core/event/dispatcher.cpp.o
[ 52%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/core/event/distributor.cpp.o
[ 52%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/core/event/handler.cpp.o
[ 52%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/core/linked_group_definition.cpp.o
[ 52%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/core/log.cpp.o
[ 52%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/core/placer.cpp.o
[ 52%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/core/placer/horizontal_list.cpp.o
[ 52%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/core/placer/vertical_list.cpp.o
[ 52%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/core/point.cpp.o
[ 52%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/core/timer.cpp.o
[ 56%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/core/widget_definition.cpp.o
[ 56%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/core/window_builder.cpp.o
[ 56%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/core/window_builder/helper.cpp.o
[ 56%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/core/window_builder/instance.cpp.o
[ 56%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/addon/connect.cpp.o
[ 56%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/addon/install_dependencies.cpp.o
[ 56%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/addon/manager.cpp.o
[ 56%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/addon/uninstall_list.cpp.o
[ 56%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/advanced_graphics_options.cpp.o
[ 56%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/attack_predictions.cpp.o
[ 56%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/campaign_difficulty.cpp.o
[ 56%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/campaign_selection.cpp.o
[ 56%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/chat_log.cpp.o
[ 56%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/core_selection.cpp.o
[ 56%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/debug_clock.cpp.o
[ 56%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/depcheck_confirm_change.cpp.o
[ 56%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/depcheck_select_new.cpp.o
[ 56%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/drop_down_menu.cpp.o
[ 56%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/edit_label.cpp.o
[ 56%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/edit_text.cpp.o
[ 56%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/editor/custom_tod.cpp.o
[ 56%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/editor/edit_label.cpp.o
[ 56%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/editor/edit_scenario.cpp.o
[ 60%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/editor/edit_side.cpp.o
[ 60%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/editor/generate_map.cpp.o
[ 60%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/editor/generator_settings.cpp.o
[ 60%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/editor/new_map.cpp.o
[ 60%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/editor/resize_map.cpp.o
[ 60%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/editor/set_starting_position.cpp.o
[ 60%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/end_credits.cpp.o
[ 60%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/file_dialog.cpp.o
[ 60%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/folder_create.cpp.o
[ 60%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/formula_debugger.cpp.o
[ 60%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/game_cache_options.cpp.o
[ 60%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/game_delete.cpp.o
[ 60%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/game_load.cpp.o
[ 60%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/game_save.cpp.o
[ 60%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/game_stats.cpp.o
[ 60%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/game_version.cpp.o
[ 60%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/gamestate_inspector.cpp.o
[ 60%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/help_browser.cpp.o
[ 60%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/hotkey_bind.cpp.o
[ 60%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/label_settings.cpp.o
[ 60%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/language_selection.cpp.o
[ 60%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/loading_screen.cpp.o
[ 60%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/lobby/lobby.cpp.o
[ 65%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/lobby/player_info.cpp.o
[ 65%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/log_settings.cpp.o
[ 65%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/lua_interpreter.cpp.o
[ 65%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/message.cpp.o
[ 65%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/modal_dialog.cpp.o
[ 65%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/modeless_dialog.cpp.o
[ 65%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/multiplayer/faction_select.cpp.o
[ 65%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/multiplayer/mp_alerts_options.cpp.o
[ 65%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/multiplayer/mp_change_control.cpp.o
[ 65%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/multiplayer/mp_cmd_wrapper.cpp.o
[ 65%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/multiplayer/mp_connect.cpp.o
[ 65%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/multiplayer/mp_create_game.cpp.o
[ 65%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/multiplayer/mp_host_game_prompt.cpp.o
[ 65%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/multiplayer/mp_join_game.cpp.o
[ 65%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/multiplayer/mp_join_game_password_prompt.cpp.o
[ 65%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/multiplayer/mp_login.cpp.o
[ 65%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/multiplayer/mp_method_selection.cpp.o
[ 65%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/multiplayer/mp_options_helper.cpp.o
/home/matthias/vcs/github/wesnoth/src/gui/dialogs/multiplayer/mp_options_helper.cpp:68:6: warning: Value stored to 'pos' during its initialization is never read
        int pos = remove_nodes_for_type("campaign");
            ^~~   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.
[ 65%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/multiplayer/mp_staging.cpp.o
[ 65%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/multiplayer/synced_choice_wait.cpp.o
[ 65%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/network_transmission.cpp.o
[ 65%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/outro.cpp.o
[ 65%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/preferences_dialog.cpp.o
[ 65%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/screenshot_notification.cpp.o
[ 69%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/select_orb_colors.cpp.o
[ 69%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/simple_item_selector.cpp.o
[ 69%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/sp_options_configure.cpp.o
[ 69%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/statistics_dialog.cpp.o
[ 69%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/story_viewer.cpp.o
[ 69%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/terrain_layers.cpp.o
[ 69%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/theme_list.cpp.o
[ 69%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/title_screen.cpp.o
[ 69%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/tooltip.cpp.o
[ 69%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/transient_message.cpp.o
[ 69%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/unit_advance.cpp.o
[ 69%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/unit_attack.cpp.o
[ 69%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/unit_create.cpp.o
[ 69%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/unit_list.cpp.o
[ 69%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/unit_recall.cpp.o
[ 69%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/unit_recruit.cpp.o
[ 69%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/wml_error.cpp.o
[ 69%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/dialogs/wml_message.cpp.o
[ 69%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/addon_list.cpp.o
[ 69%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/button.cpp.o
[ 69%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/chatbox.cpp.o
[ 69%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/container_base.cpp.o
[ 69%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/debug.cpp.o
[ 73%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/drawing.cpp.o
[ 73%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/generator.cpp.o
[ 73%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/grid.cpp.o
[ 73%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/helper.cpp.o
[ 73%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/horizontal_scrollbar.cpp.o
[ 73%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/image.cpp.o
[ 73%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/label.cpp.o
[ 73%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/list.cpp.o
[ 73%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/listbox.cpp.o
[ 73%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/matrix.cpp.o
[ 73%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/menu_button.cpp.o
[ 73%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/minimap.cpp.o
[ 73%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/multimenu_button.cpp.o
[ 73%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/multi_page.cpp.o
[ 73%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/pane.cpp.o
[ 73%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/panel.cpp.o
[ 73%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/password_box.cpp.o
[ 73%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/progress_bar.cpp.o
[ 73%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/repeating_button.cpp.o
[ 73%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/scroll_label.cpp.o
[ 73%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/scrollbar.cpp.o
[ 73%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/scrollbar_container.cpp.o
[ 73%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/scrollbar_panel.cpp.o
[ 78%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/settings.cpp.o
/home/matthias/vcs/github/wesnoth/src/gui/widgets/settings.cpp:531:2: warning: Returning null reference
        return *best_resolution;        
        ^~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.
[ 78%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/size_lock.cpp.o
[ 78%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/slider.cpp.o
[ 78%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/spacer.cpp.o
[ 78%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/stacked_widget.cpp.o
[ 78%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/styled_widget.cpp.o
[ 78%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/text_box.cpp.o
[ 78%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/text_box_base.cpp.o
[ 78%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/toggle_button.cpp.o
[ 78%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/toggle_panel.cpp.o
[ 78%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/tree_view.cpp.o
[ 78%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/tree_view_node.cpp.o
/home/matthias/vcs/github/wesnoth/src/gui/widgets/tree_view_node.cpp:753:9: warning: Called C++ object pointer is null
        while(!cur->is_folded() && cur->count_children() > 0) {
               ^~~~~~~~~~~~~~~~
1 warning generated.
[ 78%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/unit_preview_pane.cpp.o
[ 78%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/vertical_scrollbar.cpp.o
[ 78%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/viewport.cpp.o
[ 78%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/widget.cpp.o
[ 78%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/widget_helpers.cpp.o
[ 78%] Building CXX object src/CMakeFiles/wesnoth-game.dir/gui/widgets/window.cpp.o
[ 78%] Building CXX object src/CMakeFiles/wesnoth-game.dir/halo.cpp.o
[ 78%] Building CXX object src/CMakeFiles/wesnoth-game.dir/help/help.cpp.o
[ 78%] Building CXX object src/CMakeFiles/wesnoth-game.dir/help/help_browser.cpp.o
[ 78%] Building CXX object src/CMakeFiles/wesnoth-game.dir/help/help_impl.cpp.o
[ 78%] Building CXX object src/CMakeFiles/wesnoth-game.dir/help/help_menu.cpp.o
[ 82%] Building CXX object src/CMakeFiles/wesnoth-game.dir/help/help_text_area.cpp.o
[ 82%] Building CXX object src/CMakeFiles/wesnoth-game.dir/help/help_topic_generators.cpp.o
[ 82%] Building CXX object src/CMakeFiles/wesnoth-game.dir/hotkey/hotkey_handler.cpp.o
[ 82%] Building CXX object src/CMakeFiles/wesnoth-game.dir/hotkey/hotkey_handler_mp.cpp.o
[ 82%] Building CXX object src/CMakeFiles/wesnoth-game.dir/hotkey/hotkey_handler_sp.cpp.o
[ 82%] Building CXX object src/CMakeFiles/wesnoth-game.dir/menu_events.cpp.o
[ 82%] Building CXX object src/CMakeFiles/wesnoth-game.dir/mouse_events.cpp.o
[ 82%] Building CXX object src/CMakeFiles/wesnoth-game.dir/mouse_handler_base.cpp.o
[ 82%] Building CXX object src/CMakeFiles/wesnoth-game.dir/movetype.cpp.o
[ 82%] Building CXX object src/CMakeFiles/wesnoth-game.dir/mp_game_settings.cpp.o
[ 82%] Building CXX object src/CMakeFiles/wesnoth-game.dir/mp_ui_alerts.cpp.o
[ 82%] Building CXX object src/CMakeFiles/wesnoth-game.dir/network_asio.cpp.o
warning: Path diagnostic report is not generated. Current output format does not support diagnostics that cross file boundaries. Refer to --analyzer-output for valid output formats
warning: Path diagnostic report is not generated. Current output format does not support diagnostics that cross file boundaries. Refer to --analyzer-output for valid output formats
In file included from /home/matthias/vcs/github/wesnoth/src/network_asio.cpp:19:
In file included from /home/matthias/vcs/github/wesnoth/src/network_asio.hpp:30:
In file included from /usr/include/boost/asio.hpp:21:
In file included from /usr/include/boost/asio/basic_datagram_socket.hpp:20:
In file included from /usr/include/boost/asio/basic_socket.hpp:20:
In file included from /usr/include/boost/asio/basic_io_object.hpp:19:
In file included from /usr/include/boost/asio/io_service.hpp:767:
In file included from /usr/include/boost/asio/impl/io_service.hpp:19:
In file included from /usr/include/boost/asio/detail/service_registry.hpp:20:
In file included from /usr/include/boost/asio/detail/mutex.hpp:25:
/usr/include/boost/asio/detail/posix_mutex.hpp:58:11: warning: This was not the most recently acquired lock. Possible lock order reversal
    (void)::pthread_mutex_unlock(&mutex_); // Ignore EINVAL.
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.
[ 82%] Building CXX object src/CMakeFiles/wesnoth-game.dir/pathfind/pathfind.cpp.o
[ 82%] Building CXX object src/CMakeFiles/wesnoth-game.dir/pathfind/teleport.cpp.o
[ 82%] Building CXX object src/CMakeFiles/wesnoth-game.dir/persist_context.cpp.o
In file included from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:12:0,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/persist_context.cpp:20:
/usr/include/boost/type_traits/detail/bool_trait_def.hpp:18:79: note: #pragma message: NOTE: Use of this header (bool_trait_def.hpp) is deprecated
 # pragma message("NOTE: Use of this header (bool_trait_def.hpp) is deprecated")
                                                                               ^
In file included from /usr/include/boost/type_traits/detail/bool_trait_def.hpp:21:0,
                 from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:12,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/persist_context.cpp:20:
/usr/include/boost/type_traits/detail/template_arity_spec.hpp:13:84: note: #pragma message: NOTE: Use of this header (template_arity_spec.hpp) is deprecated
 # pragma message("NOTE: Use of this header (template_arity_spec.hpp) is deprecated")
                                                                                    ^
In file included from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:13:0,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/persist_context.cpp:20:
/usr/include/boost/type_traits/detail/template_arity_spec.hpp:13:84: note: #pragma message: NOTE: Use of this header (template_arity_spec.hpp) is deprecated
 # pragma message("NOTE: Use of this header (template_arity_spec.hpp) is deprecated")
                                                                                    ^
[ 82%] Building CXX object src/CMakeFiles/wesnoth-game.dir/persist_manager.cpp.o
[ 82%] Building CXX object src/CMakeFiles/wesnoth-game.dir/persist_var.cpp.o
[ 82%] Building CXX object src/CMakeFiles/wesnoth-game.dir/play_controller.cpp.o
[ 82%] Building CXX object src/CMakeFiles/wesnoth-game.dir/playmp_controller.cpp.o
[ 82%] Building CXX object src/CMakeFiles/wesnoth-game.dir/playsingle_controller.cpp.o
[ 82%] Building CXX object src/CMakeFiles/wesnoth-game.dir/playturn.cpp.o
[ 82%] Building CXX object src/CMakeFiles/wesnoth-game.dir/playturn_network_adapter.cpp.o
[ 82%] Building CXX object src/CMakeFiles/wesnoth-game.dir/preferences/display.cpp.o
[ 82%] Building CXX object src/CMakeFiles/wesnoth-game.dir/preferences/editor.cpp.o
[ 86%] Building CXX object src/CMakeFiles/wesnoth-game.dir/preferences/game.cpp.o
[ 86%] Building CXX object src/CMakeFiles/wesnoth-game.dir/preferences/lobby.cpp.o
[ 86%] Building CXX object src/CMakeFiles/wesnoth-game.dir/random.cpp.o
[ 86%] Building CXX object src/CMakeFiles/wesnoth-game.dir/random_deterministic.cpp.o
[ 86%] Building CXX object src/CMakeFiles/wesnoth-game.dir/random_synced.cpp.o
[ 86%] Building CXX object src/CMakeFiles/wesnoth-game.dir/recall_list_manager.cpp.o
[ 86%] Building CXX object src/CMakeFiles/wesnoth-game.dir/replay.cpp.o
[ 86%] Building CXX object src/CMakeFiles/wesnoth-game.dir/replay_controller.cpp.o
[ 86%] Building CXX object src/CMakeFiles/wesnoth-game.dir/replay_helper.cpp.o
[ 86%] Building CXX object src/CMakeFiles/wesnoth-game.dir/replay_recorder_base.cpp.o
In file included from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:12:0,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/replay_recorder_base.cpp:15:
/usr/include/boost/type_traits/detail/bool_trait_def.hpp:18:79: note: #pragma message: NOTE: Use of this header (bool_trait_def.hpp) is deprecated
 # pragma message("NOTE: Use of this header (bool_trait_def.hpp) is deprecated")
                                                                               ^
In file included from /usr/include/boost/type_traits/detail/bool_trait_def.hpp:21:0,
                 from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:12,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/replay_recorder_base.cpp:15:
/usr/include/boost/type_traits/detail/template_arity_spec.hpp:13:84: note: #pragma message: NOTE: Use of this header (template_arity_spec.hpp) is deprecated
 # pragma message("NOTE: Use of this header (template_arity_spec.hpp) is deprecated")
                                                                                    ^
In file included from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:13:0,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/replay_recorder_base.cpp:15:
/usr/include/boost/type_traits/detail/template_arity_spec.hpp:13:84: note: #pragma message: NOTE: Use of this header (template_arity_spec.hpp) is deprecated
 # pragma message("NOTE: Use of this header (template_arity_spec.hpp) is deprecated")
                                                                                    ^
[ 86%] Building CXX object src/CMakeFiles/wesnoth-game.dir/resources.cpp.o
[ 86%] Building CXX object src/CMakeFiles/wesnoth-game.dir/save_blocker.cpp.o
[ 86%] Building CXX object src/CMakeFiles/wesnoth-game.dir/save_index.cpp.o
In file included from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:12:0,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/save_index.cpp:27:
/usr/include/boost/type_traits/detail/bool_trait_def.hpp:18:79: note: #pragma message: NOTE: Use of this header (bool_trait_def.hpp) is deprecated
 # pragma message("NOTE: Use of this header (bool_trait_def.hpp) is deprecated")
                                                                               ^
In file included from /usr/include/boost/type_traits/detail/bool_trait_def.hpp:21:0,
                 from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:12,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/save_index.cpp:27:
/usr/include/boost/type_traits/detail/template_arity_spec.hpp:13:84: note: #pragma message: NOTE: Use of this header (template_arity_spec.hpp) is deprecated
 # pragma message("NOTE: Use of this header (template_arity_spec.hpp) is deprecated")
                                                                                    ^
In file included from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:13:0,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/save_index.cpp:27:
/usr/include/boost/type_traits/detail/template_arity_spec.hpp:13:84: note: #pragma message: NOTE: Use of this header (template_arity_spec.hpp) is deprecated
 # pragma message("NOTE: Use of this header (template_arity_spec.hpp) is deprecated")
                                                                                    ^
[ 86%] Building CXX object src/CMakeFiles/wesnoth-game.dir/saved_game.cpp.o
In file included from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:12:0,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/saved_game.cpp:57:
/usr/include/boost/type_traits/detail/bool_trait_def.hpp:18:79: note: #pragma message: NOTE: Use of this header (bool_trait_def.hpp) is deprecated
 # pragma message("NOTE: Use of this header (bool_trait_def.hpp) is deprecated")
                                                                               ^
In file included from /usr/include/boost/type_traits/detail/bool_trait_def.hpp:21:0,
                 from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:12,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/saved_game.cpp:57:
/usr/include/boost/type_traits/detail/template_arity_spec.hpp:13:84: note: #pragma message: NOTE: Use of this header (template_arity_spec.hpp) is deprecated
 # pragma message("NOTE: Use of this header (template_arity_spec.hpp) is deprecated")
                                                                                    ^
In file included from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:13:0,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/saved_game.cpp:57:
/usr/include/boost/type_traits/detail/template_arity_spec.hpp:13:84: note: #pragma message: NOTE: Use of this header (template_arity_spec.hpp) is deprecated
 # pragma message("NOTE: Use of this header (template_arity_spec.hpp) is deprecated")
                                                                                    ^
[ 86%] Building CXX object src/CMakeFiles/wesnoth-game.dir/savegame.cpp.o
In file included from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:12:0,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/savegame.cpp:42:
/usr/include/boost/type_traits/detail/bool_trait_def.hpp:18:79: note: #pragma message: NOTE: Use of this header (bool_trait_def.hpp) is deprecated
 # pragma message("NOTE: Use of this header (bool_trait_def.hpp) is deprecated")
                                                                               ^
In file included from /usr/include/boost/type_traits/detail/bool_trait_def.hpp:21:0,
                 from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:12,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/savegame.cpp:42:
/usr/include/boost/type_traits/detail/template_arity_spec.hpp:13:84: note: #pragma message: NOTE: Use of this header (template_arity_spec.hpp) is deprecated
 # pragma message("NOTE: Use of this header (template_arity_spec.hpp) is deprecated")
                                                                                    ^
In file included from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:13:0,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/savegame.cpp:42:
/usr/include/boost/type_traits/detail/template_arity_spec.hpp:13:84: note: #pragma message: NOTE: Use of this header (template_arity_spec.hpp) is deprecated
 # pragma message("NOTE: Use of this header (template_arity_spec.hpp) is deprecated")
                                                                                    ^
[ 86%] Building CXX object src/CMakeFiles/wesnoth-game.dir/scripting/application_lua_kernel.cpp.o
[ 86%] Building CXX object src/CMakeFiles/wesnoth-game.dir/scripting/debug_lua.cpp.o
[ 86%] Building CXX object src/CMakeFiles/wesnoth-game.dir/scripting/game_lua_kernel.cpp.o
[ 86%] Building CXX object src/CMakeFiles/wesnoth-game.dir/scripting/lua_audio.cpp.o
[ 86%] Building CXX object src/CMakeFiles/wesnoth-game.dir/scripting/lua_common.cpp.o
[ 86%] Building CXX object src/CMakeFiles/wesnoth-game.dir/scripting/lua_cpp_function.cpp.o
[ 86%] Building CXX object src/CMakeFiles/wesnoth-game.dir/scripting/lua_fileops.cpp.o
[ 86%] Building CXX object src/CMakeFiles/wesnoth-game.dir/scripting/lua_formula_bridge.cpp.o
[ 91%] Building CXX object src/CMakeFiles/wesnoth-game.dir/scripting/lua_gui2.cpp.o
[ 91%] Building CXX object src/CMakeFiles/wesnoth-game.dir/scripting/lua_kernel_base.cpp.o
[ 91%] Building CXX object src/CMakeFiles/wesnoth-game.dir/scripting/lua_map_location_ops.cpp.o
[ 91%] Building CXX object src/CMakeFiles/wesnoth-game.dir/scripting/lua_preferences.cpp.o
[ 91%] Building CXX object src/CMakeFiles/wesnoth-game.dir/scripting/lua_race.cpp.o
[ 91%] Building CXX object src/CMakeFiles/wesnoth-game.dir/scripting/lua_rng.cpp.o
[ 91%] Building CXX object src/CMakeFiles/wesnoth-game.dir/scripting/lua_team.cpp.o
[ 91%] Building CXX object src/CMakeFiles/wesnoth-game.dir/scripting/lua_unit.cpp.o
[ 91%] Building CXX object src/CMakeFiles/wesnoth-game.dir/scripting/lua_unit_attacks.cpp.o
[ 91%] Building CXX object src/CMakeFiles/wesnoth-game.dir/scripting/lua_unit_type.cpp.o
[ 91%] Building CXX object src/CMakeFiles/wesnoth-game.dir/scripting/mapgen_lua_kernel.cpp.o
[ 91%] Building CXX object src/CMakeFiles/wesnoth-game.dir/scripting/plugins/context.cpp.o
[ 91%] Building CXX object src/CMakeFiles/wesnoth-game.dir/scripting/plugins/manager.cpp.o
[ 91%] Building CXX object src/CMakeFiles/wesnoth-game.dir/settings.cpp.o
[ 91%] Building CXX object src/CMakeFiles/wesnoth-game.dir/side_filter.cpp.o
[ 91%] Building CXX object src/CMakeFiles/wesnoth-game.dir/statistics.cpp.o
In file included from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:12:0,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/statistics.cpp:24:
/usr/include/boost/type_traits/detail/bool_trait_def.hpp:18:79: note: #pragma message: NOTE: Use of this header (bool_trait_def.hpp) is deprecated
 # pragma message("NOTE: Use of this header (bool_trait_def.hpp) is deprecated")
                                                                               ^
In file included from /usr/include/boost/type_traits/detail/bool_trait_def.hpp:21:0,
                 from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:12,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/statistics.cpp:24:
/usr/include/boost/type_traits/detail/template_arity_spec.hpp:13:84: note: #pragma message: NOTE: Use of this header (template_arity_spec.hpp) is deprecated
 # pragma message("NOTE: Use of this header (template_arity_spec.hpp) is deprecated")
                                                                                    ^
In file included from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:13:0,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/statistics.cpp:24:
/usr/include/boost/type_traits/detail/template_arity_spec.hpp:13:84: note: #pragma message: NOTE: Use of this header (template_arity_spec.hpp) is deprecated
 # pragma message("NOTE: Use of this header (template_arity_spec.hpp) is deprecated")
                                                                                    ^
[ 91%] Building CXX object src/CMakeFiles/wesnoth-game.dir/storyscreen/controller.cpp.o
[ 91%] Building CXX object src/CMakeFiles/wesnoth-game.dir/storyscreen/parser.cpp.o
[ 91%] Building CXX object src/CMakeFiles/wesnoth-game.dir/storyscreen/part.cpp.o
[ 91%] Building CXX object src/CMakeFiles/wesnoth-game.dir/synced_checkup.cpp.o
[ 91%] Building CXX object src/CMakeFiles/wesnoth-game.dir/synced_commands.cpp.o
[ 91%] Building CXX object src/CMakeFiles/wesnoth-game.dir/synced_context.cpp.o
[ 91%] Building CXX object src/CMakeFiles/wesnoth-game.dir/synced_user_choice.cpp.o
[ 95%] Building CXX object src/CMakeFiles/wesnoth-game.dir/syncmp_handler.cpp.o
[ 95%] Building CXX object src/CMakeFiles/wesnoth-game.dir/team.cpp.o
[ 95%] Building CXX object src/CMakeFiles/wesnoth-game.dir/teambuilder.cpp.o
[ 95%] Building CXX object src/CMakeFiles/wesnoth-game.dir/terrain/filter.cpp.o
[ 95%] Building CXX object src/CMakeFiles/wesnoth-game.dir/tod_manager.cpp.o
[ 95%] Building CXX object src/CMakeFiles/wesnoth-game.dir/units/abilities.cpp.o
[ 95%] Building CXX object src/CMakeFiles/wesnoth-game.dir/units/animation.cpp.o
[ 95%] Building CXX object src/CMakeFiles/wesnoth-game.dir/units/animation_component.cpp.o
[ 95%] Building CXX object src/CMakeFiles/wesnoth-game.dir/units/attack_type.cpp.o
[ 95%] Building CXX object src/CMakeFiles/wesnoth-game.dir/units/drawer.cpp.o
[ 95%] Building CXX object src/CMakeFiles/wesnoth-game.dir/units/filter.cpp.o
[ 95%] Building CXX object src/CMakeFiles/wesnoth-game.dir/units/formula_manager.cpp.o
[ 95%] Building CXX object src/CMakeFiles/wesnoth-game.dir/units/frame.cpp.o
[ 95%] Building CXX object src/CMakeFiles/wesnoth-game.dir/units/helper.cpp.o
[ 95%] Building CXX object src/CMakeFiles/wesnoth-game.dir/units/id.cpp.o
[ 95%] Building CXX object src/CMakeFiles/wesnoth-game.dir/units/map.cpp.o
[ 95%] Building CXX object src/CMakeFiles/wesnoth-game.dir/units/race.cpp.o
[ 95%] Building CXX object src/CMakeFiles/wesnoth-game.dir/units/types.cpp.o
[ 95%] Building CXX object src/CMakeFiles/wesnoth-game.dir/units/udisplay.cpp.o
[ 95%] Building CXX object src/CMakeFiles/wesnoth-game.dir/units/unit.cpp.o
[ 95%] Building CXX object src/CMakeFiles/wesnoth-game.dir/utils/context_free_grammar_generator.cpp.o
[ 95%] Building CXX object src/CMakeFiles/wesnoth-game.dir/utils/markov_generator.cpp.o
[ 95%] Building CXX object src/CMakeFiles/wesnoth-game.dir/utils/name_generator_factory.cpp.o
[ 95%] Building CXX object src/CMakeFiles/wesnoth-game.dir/variable.cpp.o
[100%] Building CXX object src/CMakeFiles/wesnoth-game.dir/variable_info.cpp.o
[100%] Building CXX object src/CMakeFiles/wesnoth-game.dir/wesnothd_connection.cpp.o
warning: Path diagnostic report is not generated. Current output format does not support diagnostics that cross file boundaries. Refer to --analyzer-output for valid output formats
warning: Path diagnostic report is not generated. Current output format does not support diagnostics that cross file boundaries. Refer to --analyzer-output for valid output formats
warning: Path diagnostic report is not generated. Current output format does not support diagnostics that cross file boundaries. Refer to --analyzer-output for valid output formats
warning: Path diagnostic report is not generated. Current output format does not support diagnostics that cross file boundaries. Refer to --analyzer-output for valid output formats
warning: Path diagnostic report is not generated. Current output format does not support diagnostics that cross file boundaries. Refer to --analyzer-output for valid output formats
warning: Path diagnostic report is not generated. Current output format does not support diagnostics that cross file boundaries. Refer to --analyzer-output for valid output formats
In file included from /home/matthias/vcs/github/wesnoth/src/wesnothd_connection.cpp:19:
In file included from /home/matthias/vcs/github/wesnoth/src/wesnothd_connection.hpp:30:
In file included from /usr/include/boost/asio.hpp:21:
In file included from /usr/include/boost/asio/basic_datagram_socket.hpp:20:
In file included from /usr/include/boost/asio/basic_socket.hpp:20:
In file included from /usr/include/boost/asio/basic_io_object.hpp:19:
In file included from /usr/include/boost/asio/io_service.hpp:767:
In file included from /usr/include/boost/asio/impl/io_service.hpp:19:
In file included from /usr/include/boost/asio/detail/service_registry.hpp:20:
In file included from /usr/include/boost/asio/detail/mutex.hpp:25:
/usr/include/boost/asio/detail/posix_mutex.hpp:52:11: warning: This lock has already been acquired
    (void)::pthread_mutex_lock(&mutex_); // Ignore EINVAL.
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/boost/asio/detail/posix_mutex.hpp:58:11: warning: This was not the most recently acquired lock. Possible lock order reversal
    (void)::pthread_mutex_unlock(&mutex_); // Ignore EINVAL.
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2 warnings generated.
[100%] Building CXX object src/CMakeFiles/wesnoth-game.dir/whiteboard/action.cpp.o
[100%] Building CXX object src/CMakeFiles/wesnoth-game.dir/whiteboard/attack.cpp.o
[100%] Building CXX object src/CMakeFiles/wesnoth-game.dir/whiteboard/highlighter.cpp.o
[100%] Building CXX object src/CMakeFiles/wesnoth-game.dir/whiteboard/manager.cpp.o
[100%] Building CXX object src/CMakeFiles/wesnoth-game.dir/whiteboard/mapbuilder.cpp.o
[100%] Building CXX object src/CMakeFiles/wesnoth-game.dir/whiteboard/move.cpp.o
[100%] Building CXX object src/CMakeFiles/wesnoth-game.dir/whiteboard/recall.cpp.o
[100%] Building CXX object src/CMakeFiles/wesnoth-game.dir/whiteboard/recruit.cpp.o
[100%] Building CXX object src/CMakeFiles/wesnoth-game.dir/whiteboard/side_actions.cpp.o
[100%] Building CXX object src/CMakeFiles/wesnoth-game.dir/whiteboard/suppose_dead.cpp.o
[100%] Building CXX object src/CMakeFiles/wesnoth-game.dir/whiteboard/utility.cpp.o
[100%] Linking CXX static library libwesnoth-game.a
[100%] Built target wesnoth-game
Scanning dependencies of target wesnoth
[100%] Building CXX object src/CMakeFiles/wesnoth.dir/wesnoth.cpp.o
In file included from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:12:0,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/wesnoth.cpp:45:
/usr/include/boost/type_traits/detail/bool_trait_def.hpp:18:79: note: #pragma message: NOTE: Use of this header (bool_trait_def.hpp) is deprecated
 # pragma message("NOTE: Use of this header (bool_trait_def.hpp) is deprecated")
                                                                               ^
In file included from /usr/include/boost/type_traits/detail/bool_trait_def.hpp:21:0,
                 from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:12,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/wesnoth.cpp:45:
/usr/include/boost/type_traits/detail/template_arity_spec.hpp:13:84: note: #pragma message: NOTE: Use of this header (template_arity_spec.hpp) is deprecated
 # pragma message("NOTE: Use of this header (template_arity_spec.hpp) is deprecated")
                                                                                    ^
In file included from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:13:0,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/wesnoth.cpp:45:
/usr/include/boost/type_traits/detail/template_arity_spec.hpp:13:84: note: #pragma message: NOTE: Use of this header (template_arity_spec.hpp) is deprecated
 # pragma message("NOTE: Use of this header (template_arity_spec.hpp) is deprecated")
                                                                                    ^
[100%] Linking CXX executable ../wesnoth
[100%] Built target wesnoth
[  0%] Built target wesnoth-revision_dummy
[  0%] Built target wesnoth-revision
[ 50%] Built target wesnoth-core
Scanning dependencies of target wesnothd
[ 50%] Building CXX object src/CMakeFiles/wesnothd.dir/server/ban.cpp.o
In file included from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:12:0,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/server/ban.cpp:20:
/usr/include/boost/type_traits/detail/bool_trait_def.hpp:18:79: note: #pragma message: NOTE: Use of this header (bool_trait_def.hpp) is deprecated
 # pragma message("NOTE: Use of this header (bool_trait_def.hpp) is deprecated")
                                                                               ^
In file included from /usr/include/boost/type_traits/detail/bool_trait_def.hpp:21:0,
                 from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:12,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/server/ban.cpp:20:
/usr/include/boost/type_traits/detail/template_arity_spec.hpp:13:84: note: #pragma message: NOTE: Use of this header (template_arity_spec.hpp) is deprecated
 # pragma message("NOTE: Use of this header (template_arity_spec.hpp) is deprecated")
                                                                                    ^
In file included from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:13:0,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/filtering_stream.hpp:19,
                 from /home/matthias/vcs/github/wesnoth/src/serialization/binary_or_text.hpp:25,
                 from /home/matthias/vcs/github/wesnoth/src/server/ban.cpp:20:
/usr/include/boost/type_traits/detail/template_arity_spec.hpp:13:84: note: #pragma message: NOTE: Use of this header (template_arity_spec.hpp) is deprecated
 # pragma message("NOTE: Use of this header (template_arity_spec.hpp) is deprecated")
                                                                                    ^
[ 50%] Building CXX object src/CMakeFiles/wesnothd.dir/server/forum_user_handler.cpp.o
[ 50%] Building CXX object src/CMakeFiles/wesnothd.dir/server/game.cpp.o
[ 50%] Building CXX object src/CMakeFiles/wesnothd.dir/server/metrics.cpp.o
[ 50%] Building CXX object src/CMakeFiles/wesnothd.dir/server/player.cpp.o
[ 50%] Building CXX object src/CMakeFiles/wesnothd.dir/server/player_connection.cpp.o
[ 50%] Building CXX object src/CMakeFiles/wesnothd.dir/server/player_network.cpp.o
[ 50%] Building CXX object src/CMakeFiles/wesnothd.dir/server/sample_user_handler.cpp.o
[ 50%] Building CXX object src/CMakeFiles/wesnothd.dir/server/server.cpp.o
warning: Path diagnostic report is not generated. Current output format does not support diagnostics that cross file boundaries. Refer to --analyzer-output for valid output formats
warning: Path diagnostic report is not generated. Current output format does not support diagnostics that cross file boundaries. Refer to --analyzer-output for valid output formats
warning: Path diagnostic report is not generated. Current output format does not support diagnostics that cross file boundaries. Refer to --analyzer-output for valid output formats
In file included from /home/matthias/vcs/github/wesnoth/src/server/server.cpp:20:
In file included from /home/matthias/vcs/github/wesnoth/src/server/server.hpp:23:
In file included from /home/matthias/vcs/github/wesnoth/src/server/server_base.hpp:29:
In file included from /usr/include/boost/asio.hpp:21:
In file included from /usr/include/boost/asio/basic_datagram_socket.hpp:20:
In file included from /usr/include/boost/asio/basic_socket.hpp:20:
In file included from /usr/include/boost/asio/basic_io_object.hpp:19:
In file included from /usr/include/boost/asio/io_service.hpp:767:
In file included from /usr/include/boost/asio/impl/io_service.hpp:19:
In file included from /usr/include/boost/asio/detail/service_registry.hpp:20:
In file included from /usr/include/boost/asio/detail/mutex.hpp:25:
/usr/include/boost/asio/detail/posix_mutex.hpp:58:11: warning: This was not the most recently acquired lock. Possible lock order reversal
    (void)::pthread_mutex_unlock(&mutex_); // Ignore EINVAL.
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/matthias/vcs/github/wesnoth/src/server/server.cpp:2355:3: warning: Value stored to 'banned' is never read
                banned = true;
                ^        ~~~~
/home/matthias/vcs/github/wesnoth/src/server/server.cpp:2382:7: warning: conditions of the inner and outer statements are identical
                        if(!banned) {
                           ^~~~~~~
/home/matthias/vcs/github/wesnoth/src/server/server.cpp:2424:3: warning: Value stored to 'banned' is never read
                banned = true;
                ^        ~~~~
/home/matthias/vcs/github/wesnoth/src/server/server.cpp:2458:7: warning: conditions of the inner and outer statements are identical
                        if(!banned) {
                           ^~~~~~~
/home/matthias/vcs/github/wesnoth/src/server/server.cpp:2509:3: warning: Value stored to 'banned' is never read
                banned = true;
                ^        ~~~~
/home/matthias/vcs/github/wesnoth/src/server/server.cpp:2536:7: warning: conditions of the inner and outer statements are identical
                        if(!banned) {
                           ^~~~~~~
7 warnings generated.
[ 50%] Building CXX object src/CMakeFiles/wesnothd.dir/server/server_base.cpp.o
warning: Path diagnostic report is not generated. Current output format does not support diagnostics that cross file boundaries. Refer to --analyzer-output for valid output formats
warning: Path diagnostic report is not generated. Current output format does not support diagnostics that cross file boundaries. Refer to --analyzer-output for valid output formats
warning: Path diagnostic report is not generated. Current output format does not support diagnostics that cross file boundaries. Refer to --analyzer-output for valid output formats
In file included from /home/matthias/vcs/github/wesnoth/src/server/server_base.cpp:15:
In file included from /home/matthias/vcs/github/wesnoth/src/server/server_base.hpp:29:
In file included from /usr/include/boost/asio.hpp:21:
In file included from /usr/include/boost/asio/basic_datagram_socket.hpp:20:
In file included from /usr/include/boost/asio/basic_socket.hpp:20:
In file included from /usr/include/boost/asio/basic_io_object.hpp:19:
In file included from /usr/include/boost/asio/io_service.hpp:767:
In file included from /usr/include/boost/asio/impl/io_service.hpp:19:
In file included from /usr/include/boost/asio/detail/service_registry.hpp:20:
In file included from /usr/include/boost/asio/detail/mutex.hpp:25:
/usr/include/boost/asio/detail/posix_mutex.hpp:52:11: warning: This lock has already been acquired
    (void)::pthread_mutex_lock(&mutex_); // Ignore EINVAL.
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/boost/asio/detail/posix_mutex.hpp:58:11: warning: This was not the most recently acquired lock. Possible lock order reversal
    (void)::pthread_mutex_unlock(&mutex_); // Ignore EINVAL.
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2 warnings generated.
[ 50%] Building CXX object src/CMakeFiles/wesnothd.dir/server/simple_wml.cpp.o
In file included from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:12:0,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/chain.hpp:29,
                 from /usr/include/boost/iostreams/copy.hpp:28,
                 from /home/matthias/vcs/github/wesnoth/src/server/simple_wml.cpp:18:
/usr/include/boost/type_traits/detail/bool_trait_def.hpp:18:79: note: #pragma message: NOTE: Use of this header (bool_trait_def.hpp) is deprecated
 # pragma message("NOTE: Use of this header (bool_trait_def.hpp) is deprecated")
                                                                               ^
In file included from /usr/include/boost/type_traits/detail/bool_trait_def.hpp:21:0,
                 from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:12,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/chain.hpp:29,
                 from /usr/include/boost/iostreams/copy.hpp:28,
                 from /home/matthias/vcs/github/wesnoth/src/server/simple_wml.cpp:18:
/usr/include/boost/type_traits/detail/template_arity_spec.hpp:13:84: note: #pragma message: NOTE: Use of this header (template_arity_spec.hpp) is deprecated
 # pragma message("NOTE: Use of this header (template_arity_spec.hpp) is deprecated")
                                                                                    ^
In file included from /usr/include/boost/iostreams/detail/is_dereferenceable.hpp:13:0,
                 from /usr/include/boost/iostreams/detail/resolve.hpp:26,
                 from /usr/include/boost/iostreams/detail/push.hpp:24,
                 from /usr/include/boost/iostreams/chain.hpp:29,
                 from /usr/include/boost/iostreams/copy.hpp:28,
                 from /home/matthias/vcs/github/wesnoth/src/server/simple_wml.cpp:18:
/usr/include/boost/type_traits/detail/template_arity_spec.hpp:13:84: note: #pragma message: NOTE: Use of this header (template_arity_spec.hpp) is deprecated
 # pragma message("NOTE: Use of this header (template_arity_spec.hpp) is deprecated")
                                                                                    ^
[ 50%] Building CXX object src/CMakeFiles/wesnothd.dir/server/user_handler.cpp.o
[100%] Linking CXX executable ../wesnothd
[100%] Built target wesnothd
[  0%] Built target wesnoth-sdl
[  0%] Built target wesnoth-revision_dummy
[  0%] Built target wesnoth-revision
[  4%] Built target wesnoth-core
[ 12%] Built target wesnoth-lua
[ 92%] Built target wesnoth-game
Scanning dependencies of target test
[ 92%] Building CXX object src/CMakeFiles/test.dir/tests/gui/fire_event.cpp.o
[ 92%] Building CXX object src/CMakeFiles/test.dir/tests/gui/iterator.cpp.o
[ 92%] Building CXX object src/CMakeFiles/test.dir/tests/gui/test_gui2.cpp.o
[ 92%] Building CXX object src/CMakeFiles/test.dir/tests/gui/test_save_dialog.cpp.o
[ 92%] Building CXX object src/CMakeFiles/test.dir/tests/gui/visitor.cpp.o
[ 96%] Building CXX object src/CMakeFiles/test.dir/tests/main.cpp.o
[ 96%] Building CXX object src/CMakeFiles/test.dir/tests/test_addons.cpp.o
[ 96%] Building CXX object src/CMakeFiles/test.dir/tests/test_commandline_options.cpp.o
[ 96%] Building CXX object src/CMakeFiles/test.dir/tests/test_config.cpp.o
[ 96%] Building CXX object src/CMakeFiles/test.dir/tests/test_config_cache.cpp.o
[ 96%] Building CXX object src/CMakeFiles/test.dir/tests/test_filesystem.cpp.o
[ 96%] Building CXX object src/CMakeFiles/test.dir/tests/test_formula_ai.cpp.o
[ 96%] Building CXX object src/CMakeFiles/test.dir/tests/test_formula_core.cpp.o
[ 96%] Building CXX object src/CMakeFiles/test.dir/tests/test_formula_function.cpp.o
[ 96%] Building CXX object src/CMakeFiles/test.dir/tests/test_image_modifications.cpp.o
/home/matthias/vcs/github/wesnoth/src/tests/test_image_modifications.cpp:184:26: warning: Called C++ object pointer is null
        BOOST_CHECK(expected == mod->map());
                                ^~~~~~~~~~
/usr/include/boost/test/tools/old/interface.hpp:81:6: note: expanded from macro 'BOOST_CHECK'
    (P), BOOST_TEST_STRINGIZE( P ), CHECK, CHECK_PRED, _ )
     ^
/usr/include/boost/test/tools/old/interface.hpp:66:61: note: expanded from macro 'BOOST_TEST_TOOL_IMPL'
        BOOST_JOIN( BOOST_TEST_TOOL_PASS_PRED, frwd_type )( P, ARGS ),          \
                                                            ^
/usr/include/boost/test/tools/old/interface.hpp:49:47: note: expanded from macro 'BOOST_TEST_TOOL_PASS_PRED2'
#define BOOST_TEST_TOOL_PASS_PRED2( P, ARGS ) P
                                              ^
/home/matthias/vcs/github/wesnoth/src/tests/test_image_modifications.cpp:215:26: warning: Called C++ object pointer is null
        BOOST_CHECK(expected == mod->map());
                                ^~~~~~~~~~
/usr/include/boost/test/tools/old/interface.hpp:81:6: note: expanded from macro 'BOOST_CHECK'
    (P), BOOST_TEST_STRINGIZE( P ), CHECK, CHECK_PRED, _ )
     ^
/usr/include/boost/test/tools/old/interface.hpp:66:61: note: expanded from macro 'BOOST_TEST_TOOL_IMPL'
        BOOST_JOIN( BOOST_TEST_TOOL_PASS_PRED, frwd_type )( P, ARGS ),          \
                                                            ^
/usr/include/boost/test/tools/old/interface.hpp:49:47: note: expanded from macro 'BOOST_TEST_TOOL_PASS_PRED2'
#define BOOST_TEST_TOOL_PASS_PRED2( P, ARGS ) P
                                              ^
/home/matthias/vcs/github/wesnoth/src/tests/test_image_modifications.cpp:253:26: warning: Called C++ object pointer is null
        BOOST_CHECK(expected == mod->map());
                                ^~~~~~~~~~
/usr/include/boost/test/tools/old/interface.hpp:81:6: note: expanded from macro 'BOOST_CHECK'
    (P), BOOST_TEST_STRINGIZE( P ), CHECK, CHECK_PRED, _ )
     ^
/usr/include/boost/test/tools/old/interface.hpp:66:61: note: expanded from macro 'BOOST_TEST_TOOL_IMPL'
        BOOST_JOIN( BOOST_TEST_TOOL_PASS_PRED, frwd_type )( P, ARGS ),          \
                                                            ^
/usr/include/boost/test/tools/old/interface.hpp:49:47: note: expanded from macro 'BOOST_TEST_TOOL_PASS_PRED2'
#define BOOST_TEST_TOOL_PASS_PRED2( P, ARGS ) P
                                              ^
/home/matthias/vcs/github/wesnoth/src/tests/test_image_modifications.cpp:281:14: warning: Called C++ object pointer is null
        BOOST_CHECK(mod->get_horiz());
                    ^~~~~~~~~~~~~~~~
/usr/include/boost/test/tools/old/interface.hpp:81:6: note: expanded from macro 'BOOST_CHECK'
    (P), BOOST_TEST_STRINGIZE( P ), CHECK, CHECK_PRED, _ )
     ^
/usr/include/boost/test/tools/old/interface.hpp:66:61: note: expanded from macro 'BOOST_TEST_TOOL_IMPL'
        BOOST_JOIN( BOOST_TEST_TOOL_PASS_PRED, frwd_type )( P, ARGS ),          \
                                                            ^
/usr/include/boost/test/tools/old/interface.hpp:49:47: note: expanded from macro 'BOOST_TEST_TOOL_PASS_PRED2'
#define BOOST_TEST_TOOL_PASS_PRED2( P, ARGS ) P
                                              ^
/home/matthias/vcs/github/wesnoth/src/tests/test_image_modifications.cpp:299:14: warning: Called C++ object pointer is null
        BOOST_CHECK(mod->get_horiz());
                    ^~~~~~~~~~~~~~~~
/usr/include/boost/test/tools/old/interface.hpp:81:6: note: expanded from macro 'BOOST_CHECK'
    (P), BOOST_TEST_STRINGIZE( P ), CHECK, CHECK_PRED, _ )
     ^
/usr/include/boost/test/tools/old/interface.hpp:66:61: note: expanded from macro 'BOOST_TEST_TOOL_IMPL'
        BOOST_JOIN( BOOST_TEST_TOOL_PASS_PRED, frwd_type )( P, ARGS ),          \
                                                            ^
/usr/include/boost/test/tools/old/interface.hpp:49:47: note: expanded from macro 'BOOST_TEST_TOOL_PASS_PRED2'
#define BOOST_TEST_TOOL_PASS_PRED2( P, ARGS ) P
                                              ^
/home/matthias/vcs/github/wesnoth/src/tests/test_image_modifications.cpp:317:15: warning: Called C++ object pointer is null
        BOOST_CHECK(!mod->get_horiz());
                     ^~~~~~~~~~~~~~~~
/usr/include/boost/test/tools/old/interface.hpp:81:6: note: expanded from macro 'BOOST_CHECK'
    (P), BOOST_TEST_STRINGIZE( P ), CHECK, CHECK_PRED, _ )
     ^
/usr/include/boost/test/tools/old/interface.hpp:66:61: note: expanded from macro 'BOOST_TEST_TOOL_IMPL'
        BOOST_JOIN( BOOST_TEST_TOOL_PASS_PRED, frwd_type )( P, ARGS ),          \
                                                            ^
/usr/include/boost/test/tools/old/interface.hpp:49:47: note: expanded from macro 'BOOST_TEST_TOOL_PASS_PRED2'
#define BOOST_TEST_TOOL_PASS_PRED2( P, ARGS ) P
                                              ^
/home/matthias/vcs/github/wesnoth/src/tests/test_image_modifications.cpp:335:14: warning: Called C++ object pointer is null
        BOOST_CHECK(mod->get_horiz());
                    ^~~~~~~~~~~~~~~~
/usr/include/boost/test/tools/old/interface.hpp:81:6: note: expanded from macro 'BOOST_CHECK'
    (P), BOOST_TEST_STRINGIZE( P ), CHECK, CHECK_PRED, _ )
     ^
/usr/include/boost/test/tools/old/interface.hpp:66:61: note: expanded from macro 'BOOST_TEST_TOOL_IMPL'
        BOOST_JOIN( BOOST_TEST_TOOL_PASS_PRED, frwd_type )( P, ARGS ),          \
                                                            ^
/usr/include/boost/test/tools/old/interface.hpp:49:47: note: expanded from macro 'BOOST_TEST_TOOL_PASS_PRED2'
#define BOOST_TEST_TOOL_PASS_PRED2( P, ARGS ) P
                                              ^
/home/matthias/vcs/github/wesnoth/src/tests/test_image_modifications.cpp:378:26: warning: Called C++ object pointer is null
        const SDL_Rect& slice = mod->get_slice();
                                ^~~~~~~~~~~~~~~~
/home/matthias/vcs/github/wesnoth/src/tests/test_image_modifications.cpp:400:26: warning: Called C++ object pointer is null
        const SDL_Rect& slice = mod->get_slice();
                                ^~~~~~~~~~~~~~~~
/home/matthias/vcs/github/wesnoth/src/tests/test_image_modifications.cpp:422:26: warning: Called C++ object pointer is null
        const SDL_Rect& slice = mod->get_slice();
                                ^~~~~~~~~~~~~~~~
/home/matthias/vcs/github/wesnoth/src/tests/test_image_modifications.cpp:444:26: warning: Called C++ object pointer is null
        const SDL_Rect& slice = mod->get_slice();
                                ^~~~~~~~~~~~~~~~
/home/matthias/vcs/github/wesnoth/src/tests/test_image_modifications.cpp:469:15: warning: Called C++ object pointer is null
        BOOST_CHECK(!mod->get_surface().null());
                     ^~~~~~~~~~~~~~~~~~
/usr/include/boost/test/tools/old/interface.hpp:81:6: note: expanded from macro 'BOOST_CHECK'
    (P), BOOST_TEST_STRINGIZE( P ), CHECK, CHECK_PRED, _ )
     ^
/usr/include/boost/test/tools/old/interface.hpp:66:61: note: expanded from macro 'BOOST_TEST_TOOL_IMPL'
        BOOST_JOIN( BOOST_TEST_TOOL_PASS_PRED, frwd_type )( P, ARGS ),          \
                                                            ^
/usr/include/boost/test/tools/old/interface.hpp:49:47: note: expanded from macro 'BOOST_TEST_TOOL_PASS_PRED2'
#define BOOST_TEST_TOOL_PASS_PRED2( P, ARGS ) P
                                              ^
/home/matthias/vcs/github/wesnoth/src/tests/test_image_modifications.cpp:491:15: warning: Called C++ object pointer is null
        BOOST_CHECK(!mod->get_surface().null());
                     ^~~~~~~~~~~~~~~~~~
/usr/include/boost/test/tools/old/interface.hpp:81:6: note: expanded from macro 'BOOST_CHECK'
    (P), BOOST_TEST_STRINGIZE( P ), CHECK, CHECK_PRED, _ )
     ^
/usr/include/boost/test/tools/old/interface.hpp:66:61: note: expanded from macro 'BOOST_TEST_TOOL_IMPL'
        BOOST_JOIN( BOOST_TEST_TOOL_PASS_PRED, frwd_type )( P, ARGS ),          \
                                                            ^
/usr/include/boost/test/tools/old/interface.hpp:49:47: note: expanded from macro 'BOOST_TEST_TOOL_PASS_PRED2'
#define BOOST_TEST_TOOL_PASS_PRED2( P, ARGS ) P
                                              ^
/home/matthias/vcs/github/wesnoth/src/tests/test_image_modifications.cpp:527:15: warning: Called C++ object pointer is null
        BOOST_CHECK(!mod->get_mask().null());
                     ^~~~~~~~~~~~~~~
/usr/include/boost/test/tools/old/interface.hpp:81:6: note: expanded from macro 'BOOST_CHECK'
    (P), BOOST_TEST_STRINGIZE( P ), CHECK, CHECK_PRED, _ )
     ^
/usr/include/boost/test/tools/old/interface.hpp:66:61: note: expanded from macro 'BOOST_TEST_TOOL_IMPL'
        BOOST_JOIN( BOOST_TEST_TOOL_PASS_PRED, frwd_type )( P, ARGS ),          \
                                                            ^
/usr/include/boost/test/tools/old/interface.hpp:49:47: note: expanded from macro 'BOOST_TEST_TOOL_PASS_PRED2'
#define BOOST_TEST_TOOL_PASS_PRED2( P, ARGS ) P
                                              ^
/home/matthias/vcs/github/wesnoth/src/tests/test_image_modifications.cpp:549:15: warning: Called C++ object pointer is null
        BOOST_CHECK(!mod->get_mask().null());
                     ^~~~~~~~~~~~~~~
/usr/include/boost/test/tools/old/interface.hpp:81:6: note: expanded from macro 'BOOST_CHECK'
    (P), BOOST_TEST_STRINGIZE( P ), CHECK, CHECK_PRED, _ )
     ^
/usr/include/boost/test/tools/old/interface.hpp:66:61: note: expanded from macro 'BOOST_TEST_TOOL_IMPL'
        BOOST_JOIN( BOOST_TEST_TOOL_PASS_PRED, frwd_type )( P, ARGS ),          \
                                                            ^
/usr/include/boost/test/tools/old/interface.hpp:49:47: note: expanded from macro 'BOOST_TEST_TOOL_PASS_PRED2'
#define BOOST_TEST_TOOL_PASS_PRED2( P, ARGS ) P
                                              ^
/home/matthias/vcs/github/wesnoth/src/tests/test_image_modifications.cpp:595:15: warning: Called C++ object pointer is null
        BOOST_CHECK(!mod->get_surface().null());
                     ^~~~~~~~~~~~~~~~~~
/usr/include/boost/test/tools/old/interface.hpp:81:6: note: expanded from macro 'BOOST_CHECK'
    (P), BOOST_TEST_STRINGIZE( P ), CHECK, CHECK_PRED, _ )
     ^
/usr/include/boost/test/tools/old/interface.hpp:66:61: note: expanded from macro 'BOOST_TEST_TOOL_IMPL'
        BOOST_JOIN( BOOST_TEST_TOOL_PASS_PRED, frwd_type )( P, ARGS ),          \
                                                            ^
/usr/include/boost/test/tools/old/interface.hpp:49:47: note: expanded from macro 'BOOST_TEST_TOOL_PASS_PRED2'
#define BOOST_TEST_TOOL_PASS_PRED2( P, ARGS ) P
                                              ^
/home/matthias/vcs/github/wesnoth/src/tests/test_image_modifications.cpp:622:20: warning: Called C++ object pointer is null
        BOOST_CHECK_EQUAL(mod->get_w(), 3);
                          ^~~~~~~~~~~~
/usr/include/boost/test/tools/old/interface.hpp:153:81: note: expanded from macro 'BOOST_CHECK_EQUAL'
    ::boost::test_tools::tt_detail::equal_impl_frwd(), "", CHECK, CHECK_EQUAL, (L)(R) )
                                                                                ^
/usr/include/boost/test/tools/old/interface.hpp:72:61: note: expanded from macro 'BOOST_TEST_TOOL_IMPL'
        BOOST_JOIN( BOOST_TEST_TOOL_PASS_ARGS, frwd_type )( ARGS ) );           \
                                                            ^~~~
/usr/include/boost/test/tools/old/interface.hpp:55:57: note: expanded from macro 'BOOST_TEST_TOOL_PASS_ARGS0'
    BOOST_PP_SEQ_FOR_EACH( BOOST_TEST_TOOL_PASS_ARG, _, ARGS )
                                                        ^~~~
note: (skipping 13 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
/usr/include/boost/preprocessor/seq/elem.hpp:43:60: note: expanded from macro 'BOOST_PP_SEQ_ELEM_II'
#    define BOOST_PP_SEQ_ELEM_II(im) BOOST_PP_SEQ_ELEM_III(im)
                                                           ^~
/usr/include/boost/preprocessor/seq/elem.hpp:44:41: note: expanded from macro 'BOOST_PP_SEQ_ELEM_III'
#    define BOOST_PP_SEQ_ELEM_III(x, _) x
                                        ^
/usr/include/boost/test/tools/old/interface.hpp:51:49: note: expanded from macro 'BOOST_TEST_TOOL_PASS_ARG'
#define BOOST_TEST_TOOL_PASS_ARG( r, _, arg ) , arg, BOOST_STRINGIZE( arg )
                                                ^~~
/home/matthias/vcs/github/wesnoth/src/tests/test_image_modifications.cpp:640:20: warning: Called C++ object pointer is null
        BOOST_CHECK_EQUAL(mod->get_w(), 4);
                          ^~~~~~~~~~~~
/usr/include/boost/test/tools/old/interface.hpp:153:81: note: expanded from macro 'BOOST_CHECK_EQUAL'
    ::boost::test_tools::tt_detail::equal_impl_frwd(), "", CHECK, CHECK_EQUAL, (L)(R) )
                                                                                ^
/usr/include/boost/test/tools/old/interface.hpp:72:61: note: expanded from macro 'BOOST_TEST_TOOL_IMPL'
        BOOST_JOIN( BOOST_TEST_TOOL_PASS_ARGS, frwd_type )( ARGS ) );           \
                                                            ^~~~
/usr/include/boost/test/tools/old/interface.hpp:55:57: note: expanded from macro 'BOOST_TEST_TOOL_PASS_ARGS0'
    BOOST_PP_SEQ_FOR_EACH( BOOST_TEST_TOOL_PASS_ARG, _, ARGS )
                                                        ^~~~
note: (skipping 13 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
/usr/include/boost/preprocessor/seq/elem.hpp:43:60: note: expanded from macro 'BOOST_PP_SEQ_ELEM_II'
#    define BOOST_PP_SEQ_ELEM_II(im) BOOST_PP_SEQ_ELEM_III(im)
                                                           ^~
/usr/include/boost/preprocessor/seq/elem.hpp:44:41: note: expanded from macro 'BOOST_PP_SEQ_ELEM_III'
#    define BOOST_PP_SEQ_ELEM_III(x, _) x
                                        ^
/usr/include/boost/test/tools/old/interface.hpp:51:49: note: expanded from macro 'BOOST_TEST_TOOL_PASS_ARG'
#define BOOST_TEST_TOOL_PASS_ARG( r, _, arg ) , arg, BOOST_STRINGIZE( arg )
                                                ^~~
/home/matthias/vcs/github/wesnoth/src/tests/test_image_modifications.cpp:658:14: warning: Called C++ object pointer is null
        BOOST_CHECK(mod->get_opacity() > 0.44f);
                    ^~~~~~~~~~~~~~~~~~
/usr/include/boost/test/tools/old/interface.hpp:81:6: note: expanded from macro 'BOOST_CHECK'
    (P), BOOST_TEST_STRINGIZE( P ), CHECK, CHECK_PRED, _ )
     ^
/usr/include/boost/test/tools/old/interface.hpp:66:61: note: expanded from macro 'BOOST_TEST_TOOL_IMPL'
        BOOST_JOIN( BOOST_TEST_TOOL_PASS_PRED, frwd_type )( P, ARGS ),          \
                                                            ^
/usr/include/boost/test/tools/old/interface.hpp:49:47: note: expanded from macro 'BOOST_TEST_TOOL_PASS_PRED2'
#define BOOST_TEST_TOOL_PASS_PRED2( P, ARGS ) P
                                              ^
/home/matthias/vcs/github/wesnoth/src/tests/test_image_modifications.cpp:676:14: warning: Called C++ object pointer is null
        BOOST_CHECK(mod->get_opacity() > 0.33f);
                    ^~~~~~~~~~~~~~~~~~
/usr/include/boost/test/tools/old/interface.hpp:81:6: note: expanded from macro 'BOOST_CHECK'
    (P), BOOST_TEST_STRINGIZE( P ), CHECK, CHECK_PRED, _ )
     ^
/usr/include/boost/test/tools/old/interface.hpp:66:61: note: expanded from macro 'BOOST_TEST_TOOL_IMPL'
        BOOST_JOIN( BOOST_TEST_TOOL_PASS_PRED, frwd_type )( P, ARGS ),          \
                                                            ^
/usr/include/boost/test/tools/old/interface.hpp:49:47: note: expanded from macro 'BOOST_TEST_TOOL_PASS_PRED2'
#define BOOST_TEST_TOOL_PASS_PRED2( P, ARGS ) P
                                              ^
/home/matthias/vcs/github/wesnoth/src/tests/test_image_modifications.cpp:694:20: warning: Called C++ object pointer is null
        BOOST_CHECK_EQUAL(mod->get_depth(), 0);
                          ^~~~~~~~~~~~~~~~
/usr/include/boost/test/tools/old/interface.hpp:153:81: note: expanded from macro 'BOOST_CHECK_EQUAL'
    ::boost::test_tools::tt_detail::equal_impl_frwd(), "", CHECK, CHECK_EQUAL, (L)(R) )
                                                                                ^
/usr/include/boost/test/tools/old/interface.hpp:72:61: note: expanded from macro 'BOOST_TEST_TOOL_IMPL'
        BOOST_JOIN( BOOST_TEST_TOOL_PASS_ARGS, frwd_type )( ARGS ) );           \
                                                            ^~~~
/usr/include/boost/test/tools/old/interface.hpp:55:57: note: expanded from macro 'BOOST_TEST_TOOL_PASS_ARGS0'
    BOOST_PP_SEQ_FOR_EACH( BOOST_TEST_TOOL_PASS_ARG, _, ARGS )
                                                        ^~~~
note: (skipping 13 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
/usr/include/boost/preprocessor/seq/elem.hpp:43:60: note: expanded from macro 'BOOST_PP_SEQ_ELEM_II'
#    define BOOST_PP_SEQ_ELEM_II(im) BOOST_PP_SEQ_ELEM_III(im)
                                                           ^~
/usr/include/boost/preprocessor/seq/elem.hpp:44:41: note: expanded from macro 'BOOST_PP_SEQ_ELEM_III'
#    define BOOST_PP_SEQ_ELEM_III(x, _) x
                                        ^
/usr/include/boost/test/tools/old/interface.hpp:51:49: note: expanded from macro 'BOOST_TEST_TOOL_PASS_ARG'
#define BOOST_TEST_TOOL_PASS_ARG( r, _, arg ) , arg, BOOST_STRINGIZE( arg )
                                                ^~~
/home/matthias/vcs/github/wesnoth/src/tests/test_image_modifications.cpp:711:20: warning: Called C++ object pointer is null
        BOOST_CHECK_EQUAL(mod->get_depth(), 2);
                          ^~~~~~~~~~~~~~~~
/usr/include/boost/test/tools/old/interface.hpp:153:81: note: expanded from macro 'BOOST_CHECK_EQUAL'
    ::boost::test_tools::tt_detail::equal_impl_frwd(), "", CHECK, CHECK_EQUAL, (L)(R) )
                                                                                ^
/usr/include/boost/test/tools/old/interface.hpp:72:61: note: expanded from macro 'BOOST_TEST_TOOL_IMPL'
        BOOST_JOIN( BOOST_TEST_TOOL_PASS_ARGS, frwd_type )( ARGS ) );           \
                                                            ^~~~
/usr/include/boost/test/tools/old/interface.hpp:55:57: note: expanded from macro 'BOOST_TEST_TOOL_PASS_ARGS0'
    BOOST_PP_SEQ_FOR_EACH( BOOST_TEST_TOOL_PASS_ARG, _, ARGS )
                                                        ^~~~
note: (skipping 13 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
/usr/include/boost/preprocessor/seq/elem.hpp:43:60: note: expanded from macro 'BOOST_PP_SEQ_ELEM_II'
#    define BOOST_PP_SEQ_ELEM_II(im) BOOST_PP_SEQ_ELEM_III(im)
                                                           ^~
/usr/include/boost/preprocessor/seq/elem.hpp:44:41: note: expanded from macro 'BOOST_PP_SEQ_ELEM_III'
#    define BOOST_PP_SEQ_ELEM_III(x, _) x
                                        ^
/usr/include/boost/test/tools/old/interface.hpp:51:49: note: expanded from macro 'BOOST_TEST_TOOL_PASS_ARG'
#define BOOST_TEST_TOOL_PASS_ARG( r, _, arg ) , arg, BOOST_STRINGIZE( arg )
                                                ^~~
/home/matthias/vcs/github/wesnoth/src/tests/test_image_modifications.cpp:731:21: warning: Called C++ object pointer is null
                BOOST_CHECK_EQUAL(mod->get_r(), 0);
                                  ^~~~~~~~~~~~
/usr/include/boost/test/tools/old/interface.hpp:153:81: note: expanded from macro 'BOOST_CHECK_EQUAL'
    ::boost::test_tools::tt_detail::equal_impl_frwd(), "", CHECK, CHECK_EQUAL, (L)(R) )
                                                                                ^
/usr/include/boost/test/tools/old/interface.hpp:72:61: note: expanded from macro 'BOOST_TEST_TOOL_IMPL'
        BOOST_JOIN( BOOST_TEST_TOOL_PASS_ARGS, frwd_type )( ARGS ) );           \
                                                            ^~~~
/usr/include/boost/test/tools/old/interface.hpp:55:57: note: expanded from macro 'BOOST_TEST_TOOL_PASS_ARGS0'
    BOOST_PP_SEQ_FOR_EACH( BOOST_TEST_TOOL_PASS_ARG, _, ARGS )
                                                        ^~~~
note: (skipping 13 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
/usr/include/boost/preprocessor/seq/elem.hpp:43:60: note: expanded from macro 'BOOST_PP_SEQ_ELEM_II'
#    define BOOST_PP_SEQ_ELEM_II(im) BOOST_PP_SEQ_ELEM_III(im)
                                                           ^~
/usr/include/boost/preprocessor/seq/elem.hpp:44:41: note: expanded from macro 'BOOST_PP_SEQ_ELEM_III'
#    define BOOST_PP_SEQ_ELEM_III(x, _) x
                                        ^
/usr/include/boost/test/tools/old/interface.hpp:51:49: note: expanded from macro 'BOOST_TEST_TOOL_PASS_ARG'
#define BOOST_TEST_TOOL_PASS_ARG( r, _, arg ) , arg, BOOST_STRINGIZE( arg )
                                                ^~~
/home/matthias/vcs/github/wesnoth/src/tests/test_image_modifications.cpp:753:20: warning: Called C++ object pointer is null
        BOOST_CHECK_EQUAL(mod->get_r(), 123);
                          ^~~~~~~~~~~~
/usr/include/boost/test/tools/old/interface.hpp:153:81: note: expanded from macro 'BOOST_CHECK_EQUAL'
    ::boost::test_tools::tt_detail::equal_impl_frwd(), "", CHECK, CHECK_EQUAL, (L)(R) )
                                                                                ^
/usr/include/boost/test/tools/old/interface.hpp:72:61: note: expanded from macro 'BOOST_TEST_TOOL_IMPL'
        BOOST_JOIN( BOOST_TEST_TOOL_PASS_ARGS, frwd_type )( ARGS ) );           \
                                                            ^~~~
/usr/include/boost/test/tools/old/interface.hpp:55:57: note: expanded from macro 'BOOST_TEST_TOOL_PASS_ARGS0'
    BOOST_PP_SEQ_FOR_EACH( BOOST_TEST_TOOL_PASS_ARG, _, ARGS )
                                                        ^~~~
note: (skipping 13 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
/usr/include/boost/preprocessor/seq/elem.hpp:43:60: note: expanded from macro 'BOOST_PP_SEQ_ELEM_II'
#    define BOOST_PP_SEQ_ELEM_II(im) BOOST_PP_SEQ_ELEM_III(im)
                                                           ^~
/usr/include/boost/preprocessor/seq/elem.hpp:44:41: note: expanded from macro 'BOOST_PP_SEQ_ELEM_III'
#    define BOOST_PP_SEQ_ELEM_III(x, _) x
                                        ^
/usr/include/boost/test/tools/old/interface.hpp:51:49: note: expanded from macro 'BOOST_TEST_TOOL_PASS_ARG'
#define BOOST_TEST_TOOL_PASS_ARG( r, _, arg ) , arg, BOOST_STRINGIZE( arg )
                                                ^~~
/home/matthias/vcs/github/wesnoth/src/tests/test_image_modifications.cpp:772:20: warning: Called C++ object pointer is null
        BOOST_CHECK_EQUAL(mod->get_r(), 0);
                          ^~~~~~~~~~~~
/usr/include/boost/test/tools/old/interface.hpp:153:81: note: expanded from macro 'BOOST_CHECK_EQUAL'
    ::boost::test_tools::tt_detail::equal_impl_frwd(), "", CHECK, CHECK_EQUAL, (L)(R) )
                                                                                ^
/usr/include/boost/test/tools/old/interface.hpp:72:61: note: expanded from macro 'BOOST_TEST_TOOL_IMPL'
        BOOST_JOIN( BOOST_TEST_TOOL_PASS_ARGS, frwd_type )( ARGS ) );           \
                                                            ^~~~
/usr/include/boost/test/tools/old/interface.hpp:55:57: note: expanded from macro 'BOOST_TEST_TOOL_PASS_ARGS0'
    BOOST_PP_SEQ_FOR_EACH( BOOST_TEST_TOOL_PASS_ARG, _, ARGS )
                                                        ^~~~
note: (skipping 13 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
/usr/include/boost/preprocessor/seq/elem.hpp:43:60: note: expanded from macro 'BOOST_PP_SEQ_ELEM_II'
#    define BOOST_PP_SEQ_ELEM_II(im) BOOST_PP_SEQ_ELEM_III(im)
                                                           ^~
/usr/include/boost/preprocessor/seq/elem.hpp:44:41: note: expanded from macro 'BOOST_PP_SEQ_ELEM_III'
#    define BOOST_PP_SEQ_ELEM_III(x, _) x
                                        ^
/usr/include/boost/test/tools/old/interface.hpp:51:49: note: expanded from macro 'BOOST_TEST_TOOL_PASS_ARG'
#define BOOST_TEST_TOOL_PASS_ARG( r, _, arg ) , arg, BOOST_STRINGIZE( arg )
                                                ^~~
/home/matthias/vcs/github/wesnoth/src/tests/test_image_modifications.cpp:791:20: warning: Called C++ object pointer is null
        BOOST_CHECK_EQUAL(mod->get_r(), 0);
                          ^~~~~~~~~~~~
/usr/include/boost/test/tools/old/interface.hpp:153:81: note: expanded from macro 'BOOST_CHECK_EQUAL'
    ::boost::test_tools::tt_detail::equal_impl_frwd(), "", CHECK, CHECK_EQUAL, (L)(R) )
                                                                                ^
/usr/include/boost/test/tools/old/interface.hpp:72:61: note: expanded from macro 'BOOST_TEST_TOOL_IMPL'
        BOOST_JOIN( BOOST_TEST_TOOL_PASS_ARGS, frwd_type )( ARGS ) );           \
                                                            ^~~~
/usr/include/boost/test/tools/old/interface.hpp:55:57: note: expanded from macro 'BOOST_TEST_TOOL_PASS_ARGS0'
    BOOST_PP_SEQ_FOR_EACH( BOOST_TEST_TOOL_PASS_ARG, _, ARGS )
                                                        ^~~~
note: (skipping 13 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
/usr/include/boost/preprocessor/seq/elem.hpp:43:60: note: expanded from macro 'BOOST_PP_SEQ_ELEM_II'
#    define BOOST_PP_SEQ_ELEM_II(im) BOOST_PP_SEQ_ELEM_III(im)
                                                           ^~
/usr/include/boost/preprocessor/seq/elem.hpp:44:41: note: expanded from macro 'BOOST_PP_SEQ_ELEM_III'
#    define BOOST_PP_SEQ_ELEM_III(x, _) x
                                        ^
/usr/include/boost/test/tools/old/interface.hpp:51:49: note: expanded from macro 'BOOST_TEST_TOOL_PASS_ARG'
#define BOOST_TEST_TOOL_PASS_ARG( r, _, arg ) , arg, BOOST_STRINGIZE( arg )
                                                ^~~
/home/matthias/vcs/github/wesnoth/src/tests/test_image_modifications.cpp:810:20: warning: Called C++ object pointer is null
        BOOST_CHECK_EQUAL(mod->get_color().r, 0);
                          ^~~~~~~~~~~~~~~~
/usr/include/boost/test/tools/old/interface.hpp:153:81: note: expanded from macro 'BOOST_CHECK_EQUAL'
    ::boost::test_tools::tt_detail::equal_impl_frwd(), "", CHECK, CHECK_EQUAL, (L)(R) )
                                                                                ^
/usr/include/boost/test/tools/old/interface.hpp:72:61: note: expanded from macro 'BOOST_TEST_TOOL_IMPL'
        BOOST_JOIN( BOOST_TEST_TOOL_PASS_ARGS, frwd_type )( ARGS ) );           \
                                                            ^~~~
/usr/include/boost/test/tools/old/interface.hpp:55:57: note: expanded from macro 'BOOST_TEST_TOOL_PASS_ARGS0'
    BOOST_PP_SEQ_FOR_EACH( BOOST_TEST_TOOL_PASS_ARG, _, ARGS )
                                                        ^~~~
note: (skipping 13 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
/usr/include/boost/preprocessor/seq/elem.hpp:43:60: note: expanded from macro 'BOOST_PP_SEQ_ELEM_II'
#    define BOOST_PP_SEQ_ELEM_II(im) BOOST_PP_SEQ_ELEM_III(im)
                                                           ^~
/usr/include/boost/preprocessor/seq/elem.hpp:44:41: note: expanded from macro 'BOOST_PP_SEQ_ELEM_III'
#    define BOOST_PP_SEQ_ELEM_III(x, _) x
                                        ^
/usr/include/boost/test/tools/old/interface.hpp:51:49: note: expanded from macro 'BOOST_TEST_TOOL_PASS_ARG'
#define BOOST_TEST_TOOL_PASS_ARG( r, _, arg ) , arg, BOOST_STRINGIZE( arg )
                                                ^~~
/home/matthias/vcs/github/wesnoth/src/tests/test_image_modifications.cpp:830:20: warning: Called C++ object pointer is null
        BOOST_CHECK_EQUAL(mod->get_color().r, 1);
                          ^~~~~~~~~~~~~~~~
/usr/include/boost/test/tools/old/interface.hpp:153:81: note: expanded from macro 'BOOST_CHECK_EQUAL'
    ::boost::test_tools::tt_detail::equal_impl_frwd(), "", CHECK, CHECK_EQUAL, (L)(R) )
                                                                                ^
/usr/include/boost/test/tools/old/interface.hpp:72:61: note: expanded from macro 'BOOST_TEST_TOOL_IMPL'
        BOOST_JOIN( BOOST_TEST_TOOL_PASS_ARGS, frwd_type )( ARGS ) );           \
                                                            ^~~~
/usr/include/boost/test/tools/old/interface.hpp:55:57: note: expanded from macro 'BOOST_TEST_TOOL_PASS_ARGS0'
    BOOST_PP_SEQ_FOR_EACH( BOOST_TEST_TOOL_PASS_ARG, _, ARGS )
                                                        ^~~~
note: (skipping 13 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
/usr/include/boost/preprocessor/seq/elem.hpp:43:60: note: expanded from macro 'BOOST_PP_SEQ_ELEM_II'
#    define BOOST_PP_SEQ_ELEM_II(im) BOOST_PP_SEQ_ELEM_III(im)
                                                           ^~
/usr/include/boost/preprocessor/seq/elem.hpp:44:41: note: expanded from macro 'BOOST_PP_SEQ_ELEM_III'
#    define BOOST_PP_SEQ_ELEM_III(x, _) x
                                        ^
/usr/include/boost/test/tools/old/interface.hpp:51:49: note: expanded from macro 'BOOST_TEST_TOOL_PASS_ARG'
#define BOOST_TEST_TOOL_PASS_ARG( r, _, arg ) , arg, BOOST_STRINGIZE( arg )
                                                ^~~
/home/matthias/vcs/github/wesnoth/src/tests/test_image_modifications.cpp:850:20: warning: Called C++ object pointer is null
        BOOST_CHECK_EQUAL(mod->get_color().r, 1);
                          ^~~~~~~~~~~~~~~~
/usr/include/boost/test/tools/old/interface.hpp:153:81: note: expanded from macro 'BOOST_CHECK_EQUAL'
    ::boost::test_tools::tt_detail::equal_impl_frwd(), "", CHECK, CHECK_EQUAL, (L)(R) )
                                                                                ^
/usr/include/boost/test/tools/old/interface.hpp:72:61: note: expanded from macro 'BOOST_TEST_TOOL_IMPL'
        BOOST_JOIN( BOOST_TEST_TOOL_PASS_ARGS, frwd_type )( ARGS ) );           \
                                                            ^~~~
/usr/include/boost/test/tools/old/interface.hpp:55:57: note: expanded from macro 'BOOST_TEST_TOOL_PASS_ARGS0'
    BOOST_PP_SEQ_FOR_EACH( BOOST_TEST_TOOL_PASS_ARG, _, ARGS )
                                                        ^~~~
note: (skipping 13 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
/usr/include/boost/preprocessor/seq/elem.hpp:43:60: note: expanded from macro 'BOOST_PP_SEQ_ELEM_II'
#    define BOOST_PP_SEQ_ELEM_II(im) BOOST_PP_SEQ_ELEM_III(im)
                                                           ^~
/usr/include/boost/preprocessor/seq/elem.hpp:44:41: note: expanded from macro 'BOOST_PP_SEQ_ELEM_III'
#    define BOOST_PP_SEQ_ELEM_III(x, _) x
                                        ^
/usr/include/boost/test/tools/old/interface.hpp:51:49: note: expanded from macro 'BOOST_TEST_TOOL_PASS_ARG'
#define BOOST_TEST_TOOL_PASS_ARG( r, _, arg ) , arg, BOOST_STRINGIZE( arg )
                                                ^~~
/home/matthias/vcs/github/wesnoth/src/tests/test_image_modifications.cpp:870:20: warning: Called C++ object pointer is null
        BOOST_CHECK_EQUAL(mod->get_color().r, 1);
                          ^~~~~~~~~~~~~~~~
/usr/include/boost/test/tools/old/interface.hpp:153:81: note: expanded from macro 'BOOST_CHECK_EQUAL'
    ::boost::test_tools::tt_detail::equal_impl_frwd(), "", CHECK, CHECK_EQUAL, (L)(R) )
                                                                                ^
/usr/include/boost/test/tools/old/interface.hpp:72:61: note: expanded from macro 'BOOST_TEST_TOOL_IMPL'
        BOOST_JOIN( BOOST_TEST_TOOL_PASS_ARGS, frwd_type )( ARGS ) );           \
                                                            ^~~~
/usr/include/boost/test/tools/old/interface.hpp:55:57: note: expanded from macro 'BOOST_TEST_TOOL_PASS_ARGS0'
    BOOST_PP_SEQ_FOR_EACH( BOOST_TEST_TOOL_PASS_ARG, _, ARGS )
                                                        ^~~~
note: (skipping 13 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
/usr/include/boost/preprocessor/seq/elem.hpp:43:60: note: expanded from macro 'BOOST_PP_SEQ_ELEM_II'
#    define BOOST_PP_SEQ_ELEM_II(im) BOOST_PP_SEQ_ELEM_III(im)
                                                           ^~
/usr/include/boost/preprocessor/seq/elem.hpp:44:41: note: expanded from macro 'BOOST_PP_SEQ_ELEM_III'
#    define BOOST_PP_SEQ_ELEM_III(x, _) x
                                        ^
/usr/include/boost/test/tools/old/interface.hpp:51:49: note: expanded from macro 'BOOST_TEST_TOOL_PASS_ARG'
#define BOOST_TEST_TOOL_PASS_ARG( r, _, arg ) , arg, BOOST_STRINGIZE( arg )
                                                ^~~
/home/matthias/vcs/github/wesnoth/src/tests/test_image_modifications.cpp:890:20: warning: Called C++ object pointer is null
        BOOST_CHECK_EQUAL(mod->get_color().r, 1);
                          ^~~~~~~~~~~~~~~~
/usr/include/boost/test/tools/old/interface.hpp:153:81: note: expanded from macro 'BOOST_CHECK_EQUAL'
    ::boost::test_tools::tt_detail::equal_impl_frwd(), "", CHECK, CHECK_EQUAL, (L)(R) )
                                                                                ^
/usr/include/boost/test/tools/old/interface.hpp:72:61: note: expanded from macro 'BOOST_TEST_TOOL_IMPL'
        BOOST_JOIN( BOOST_TEST_TOOL_PASS_ARGS, frwd_type )( ARGS ) );           \
                                                            ^~~~
/usr/include/boost/test/tools/old/interface.hpp:55:57: note: expanded from macro 'BOOST_TEST_TOOL_PASS_ARGS0'
    BOOST_PP_SEQ_FOR_EACH( BOOST_TEST_TOOL_PASS_ARG, _, ARGS )
                                                        ^~~~
note: (skipping 13 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
/usr/include/boost/preprocessor/seq/elem.hpp:43:60: note: expanded from macro 'BOOST_PP_SEQ_ELEM_II'
#    define BOOST_PP_SEQ_ELEM_II(im) BOOST_PP_SEQ_ELEM_III(im)
                                                           ^~
/usr/include/boost/preprocessor/seq/elem.hpp:44:41: note: expanded from macro 'BOOST_PP_SEQ_ELEM_III'
#    define BOOST_PP_SEQ_ELEM_III(x, _) x
                                        ^
/usr/include/boost/test/tools/old/interface.hpp:51:49: note: expanded from macro 'BOOST_TEST_TOOL_PASS_ARG'
#define BOOST_TEST_TOOL_PASS_ARG( r, _, arg ) , arg, BOOST_STRINGIZE( arg )
                                                ^~~
31 warnings generated.
[ 96%] Building CXX object src/CMakeFiles/test.dir/tests/test_lexical_cast.cpp.o
[ 96%] Building CXX object src/CMakeFiles/test.dir/tests/test_make_enum.cpp.o
[ 96%] Building CXX object src/CMakeFiles/test.dir/tests/test_map_location.cpp.o
[ 96%] Building CXX object src/CMakeFiles/test.dir/tests/test_mp_connect.cpp.o
[ 96%] Building CXX object src/CMakeFiles/test.dir/tests/test_recall_list.cpp.o
[ 96%] Building CXX object src/CMakeFiles/test.dir/tests/test_rng.cpp.o
[ 96%] Building CXX object src/CMakeFiles/test.dir/tests/test_sdl_utils.cpp.o
[ 96%] Building CXX object src/CMakeFiles/test.dir/tests/test_serialization.cpp.o
[ 96%] Building CXX object src/CMakeFiles/test.dir/tests/test_team.cpp.o
[ 96%] Building CXX object src/CMakeFiles/test.dir/tests/test_unit_map.cpp.o
[ 96%] Building CXX object src/CMakeFiles/test.dir/tests/test_util.cpp.o
[ 96%] Building CXX object src/CMakeFiles/test.dir/tests/test_version.cpp.o
[ 96%] Building CXX object src/CMakeFiles/test.dir/tests/test_whiteboard_side_actions.cpp.o
[ 96%] Building CXX object src/CMakeFiles/test.dir/tests/utils/fake_display.cpp.o
[100%] Building CXX object src/CMakeFiles/test.dir/tests/utils/fake_event_source.cpp.o
[100%] Building CXX object src/CMakeFiles/test.dir/tests/utils/game_config_manager.cpp.o
[100%] Building CXX object src/CMakeFiles/test.dir/tests/utils/play_scenario.cpp.o
[100%] Linking CXX executable ../test
[100%] Built target test
Use of uninitialized value $JS in -r at /home/matthias/LLVM/LLVM_dev/stage_2/build/bin/scan-build line 473.
scan-build: Cannot find 'sorttable.js'.
@GregoryLundberg
Copy link
Contributor

Visual Studio agrees on many of those. I think it caught a couple not listed. Most of the notes from Visual Studio, though, were in upstream packages which we don't want to fix unless they can be shown to be actual problems.

I ran across an online tool, Coverity, which purports to run exhaustive static analysis. Wesnoth is set up there but hasn't been run in a year. I sent a request to be added so I could check it out but whoever manages Wesnoth there has not acted on my request, yet.

My opinion is any notes about Wesnoth code should be carefully considered and corrected.

@CelticMinstrel
Copy link
Member

I didn't look through all of that, but it seemed like at least one report in a Boost header is likely related to a problem at the call site of that Boost function.

The warnings in Lua should probably be ignored, as well.

@GregoryLundberg
Copy link
Contributor

The Lua warnings were the ones I dug into. They're mainly due to struct member alignment and padding. I could fix them (using unspecified/undefined behaviors) or convert the members to another type. Lua, however, is specified to be solely ISO Standard C and any fix using unspecified or undefined behavior would be rejected upstream.

Many static analyzers, remember, are simply suggestions. While a goal of zero messages is laudable, it is often unreasonable and even unattainable. Each suggestion, however, should be carefully considered (even if it is in an upstream package, like Boost). A note about memcpy, for example, probably appears because, over the decades, memcpy has been such a security headache. While it might not be an issue for Wesnoth, the comment should be carefully considered. We might not be able to replace the function, and might not be able to add call-site checks, we can, at least, audit each use and document the issue and why it's not a problem for Wesnoth.

@Vultraz
Copy link
Member

Vultraz commented Aug 4, 2017

Here's the output with the Boost, Lua, tests, SDL_SavePNG, and compiler output stuff stripped:

/home/matthias/vcs/github/wesnoth/src/sdl/utils.cpp:488:7: warning: Value stored to 'avg_a' is never read
                                  avg_a /= count;
                                  ^        ~~~~~
/home/matthias/vcs/github/wesnoth/src/sdl/utils.cpp:578:5: warning: Variable 'xloc' with floating point type 'float' should not be used as a loop counter
                                for(float xloc = xsrc; xloc < xsrc+xratio; xloc += 1) {
                                ^                      ~~~~                ~~~~
/home/matthias/vcs/github/wesnoth/src/sdl/utils.cpp:581:6: warning: Variable 'yloc' with floating point type 'float' should not be used as a loop counter
                                        for(float yloc = ysrc; yloc < ysrc+yratio; yloc += 1) {
                                        ^                      ~~~~                ~~~~
/home/matthias/vcs/github/wesnoth/src/sdl/utils.cpp:1504:21: warning: Division by zero
                                        | (std::min(red/avg,ff) << 16)
                                                    ~~~^~~~
                       ^
/home/matthias/vcs/github/wesnoth/src/serialization/preprocessor.cpp:331:8: warning: Use of memory after it is freed
                if (!current_->get_chunk()) {
                     ^~~~~~~~~~~~~~~~~~~~~

/home/matthias/vcs/github/wesnoth/src/generators/default_map_generator_job.cpp:556:4: warning: Value stored to 'avg_distance' is never read
                        avg_distance = 0;
                        ^              ~
/home/matthias/vcs/github/wesnoth/src/generators/default_map_generator_job.cpp:889:2: warning: Value stored to 'ticks' is never read
        ticks = SDL_GetTicks();
        ^       ~~~~~~~~~~~~~~
/home/matthias/vcs/github/wesnoth/src/generators/default_map_generator_job.cpp:1158:2: warning: Value stored to 'ticks' is never read
        ticks = SDL_GetTicks();
        ^       ~~~~~~~~~~~~~~

In file included from /usr/include/boost/algorithm/string/predicate.hpp:22:
/usr/include/boost/algorithm/string/compare.hpp:43:30: warning: Out of bound memory access (access exceeds upper limit of memory block)
                return Arg1==Arg2;
                             ^~~~
/home/matthias/vcs/github/wesnoth/src/sound_music_track.cpp:99:4: warning: Opened File never closed. Potential Resource leak
                        LOG_AUDIO << "track does not appear to be an Ogg file '"
                        ^~~~~~~~~
/home/matthias/vcs/github/wesnoth/src/sound_music_track.cpp:28:19: note: expanded from macro 'LOG_AUDIO'
#define LOG_AUDIO LOG_STREAM(info, log_audio)
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/matthias/vcs/github/wesnoth/src/log.hpp:187:39: note: expanded from macro 'LOG_STREAM'
#define LOG_STREAM(level, domain) if (lg::level().dont_log(domain)) ; else lg::level()(domain)
                                      ^~~~~~~~~
/home/matthias/vcs/github/wesnoth/src/sound_music_track.cpp:105:30: warning: Opened File never closed. Potential Resource leak
                vorbis_comment* comments = ov_comment(&vf, -1);
                                           ^~~~~~~~~~
 Refer to --analyzer-output for valid output formats
/home/matthias/vcs/github/wesnoth/src/terrain/builder.cpp:168:48: warning: Division by zero
                                img_list.back().set_animation_time(ri.rand % img_list.back().get_animation_duration());
                                                                   ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/matthias/vcs/github/wesnoth/src/terrain/builder.cpp:1191:30: warning: Forming reference to null pointer
                                const map_location loc = legacy_difference(*itor, min_constraint->loc);
                                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

/home/matthias/vcs/github/wesnoth/src/terrain/translation.cpp:740:9: warning: Value stored to 'end' during its initialization is never read
        size_t end = str.size();
               ^~~   ~~~~~~~~~~

/home/matthias/vcs/github/wesnoth/src/widgets/scrollbar.cpp:353:54: warning: Division by zero
                        int dep = y_dep * int(full_height_ - grip_height_)/ (groove.h - grip.h);
                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~

/home/matthias/vcs/github/wesnoth/src/actions/attack.cpp:1377:4: warning: Value stored to 'hits' is never read
                        hits = results_hits;
                        ^      ~~~~~~~~~~~~
/home/matthias/vcs/github/wesnoth/src/actions/attack.cpp:1388:4: warning: Value stored to 'damage' is never read
                        damage = results_damage;
                        ^        ~~~~~~~~~~~~~~

/home/matthias/vcs/github/wesnoth/src/ai/default/attack.cpp:244:20: warning: Called C++ object pointer is null
                chance_to_kill = prev_def->hp_dist[0];
                                 ^~~~~~~~~~~~~~~~~~~~

/home/matthias/vcs/github/wesnoth/src/editor/palette/tristate_button.cpp:102:8: warning: Value stored to 'new_state' during its initialization is never read
        STATE new_state = state_;
              ^~~~~~~~~   ~~~~~~

/home/matthias/vcs/github/wesnoth/src/game_initialization/connect_engine.cpp:248:6: warning: Value stored to 'side_assigned' is never read
                                        side_assigned = true;
                                        ^               ~~~~

/home/matthias/vcs/github/wesnoth/src/gui/dialogs/multiplayer/mp_options_helper.cpp:68:6: warning: Value stored to 'pos' during its initialization is never read
        int pos = remove_nodes_for_type("campaign");
            ^~~   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

/home/matthias/vcs/github/wesnoth/src/gui/widgets/settings.cpp:531:2: warning: Returning null reference
        return *best_resolution;        
        ^~~~~~~~~~~~~~~~~~~~~~~

/home/matthias/vcs/github/wesnoth/src/gui/widgets/tree_view_node.cpp:753:9: warning: Called C++ object pointer is null
        while(!cur->is_folded() && cur->count_children() > 0) {
               ^~~~~~~~~~~~~~~~
/home/matthias/vcs/github/wesnoth/src/server/server.cpp:2355:3: warning: Value stored to 'banned' is never read
                banned = true;
                ^        ~~~~
/home/matthias/vcs/github/wesnoth/src/server/server.cpp:2382:7: warning: conditions of the inner and outer statements are identical
                        if(!banned) {
                           ^~~~~~~
/home/matthias/vcs/github/wesnoth/src/server/server.cpp:2424:3: warning: Value stored to 'banned' is never read
                banned = true;
                ^        ~~~~
/home/matthias/vcs/github/wesnoth/src/server/server.cpp:2458:7: warning: conditions of the inner and outer statements are identical
                        if(!banned) {
                           ^~~~~~~
/home/matthias/vcs/github/wesnoth/src/server/server.cpp:2509:3: warning: Value stored to 'banned' is never read
                banned = true;
                ^        ~~~~
/home/matthias/vcs/github/wesnoth/src/server/server.cpp:2536:7: warning: conditions of the inner and outer statements are identical
                        if(!banned) {
                           ^~~~~~~

@GregoryLundberg
Copy link
Contributor

You're using the SVN / Development build for Clang 6.0?

I reran using the current release and get NO messages at all.

A glance through the messages @Vultraz pulled out and most do look like they deserve attention. But I'm not sure I want to rely upon a development version of the compiler. Since I run Arch, and keep fairly up-to-date, I tend to run into these sorts of warnings within a few days of the compiler releasing. I'll do some research and if I can do a side-by-side install I'll take a look at these warnings; otherwise I'll wait for 6.0 to come out.

@matthiaskrgr
Copy link
Contributor Author

Yeah, I'm compiling llvm + tools from git sources myself.

Anyway, I also had this situation where I would not get any messages at all, which happened when I only ran scan-build with make but not with cmake.

scan-build cmake ...
scan-build make ...

worked though.

5.0 was just branched a few days ago, so the next version is major going to be 5.0, with 6.0 being released in a few months.

@GregoryLundberg
Copy link
Contributor

I can get 6.0 from Arch AUR on a 6-hour refresh cycle from the SVN but don't want to commit to it unless I can side-by-side with the release version.

I saw your commands and tried them but not in an out-of-tree. I'll try again.

@matthiaskrgr
Copy link
Contributor Author

For the record, I was able to reproduce all the findings that Vultraz extracted with 4.0.

@GregoryLundberg
Copy link
Contributor

Well, I wish I could. I did rm -fR on ~/build and ~/CMakeFiles after doing make/scons cleans. And then followed your process above using cut-and-paste. I don't get any messages at all.

I just sync'd to master and hit a couple new minor errors; but still cannot get the static analysis to run. I'll keep looking into it.

@matthiaskrgr
Copy link
Contributor Author

Did it say "scan-build: Using <compiler ..>" before giving any build output?
Did you pass the analyzer flags for both, the build-sys and the make invocation?

@GregoryLundberg
Copy link
Contributor

I copied and pasted the command lines you used, in the OP. And yes it says it's using clang 4.0. I'm looking at the VC15 static analysis output right now and will get back to clang in a bit.

@matthiaskrgr
Copy link
Contributor Author

can you see scan-build and its flags being used when running make in verbose mode?

@GregoryLundberg
Copy link
Contributor

with VERBOSE=1 I do not see scan-build and all those flags.

@matthiaskrgr
Copy link
Contributor Author

matthiaskrgr commented Aug 4, 2017

Odd, I don't understand what is wrong :/
can you please just for the record post the commands you used?

@GregoryLundberg
Copy link
Contributor

$ scan-build -enable-checker alpha.core.BoolAssignment,alpha.core.CastSize,alpha.core.FixedAddr,alpha.core.IdenticalExpr,alpha.core.PointerArithm,alpha.core.PointerSub,alpha.core.SizeofPtr,alpha.security.ArrayBoundV2,alpha.security.MallocOverflow,alpha.security.ReturnPtrRange,alpha.unix.Chroot,alpha.unix.PthreadLock,alpha.unix.SimpleStream,alpha.unix.Stream,alpha.unix.cstring.BufferOverlap,alpha.unix.cstring.NotNullTerminated,alpha.unix.cstring.OutOfBounds,security.FloatLoopCounter,security.insecureAPI.rand cmake .
$ scan-build -enable-checker alpha.core.BoolAssignment,alpha.core.CastSize,alpha.core.FixedAddr,alpha.core.IdenticalExpr,alpha.core.PointerArithm,alpha.core.PointerSub,alpha.core.SizeofPtr,alpha.security.ArrayBoundV2,alpha.security.MallocOverflow,alpha.security.ReturnPtrRange,alpha.unix.Chroot,alpha.unix.PthreadLock,alpha.unix.SimpleStream,alpha.unix.Stream,alpha.unix.cstring.BufferOverlap,alpha.unix.cstring.NotNullTerminated,alpha.unix.cstring.OutOfBounds,security.FloatLoopCounter,security.insecureAPI.rand make -j2 -B VERBOSE=1 wesnoth wesnothd campaignd test

@matthiaskrgr
Copy link
Contributor Author

It's working here with these commands.

Apparnetly I was wrong about the the scan-build flags (security.insecureAPI.rand etc) showing up in the call by make but I can see that it does call c++-analyzer instead of clang++.

@GregoryLundberg
Copy link
Contributor

s'ok now that I know where to look I'll probably figure it out. Most likely it's related to my system having both GCC and CLang installed.

@matthiaskrgr
Copy link
Contributor Author

Hmm right. On most linuxes, CXX points to g++ but I have set my CXX to clang++ via zshrc.
maybe try CXX=clang++ scan-build ....

gfgtdf pushed a commit to gfgtdf/wesnoth that referenced this issue Aug 26, 2017
I left alone external libraries, as well as false positives and a bunch of
miscellaneous cases where the existing code is fine (e.g. using floating
point loop indices in scale_surface_sharp() is intentional).

Closes wesnoth#1877.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants