Package Details: monotone 1.1-9

Git Clone URL: https://aur.archlinux.org/monotone.git (read-only, click to copy)
Package Base: monotone
Description: A free distributed version control system
Upstream URL: http://www.monotone.ca/
Licenses: GPL
Submitter: grawity
Maintainer: grawity
Last Packager: grawity
Votes: 3
Popularity: 0.000000
First Submitted: 2017-04-23 09:41 (UTC)
Last Updated: 2022-02-22 08:45 (UTC)

Latest Comments

ccorn commented on 2022-02-22 04:41 (UTC)

The problems with Boost arise from Monotone defining single-character macros which clash with some of Boost's template parameter names. I have augmented prepare() to rename those macros. The result builds with current Boost.

--- a/PKGBUILD
+++ b/PKGBUILD
@@ -8,5 +8,5 @@
 pkgname=monotone
 pkgver=1.1
-pkgrel=8
+pkgrel=9
 pkgdesc='A free distributed version control system'
 arch=('i686' 'x86_64')
@@ -14,5 +14,5 @@ url='http://www.monotone.ca/'
 license=('GPL')
 depends=('pcre' 'lua53' 'botan1.10' 'sqlite3' 'libidn' 'zlib')
-makedepends=('boost1.69')
+makedepends=('boost')
 source=("http://www.monotone.ca/downloads/1.1/monotone-${pkgver}.tar.bz2"
         "http://http.debian.net/debian/pool/main/m/monotone/monotone_1.1-9.debian.tar.xz"
@@ -34,4 +34,11 @@ prepare() {
     fi
   done
+  echo "Replacing single-character macros"
+  find . \( -name '*.cc' -o -name '*.hh' \) -type f -print0 | \
+  xargs -0r sed -i -E '
+s,\<E( *\(),ERROR\1,g
+s,\<L( *\(),LOG\1,g
+s,\<P( *\(),PROGRESS\1,g
+s,\<W( *\(),WARNING\1,g'
   echo "Bootstrapping autoconf"
   aclocal
@@ -43,6 +50,4 @@ build() {
   export DISABLE_NETWORK_TESTS=1
   export CXXFLAGS+=" -std=gnu++11"
-  export CXXFLAGS+=" -I/opt/boost1.69/include"
-  export LDFLAGS+=" -L/opt/boost1.69/lib"
   export lua_CFLAGS=$(pkg-config --cflags lua53)
   export lua_LIBS=$(pkg-config --libs lua53)

grawity commented on 2022-02-19 16:24 (UTC)

At this point, better to make a Debian stretch container and use it from there.

micwoj92 commented on 2022-02-19 15:48 (UTC)

Build fails

==> Starting build()...
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a race-free mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether UID '1000' is supported by ustar format... yes
checking whether GID '1000' is supported by ustar format... yes
checking how to create a ustar tar archive... gnutar
checking whether make supports nested variables... (cached) yes
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking category of operating system... Unix
checking for g++... g++
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C++... yes
checking whether g++ accepts -g... yes
checking for g++ option to enable C++11 features... none needed
checking whether make supports the include directive... yes (GNU style)
checking dependency style of g++... gcc3
checking for C++ compiler warning flags... -Wall -W -Wno-unused
checking for ranlib... ranlib
checking for GNU msgfmt... /usr/bin/msgfmt
checking for GNU msgmerge... /usr/bin/msgmerge
checking for GNU xgettext... /usr/bin/xgettext
checking whether /usr/bin/xgettext supports --flag... yes
checking whether /usr/bin/xgettext supports --package-name and --package-version... yes
checking for library containing deflate... -lz
checking boost version 1.33.0 or newer... 
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for botan... no
botan.pc not found
checking for botan using botan-1.10.pc... yes
checking whether botan is usable... yes
checking for idn... no
idn.pc not found
checking for idn using libidn.pc... yes
checking whether idn is usable... yes
checking for lua... yes
checking whether lua is usable... yes
checking for pcre... no
pcre.pc not found
checking for pcre using libpcre.pc... yes
checking whether pcre is usable... yes
checking for sqlite3... yes
checking whether sqlite3 is usable... yes
checking for sockaddr_in6... yes
checking for library containing gethostbyname... none required
checking for library containing accept... none required
checking for library containing inet_aton... none required
checking for gethostbyaddr... yes
checking for inet_ntoa... yes
checking for socket... yes
checking for inet_pton... yes
checking for inet_ntop... yes
checking for getaddrinfo... yes
checking whether INADDR_NONE is defined... yes
checking for socklen_t... yes
checking for cxxabi.h... yes
checking for fcntl.h... yes
checking for netinet/in.h... yes
checking whether the compiler supports typeof... yes
checking whether the compiler supports extern template... yes
checking whether the compiler supports __gnu_cxx::hash_map... yes
checking whether the compiler supports std::hash_map... no
checking whether the compiler supports tr1::unordered_map... yes
checking for early 4.0-series g++ bug in tr1 hashtables... no
checking whether the compiler supports std::unordered_map... yes
checking whether C++ streams support sync_with_stdio... yes
checking whether g++ handles templates with static const members correctly... yes
checking whether mktime is 64-bit capable... yes
checking whether char has 8 bits... yes
checking whether plain char is signed... yes
checking size of short... 2
checking size of long... 8
checking size of int... 4
checking for off_t... yes
checking for pid_t... yes
checking for struct stat.st_ctim.tv_nsec... yes
checking for struct stat.st_mtim.tv_nsec... yes
checking for struct stat.st_ctimespec.tv_nsec... no
checking for struct stat.st_mtimespec.tv_nsec... no
checking for struct stat.st_ctimensec... no
checking for struct stat.st_mtimensec... no
checking for struct dirent.d_type... yes
checking for __cxa_current_exception_type... yes
checking for __cxa_demangle... yes
checking for dirfd... yes
checking for fstatat... yes
checking for mkdtemp... yes
checking for mmap... yes
checking for putenv... yes
checking for setenv... yes
checking for strptime... yes
checking for unsetenv... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating doc/Makefile
config.status: creating config.h
config.status: executing depfiles commands
(CDPATH="${ZSH_VERSION+.}:" && cd . && /bin/sh '/home/micwoj92/build/src/monotone-1.1/missing' autoheader)
rm -f stamp-h1
touch config.h.in
cd . && /bin/sh ./config.status config.h
config.status: creating config.h
config.status: config.h is unchanged
make  all-recursive
make[1]: Entering directory '/home/micwoj92/build/src/monotone-1.1'
Making all in doc
make[2]: Entering directory '/home/micwoj92/build/src/monotone-1.1/doc'
make[2]: Leaving directory '/home/micwoj92/build/src/monotone-1.1/doc'
make[2]: Entering directory '/home/micwoj92/build/src/monotone-1.1'
REAL_BLDDIR=$PWD/.; \
(cd . && $REAL_BLDDIR/mtn --root=. automate get_base_revision_id) 2>/dev/null >src/package_revision_raw.txt \
|| (cd . && mtn --root=. automate get_base_revision_id) 2>/dev/null >src/package_revision_raw.txt \
|| rm -f src/package_revision_raw.txt
g++ -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security         -fstack-clash-protection -fcf-protection -Wp,-D_GLIBCXX_ASSERTIONS -Wall -W -Wno-unused -o util/txt2c util/txt2c.cc
REAL_BLDDIR=$PWD/.; \
(cd . && $REAL_BLDDIR/mtn --root=. automate get_current_revision) 2>/dev/null >src/package_full_revision_raw.txt \
|| (cd . && mtn --root=. automate get_current_revision) 2>/dev/null >src/package_full_revision_raw.txt \
|| rm -f src/package_full_revision_raw.txt
sed -e 's,[@]PACKAGE_VERSION[@],1.1,' -e 's,[@]sysconfdir[@],/etc,' < src/util/mtnopt.in > mtnopt && chmod +x mtnopt
/usr/bin/mkdir -p extra/building
sed -e 's,[@]PACKAGE_VERSION[@],1.1,' -e 's,[@]sysconfdir[@],/etc,' < extra/building/dump-test-logs.sh.in > extra/building/dump-test-logs.sh && chmod +x extra/building/dump-test-logs.sh
depbase=`echo src/sanity.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++  -I.    -I/usr/include/botan-1.10           -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security         -fstack-clash-protection -fcf-protection -Wp,-D_GLIBCXX_ASSERTIONS -Wall -W -Wno-unused -MT src/sanity.o -MD -MP -MF $depbase.Tpo -c -o src/sanity.o src/sanity.cc &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/simplestring_xform.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++  -I.    -I/usr/include/botan-1.10           -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security         -fstack-clash-protection -fcf-protection -Wp,-D_GLIBCXX_ASSERTIONS -Wall -W -Wno-unused -MT src/simplestring_xform.o -MD -MP -MF $depbase.Tpo -c -o src/simplestring_xform.o src/simplestring_xform.cc &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/constants.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++  -I.    -I/usr/include/botan-1.10           -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security         -fstack-clash-protection -fcf-protection -Wp,-D_GLIBCXX_ASSERTIONS -Wall -W -Wno-unused -MT src/constants.o -MD -MP -MF $depbase.Tpo -c -o src/constants.o src/constants.cc &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/vocab.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++  -I.    -I/usr/include/botan-1.10           -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security         -fstack-clash-protection -fcf-protection -Wp,-D_GLIBCXX_ASSERTIONS -Wall -W -Wno-unused -MT src/vocab.o -MD -MP -MF $depbase.Tpo -c -o src/vocab.o src/vocab.cc &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/charset.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++  -I.    -I/usr/include/botan-1.10           -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security         -fstack-clash-protection -fcf-protection -Wp,-D_GLIBCXX_ASSERTIONS -Wall -W -Wno-unused -MT src/charset.o -MD -MP -MF $depbase.Tpo -c -o src/charset.o src/charset.cc &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/paths.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++  -I.    -I/usr/include/botan-1.10           -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security         -fstack-clash-protection -fcf-protection -Wp,-D_GLIBCXX_ASSERTIONS -Wall -W -Wno-unused -MT src/paths.o -MD -MP -MF $depbase.Tpo -c -o src/paths.o src/paths.cc &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/luaext_mkstemp.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++  -I.    -I/usr/include/botan-1.10           -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security         -fstack-clash-protection -fcf-protection -Wp,-D_GLIBCXX_ASSERTIONS -Wall -W -Wno-unused -MT src/luaext_mkstemp.o -MD -MP -MF $depbase.Tpo -c -o src/luaext_mkstemp.o src/luaext_mkstemp.cc &&\
mv -f $depbase.Tpo $depbase.Po
In file included from /usr/include/boost/smart_ptr/detail/shared_count.hpp:31,
                 from /usr/include/boost/smart_ptr/shared_ptr.hpp:17,
                 from /usr/include/boost/shared_ptr.hpp:17,
                 from src/vocab.hh:13,
                 from src/vocab.cc:15:
/usr/include/boost/throw_exception.hpp:95:46: error: macro "E" requires 3 arguments, but only 1 given
   95 |     explicit wrapexcept( E const & e ): E( e )
      |                                              ^
In file included from src/vocab.cc:14:
src/sanity.hh:378: note: macro "E" defined here
  378 | #define E(e, whence, explain)                                          \
      | 
In file included from /usr/include/boost/smart_ptr/detail/shared_count.hpp:31,
                 from /usr/include/boost/smart_ptr/shared_ptr.hpp:17,
                 from /usr/include/boost/shared_ptr.hpp:17,
                 from src/vocab.hh:13,
                 from src/vocab.cc:15:
/usr/include/boost/throw_exception.hpp:100:82: error: macro "E" requires 3 arguments, but only 1 given
  100 |     explicit wrapexcept( E const & e, boost::source_location const & loc ): E( e )
      |                                                                                  ^
In file included from src/vocab.cc:14:
src/sanity.hh:378: note: macro "E" defined here
  378 | #define E(e, whence, explain)                                          \
      | 
In file included from /usr/include/boost/optional/optional.hpp:34,
                 from /usr/include/boost/optional.hpp:15,
                 from /usr/include/boost/format/internals.hpp:21,
                 from /usr/include/boost/format.hpp:38,
                 from src/sanity.cc:17:
/usr/include/boost/throw_exception.hpp:95:46: error: macro "E" requires 3 arguments, but only 1 given
   95 |     explicit wrapexcept( E const & e ): E( e )
      |                                              ^
In file included from src/vector.hh:23,
                 from src/sanity.cc:15:
src/sanity.hh:378: note: macro "E" defined here
  378 | #define E(e, whence, explain)                                          \
      | 
In file included from /usr/include/boost/optional/optional.hpp:34,
                 from /usr/include/boost/optional.hpp:15,
                 from /usr/include/boost/format/internals.hpp:21,
                 from /usr/include/boost/format.hpp:38,
                 from src/sanity.cc:17:
/usr/include/boost/throw_exception.hpp:100:82: error: macro "E" requires 3 arguments, but only 1 given
  100 |     explicit wrapexcept( E const & e, boost::source_location const & loc ): E( e )
      |                                                                                  ^
In file included from src/vector.hh:23,
                 from src/sanity.cc:15:
src/sanity.hh:378: note: macro "E" defined here
  378 | #define E(e, whence, explain)                                          \
      | 
In file included from /usr/include/boost/token_functions.hpp:44,
                 from /usr/include/boost/token_iterator.hpp:24,
                 from /usr/include/boost/tokenizer.hpp:20,
                 from src/charset.cc:13:
/usr/include/boost/throw_exception.hpp:95:46: error: macro "E" requires 3 arguments, but only 1 given
   95 |     explicit wrapexcept( E const & e ): E( e )
      |                                              ^
In file included from src/vector.hh:23,
                 from src/charset.cc:11:
src/sanity.hh:378: note: macro "E" defined here
  378 | #define E(e, whence, explain)                                          \
      | 
In file included from /usr/include/boost/token_functions.hpp:44,
                 from /usr/include/boost/token_iterator.hpp:24,
                 from /usr/include/boost/tokenizer.hpp:20,
                 from src/charset.cc:13:
/usr/include/boost/throw_exception.hpp:100:82: error: macro "E" requires 3 arguments, but only 1 given
  100 |     explicit wrapexcept( E const & e, boost::source_location const & loc ): E( e )
      |                                                                                  ^
In file included from src/vector.hh:23,
                 from src/charset.cc:11:
src/sanity.hh:378: note: macro "E" defined here
  378 | #define E(e, whence, explain)                                          \
      | 
depbase=`echo src/luaext_parse_basic_io.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++  -I.    -I/usr/include/botan-1.10           -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security         -fstack-clash-protection -fcf-protection -Wp,-D_GLIBCXX_ASSERTIONS -Wall -W -Wno-unused -MT src/luaext_parse_basic_io.o -MD -MP -MF $depbase.Tpo -c -o src/luaext_parse_basic_io.o src/luaext_parse_basic_io.cc &&\
mv -f $depbase.Tpo $depbase.Po
In file included from /usr/include/boost/smart_ptr/detail/shared_count.hpp:31,
                 from /usr/include/boost/smart_ptr/shared_ptr.hpp:17,
                 from /usr/include/boost/shared_ptr.hpp:17,
                 from src/paths.hh:104,
                 from src/basic_io.hh:17,
                 from src/luaext_parse_basic_io.cc:13:
/usr/include/boost/throw_exception.hpp:95:46: error: macro "E" requires 3 arguments, but only 1 given
   95 |     explicit wrapexcept( E const & e ): E( e )
      |                                              ^
In file included from src/vector.hh:23,
                 from src/basic_io.hh:14,
                 from src/luaext_parse_basic_io.cc:13:
src/sanity.hh:378: note: macro "E" defined here
  378 | #define E(e, whence, explain)                                          \
      | 
In file included from /usr/include/boost/smart_ptr/detail/shared_count.hpp:31,
                 from /usr/include/boost/smart_ptr/shared_ptr.hpp:17,
                 from /usr/include/boost/shared_ptr.hpp:17,
                 from src/paths.hh:104,
                 from src/basic_io.hh:17,
                 from src/luaext_parse_basic_io.cc:13:
/usr/include/boost/throw_exception.hpp:100:82: error: macro "E" requires 3 arguments, but only 1 given
  100 |     explicit wrapexcept( E const & e, boost::source_location const & loc ): E( e )
      |                                                                                  ^
In file included from src/vector.hh:23,
                 from src/basic_io.hh:14,
                 from src/luaext_parse_basic_io.cc:13:
src/sanity.hh:378: note: macro "E" defined here
  378 | #define E(e, whence, explain)                                          \
      | 
In file included from /usr/include/boost/smart_ptr/detail/shared_count.hpp:31,
                 from /usr/include/boost/smart_ptr/shared_ptr.hpp:17,
                 from /usr/include/boost/shared_ptr.hpp:17,
                 from src/vocab.hh:13,
                 from src/vocab.cc:15:
/usr/include/boost/throw_exception.hpp: In constructor ‘boost::wrapexcept<E>::wrapexcept(const E&)’:
/usr/include/boost/throw_exception.hpp:97:24: error: expected ‘}’ before ‘;’ token
   97 |         copy_from( &e );
      |                        ^
/usr/include/boost/throw_exception.hpp:96:5: note: to match this ‘{’
   96 |     {
      |     ^
/usr/include/boost/throw_exception.hpp:97:24: error: expected ‘{’ before ‘;’ token
   97 |         copy_from( &e );
      |                        ^
In file included from /usr/include/boost/token_functions.hpp:44,
                 from /usr/include/boost/token_iterator.hpp:24,
                 from /usr/include/boost/tokenizer.hpp:20,
                 from src/charset.cc:13:
/usr/include/boost/throw_exception.hpp: In constructor ‘boost::wrapexcept<E>::wrapexcept(const E&)’:
/usr/include/boost/throw_exception.hpp:97:24: error: expected ‘}’ before ‘;’ token
   97 |         copy_from( &e );
      |                        ^
/usr/include/boost/throw_exception.hpp:96:5: note: to match this ‘{’
   96 |     {
      |     ^
/usr/include/boost/throw_exception.hpp:97:24: error: expected ‘{’ before ‘;’ token
   97 |         copy_from( &e );
      |                        ^
/usr/include/boost/throw_exception.hpp: In instantiation of ‘void boost::throw_exception(const E&) [with E = boost::bad_weak_ptr]’:
/usr/include/boost/smart_ptr/detail/shared_count.hpp:670:31:   required from here
/usr/include/boost/throw_exception.hpp:162:11: error: invalid cast to abstract class type ‘boost::wrapexcept<boost::bad_weak_ptr>’
  162 |     throw wrapexcept<E>( e );
      |           ^~~~~~~~~~~~~~~~~~
/usr/include/boost/throw_exception.hpp:69:47: note:   because the following virtual functions are pure within ‘boost::wrapexcept<boost::bad_weak_ptr>’:
   69 | template<class E> struct BOOST_SYMBOL_VISIBLE wrapexcept:
      |                                               ^~~~~~~~~~
In file included from /usr/include/boost/throw_exception.hpp:23,
                 from /usr/include/boost/smart_ptr/detail/shared_count.hpp:31,
                 from /usr/include/boost/smart_ptr/shared_ptr.hpp:17,
                 from /usr/include/boost/shared_ptr.hpp:17,
                 from src/vocab.hh:13,
                 from src/vocab.cc:15:
/usr/include/boost/exception/exception.hpp:407:40: note:     ‘virtual const boost::exception_detail::clone_base* boost::exception_detail::clone_base::clone() const’
  407 |             virtual clone_base const * clone() const = 0;
      |                                        ^~~~~
/usr/include/boost/exception/exception.hpp:408:26: note:     ‘virtual void boost::exception_detail::clone_base::rethrow() const’
  408 |             virtual void rethrow() const = 0;
      |                          ^~~~~~~
/usr/include/boost/throw_exception.hpp: In instantiation of ‘void boost::throw_exception(const E&) [with E = boost::bad_weak_ptr]’:
/usr/include/boost/smart_ptr/detail/shared_count.hpp:670:31:   required from here
/usr/include/boost/throw_exception.hpp:162:11: error: invalid cast to abstract class type ‘boost::wrapexcept<boost::bad_weak_ptr>’
  162 |     throw wrapexcept<E>( e );
      |           ^~~~~~~~~~~~~~~~~~
/usr/include/boost/throw_exception.hpp:69:47: note:   because the following virtual functions are pure within ‘boost::wrapexcept<boost::bad_weak_ptr>’:
   69 | template<class E> struct BOOST_SYMBOL_VISIBLE wrapexcept:
      |                                               ^~~~~~~~~~
In file included from /usr/include/boost/throw_exception.hpp:23,
                 from /usr/include/boost/token_functions.hpp:44,
                 from /usr/include/boost/token_iterator.hpp:24,
                 from /usr/include/boost/tokenizer.hpp:20,
                 from src/charset.cc:13:
/usr/include/boost/exception/exception.hpp:407:40: note:     ‘virtual const boost::exception_detail::clone_base* boost::exception_detail::clone_base::clone() const’
  407 |             virtual clone_base const * clone() const = 0;
      |                                        ^~~~~
/usr/include/boost/exception/exception.hpp:408:26: note:     ‘virtual void boost::exception_detail::clone_base::rethrow() const’
  408 |             virtual void rethrow() const = 0;
      |                          ^~~~~~~
make[2]: *** [Makefile:2447: src/vocab.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: *** [Makefile:2447: src/charset.o] Error 1
src/paths.cc: In constructor ‘system_path::system_path(const any_path&, bool)’:
src/paths.cc:818:31: warning: implicitly-declared ‘system_path& system_path::operator=(const system_path&)’ is deprecated [-Wdeprecated-copy]
  818 |         wr = working_root.get();
      |                               ^
In file included from src/paths.cc:14:
src/paths.hh:366:3: note: because ‘system_path’ has user-provided ‘system_path::system_path(const system_path&)’
  366 |   system_path(system_path const & other) : any_path(other) {};
      |   ^~~~~~~~~~~
src/paths.cc:820:42: warning: implicitly-declared ‘system_path& system_path::operator=(const system_path&)’ is deprecated [-Wdeprecated-copy]
  820 |         wr = working_root.get_but_unused();
      |                                          ^
In file included from src/paths.cc:14:
src/paths.hh:366:3: note: because ‘system_path’ has user-provided ‘system_path::system_path(const system_path&)’
  366 |   system_path(system_path const & other) : any_path(other) {};
      |   ^~~~~~~~~~~
src/paths.cc: In function ‘bool find_bookdir(const system_path&, const path_component&, system_path&, std::string&)’:
src/paths.cc:924:34: warning: implicitly-declared ‘system_path& system_path::operator=(const system_path&)’ is deprecated [-Wdeprecated-copy]
  924 |   current = initial_abs_path.get();
      |                                  ^
In file included from src/paths.cc:14:
src/paths.hh:366:3: note: because ‘system_path’ has user-provided ‘system_path::system_path(const system_path&)’
  366 |   system_path(system_path const & other) : any_path(other) {};
      |   ^~~~~~~~~~~
src/paths.cc:939:25: warning: implicitly-declared ‘system_path& system_path::operator=(const system_path&)’ is deprecated [-Wdeprecated-copy]
  939 |       check = current / bookdir;
      |                         ^~~~~~~
In file included from src/paths.cc:14:
src/paths.hh:366:3: note: because ‘system_path’ has user-provided ‘system_path::system_path(const system_path&)’
  366 |   system_path(system_path const & other) : any_path(other) {};
      |   ^~~~~~~~~~~
src/paths.cc:949:37: warning: implicitly-declared ‘system_path& system_path::operator=(const system_path&)’ is deprecated [-Wdeprecated-copy]
  949 |           current = current.dirname();
      |                                     ^
In file included from src/paths.cc:14:
src/paths.hh:366:3: note: because ‘system_path’ has user-provided ‘system_path::system_path(const system_path&)’
  366 |   system_path(system_path const & other) : any_path(other) {};
      |   ^~~~~~~~~~~
src/paths.cc:962:21: warning: implicitly-declared ‘system_path& system_path::operator=(const system_path&)’ is deprecated [-Wdeprecated-copy]
  962 |   check = current / bookdir;
      |                     ^~~~~~~
In file included from src/paths.cc:14:
src/paths.hh:366:3: note: because ‘system_path’ has user-provided ‘system_path::system_path(const system_path&)’
  366 |   system_path(system_path const & other) : any_path(other) {};
      |   ^~~~~~~~~~~
src/paths.cc: In function ‘bool find_and_go_to_workspace(const string&)’:
src/paths.cc:1029:47: warning: implicitly-declared ‘system_path& system_path::operator=(const system_path&)’ is deprecated [-Wdeprecated-copy]
 1029 |       root = system_path("/", origin::internal);
      |                                               ^
In file included from src/paths.cc:14:
src/paths.hh:366:3: note: because ‘system_path’ has user-provided ‘system_path::system_path(const system_path&)’
  366 |   system_path(system_path const & other) : any_path(other) {};
      |   ^~~~~~~~~~~
src/paths.cc:1034:51: warning: implicitly-declared ‘system_path& system_path::operator=(const system_path&)’ is deprecated [-Wdeprecated-copy]
 1034 |       root = system_path(search_root, origin::user);
      |                                                   ^
In file included from src/paths.cc:14:
src/paths.hh:366:3: note: because ‘system_path’ has user-provided ‘system_path::system_path(const system_path&)’
  366 |   system_path(system_path const & other) : any_path(other) {};
      |   ^~~~~~~~~~~
src/paths.cc: In function ‘void get_current_workspace(system_path&)’:
src/paths.cc:1071:43: warning: implicitly-declared ‘system_path& system_path::operator=(const system_path&)’ is deprecated [-Wdeprecated-copy]
 1071 |   workspace = working_root.get_but_unused();
      |                                           ^
In file included from src/paths.cc:14:
src/paths.hh:366:3: note: because ‘system_path’ has user-provided ‘system_path::system_path(const system_path&)’
  366 |   system_path(system_path const & other) : any_path(other) {};
      |   ^~~~~~~~~~~
src/paths.hh: In instantiation of ‘bool safe_compose(const T&, const char*, T&, bool) [with T = any_path]’:
src/platform-wrapped.hh:66:21:   required from here
src/paths.hh:427:15: warning: catching polymorphic type ‘class std::logic_error’ by value [-Wcatch-value=]
  427 |   catch (std::logic_error)
      |               ^~~~~~~~~~~
src/paths.cc: In instantiation of ‘void access_tracker<T>::set(const T&, bool) [with T = system_path]’:
src/paths.cc:89:23:   required from here
src/paths.cc:42:11: warning: implicitly-declared ‘system_path& system_path::operator=(const system_path&)’ is deprecated [-Wdeprecated-copy]
   42 |     value = val;
      |     ~~~~~~^~~~~
In file included from src/paths.cc:14:
src/paths.hh:366:3: note: because ‘system_path’ has user-provided ‘system_path::system_path(const system_path&)’
  366 |   system_path(system_path const & other) : any_path(other) {};
      |   ^~~~~~~~~~~
In file included from src/file_io.hh:14,
                 from src/luaext_mkstemp.cc:12:
src/paths.hh: In instantiation of ‘bool safe_compose(const T&, const char*, T&, bool) [with T = any_path]’:
src/platform-wrapped.hh:66:21:   required from here
src/paths.hh:427:15: warning: catching polymorphic type ‘class std::logic_error’ by value [-Wcatch-value=]
  427 |   catch (std::logic_error)
      |               ^~~~~~~~~~~
In file included from /usr/include/boost/smart_ptr/detail/shared_count.hpp:31,
                 from /usr/include/boost/smart_ptr/shared_ptr.hpp:17,
                 from /usr/include/boost/shared_ptr.hpp:17,
                 from src/paths.hh:104,
                 from src/basic_io.hh:17,
                 from src/luaext_parse_basic_io.cc:13:
/usr/include/boost/throw_exception.hpp: In constructor ‘boost::wrapexcept<E>::wrapexcept(const E&)’:
/usr/include/boost/throw_exception.hpp:97:24: error: expected ‘}’ before ‘;’ token
   97 |         copy_from( &e );
      |                        ^
/usr/include/boost/throw_exception.hpp:96:5: note: to match this ‘{’
   96 |     {
      |     ^
/usr/include/boost/throw_exception.hpp:97:24: error: expected ‘{’ before ‘;’ token
   97 |         copy_from( &e );
      |                        ^
In file included from /usr/include/boost/optional/optional.hpp:34,
                 from /usr/include/boost/optional.hpp:15,
                 from /usr/include/boost/format/internals.hpp:21,
                 from /usr/include/boost/format.hpp:38,
                 from src/sanity.cc:17:
/usr/include/boost/throw_exception.hpp: In constructor ‘boost::wrapexcept<E>::wrapexcept(const E&)’:
/usr/include/boost/throw_exception.hpp:97:24: error: expected ‘}’ before ‘;’ token
   97 |         copy_from( &e );
      |                        ^
/usr/include/boost/throw_exception.hpp:96:5: note: to match this ‘{’
   96 |     {
      |     ^
/usr/include/boost/throw_exception.hpp:97:24: error: expected ‘{’ before ‘;’ token
   97 |         copy_from( &e );
      |                        ^
/usr/include/boost/throw_exception.hpp: In instantiation of ‘void boost::throw_exception(const E&) [with E = boost::bad_weak_ptr]’:
/usr/include/boost/smart_ptr/detail/shared_count.hpp:670:31:   required from here
/usr/include/boost/throw_exception.hpp:162:11: error: invalid cast to abstract class type ‘boost::wrapexcept<boost::bad_weak_ptr>’
  162 |     throw wrapexcept<E>( e );
      |           ^~~~~~~~~~~~~~~~~~
/usr/include/boost/throw_exception.hpp:69:47: note:   because the following virtual functions are pure within ‘boost::wrapexcept<boost::bad_weak_ptr>’:
   69 | template<class E> struct BOOST_SYMBOL_VISIBLE wrapexcept:
      |                                               ^~~~~~~~~~
In file included from /usr/include/boost/throw_exception.hpp:23,
                 from /usr/include/boost/smart_ptr/detail/shared_count.hpp:31,
                 from /usr/include/boost/smart_ptr/shared_ptr.hpp:17,
                 from /usr/include/boost/shared_ptr.hpp:17,
                 from src/paths.hh:104,
                 from src/basic_io.hh:17,
                 from src/luaext_parse_basic_io.cc:13:
/usr/include/boost/exception/exception.hpp:407:40: note:     ‘virtual const boost::exception_detail::clone_base* boost::exception_detail::clone_base::clone() const’
  407 |             virtual clone_base const * clone() const = 0;
      |                                        ^~~~~
/usr/include/boost/exception/exception.hpp:408:26: note:     ‘virtual void boost::exception_detail::clone_base::rethrow() const’
  408 |             virtual void rethrow() const = 0;
      |                          ^~~~~~~
make[2]: *** [Makefile:2447: src/luaext_parse_basic_io.o] Error 1
src/sanity.cc: In member function ‘void sanity::gasp()’:
src/sanity.cc:437:14: warning: catching polymorphic type ‘class std::logic_error’ by value [-Wcatch-value=]
  437 |       catch (logic_error)
      |              ^~~~~~~~~~~
src/sanity.cc:443:14: warning: catching polymorphic type ‘class recoverable_failure’ by value [-Wcatch-value=]
  443 |       catch (recoverable_failure)
      |              ^~~~~~~~~~~~~~~~~~~
In file included from /usr/include/boost/optional/optional.hpp:34,
                 from /usr/include/boost/optional.hpp:15,
                 from /usr/include/boost/format/internals.hpp:21,
                 from /usr/include/boost/format.hpp:38,
                 from src/sanity.cc:17:
/usr/include/boost/throw_exception.hpp: In instantiation of ‘void boost::throw_exception(const E&) [with E = boost::bad_weak_ptr]’:
/usr/include/boost/smart_ptr/detail/shared_count.hpp:670:31:   required from here
/usr/include/boost/throw_exception.hpp:162:11: error: invalid cast to abstract class type ‘boost::wrapexcept<boost::bad_weak_ptr>’
  162 |     throw wrapexcept<E>( e );
      |           ^~~~~~~~~~~~~~~~~~
/usr/include/boost/throw_exception.hpp:69:47: note:   because the following virtual functions are pure within ‘boost::wrapexcept<boost::bad_weak_ptr>’:
   69 | template<class E> struct BOOST_SYMBOL_VISIBLE wrapexcept:
      |                                               ^~~~~~~~~~
In file included from /usr/include/boost/throw_exception.hpp:23,
                 from /usr/include/boost/optional/optional.hpp:34,
                 from /usr/include/boost/optional.hpp:15,
                 from /usr/include/boost/format/internals.hpp:21,
                 from /usr/include/boost/format.hpp:38,
                 from src/sanity.cc:17:
/usr/include/boost/exception/exception.hpp:407:40: note:     ‘virtual const boost::exception_detail::clone_base* boost::exception_detail::clone_base::clone() const’
  407 |             virtual clone_base const * clone() const = 0;
      |                                        ^~~~~
/usr/include/boost/exception/exception.hpp:408:26: note:     ‘virtual void boost::exception_detail::clone_base::rethrow() const’
  408 |             virtual void rethrow() const = 0;
      |                          ^~~~~~~
In file included from /usr/include/boost/optional/optional.hpp:34,
                 from /usr/include/boost/optional.hpp:15,
                 from /usr/include/boost/format/internals.hpp:21,
                 from /usr/include/boost/format.hpp:38,
                 from src/sanity.cc:17:
/usr/include/boost/throw_exception.hpp: In instantiation of ‘void boost::throw_exception(const E&) [with E = boost::io::bad_format_string]’:
/usr/include/boost/format/parsing.hpp:92:35:   required from here
/usr/include/boost/throw_exception.hpp:162:11: error: invalid cast to abstract class type ‘boost::wrapexcept<boost::io::bad_format_string>’
  162 |     throw wrapexcept<E>( e );
      |           ^~~~~~~~~~~~~~~~~~
/usr/include/boost/throw_exception.hpp:69:47: note:   because the following virtual functions are pure within ‘boost::wrapexcept<boost::io::bad_format_string>’:
   69 | template<class E> struct BOOST_SYMBOL_VISIBLE wrapexcept:
      |                                               ^~~~~~~~~~
In file included from /usr/include/boost/throw_exception.hpp:23,
                 from /usr/include/boost/optional/optional.hpp:34,
                 from /usr/include/boost/optional.hpp:15,
                 from /usr/include/boost/format/internals.hpp:21,
                 from /usr/include/boost/format.hpp:38,
                 from src/sanity.cc:17:
/usr/include/boost/exception/exception.hpp:407:40: note:     ‘virtual const boost::exception_detail::clone_base* boost::exception_detail::clone_base::clone() const’
  407 |             virtual clone_base const * clone() const = 0;
      |                                        ^~~~~
/usr/include/boost/exception/exception.hpp:408:26: note:     ‘virtual void boost::exception_detail::clone_base::rethrow() const’
  408 |             virtual void rethrow() const = 0;
      |                          ^~~~~~~
In file included from src/file_io.hh:14,
                 from src/sanity.cc:25:
src/paths.hh: In instantiation of ‘bool safe_compose(const T&, const char*, T&, bool) [with T = any_path]’:
src/platform-wrapped.hh:66:21:   required from here
src/paths.hh:427:15: warning: catching polymorphic type ‘class std::logic_error’ by value [-Wcatch-value=]
  427 |   catch (std::logic_error)
      |               ^~~~~~~~~~~
In file included from /usr/include/boost/optional/optional.hpp:34,
                 from /usr/include/boost/optional.hpp:15,
                 from /usr/include/boost/format/internals.hpp:21,
                 from /usr/include/boost/format.hpp:38,
                 from src/sanity.cc:17:
/usr/include/boost/throw_exception.hpp: In instantiation of ‘void boost::throw_exception(const E&) [with E = boost::io::too_few_args]’:
/usr/include/boost/format/format_implementation.hpp:224:39:   required from ‘boost::basic_format<Ch, Tr, Alloc>::string_type boost::basic_format<Ch, Tr, Alloc>::str() const [with Ch = char; Tr = std::char_traits<char>; Alloc = std::allocator<char>; boost::basic_format<Ch, Tr, Alloc>::string_type = std::__cxx11::basic_string<char>]’
src/sanity.cc:539:15:   required from here
/usr/include/boost/throw_exception.hpp:162:11: error: invalid cast to abstract class type ‘boost::wrapexcept<boost::io::too_few_args>’
  162 |     throw wrapexcept<E>( e );
      |           ^~~~~~~~~~~~~~~~~~
/usr/include/boost/throw_exception.hpp:69:47: note:   because the following virtual functions are pure within ‘boost::wrapexcept<boost::io::too_few_args>’:
   69 | template<class E> struct BOOST_SYMBOL_VISIBLE wrapexcept:
      |                                               ^~~~~~~~~~
In file included from /usr/include/boost/throw_exception.hpp:23,
                 from /usr/include/boost/optional/optional.hpp:34,
                 from /usr/include/boost/optional.hpp:15,
                 from /usr/include/boost/format/internals.hpp:21,
                 from /usr/include/boost/format.hpp:38,
                 from src/sanity.cc:17:
/usr/include/boost/exception/exception.hpp:407:40: note:     ‘virtual const boost::exception_detail::clone_base* boost::exception_detail::clone_base::clone() const’
  407 |             virtual clone_base const * clone() const = 0;
      |                                        ^~~~~
/usr/include/boost/exception/exception.hpp:408:26: note:     ‘virtual void boost::exception_detail::clone_base::rethrow() const’
  408 |             virtual void rethrow() const = 0;
      |                          ^~~~~~~
In file included from /usr/include/boost/optional/optional.hpp:34,
                 from /usr/include/boost/optional.hpp:15,
                 from /usr/include/boost/format/internals.hpp:21,
                 from /usr/include/boost/format.hpp:38,
                 from src/sanity.cc:17:
/usr/include/boost/throw_exception.hpp: In instantiation of ‘void boost::throw_exception(const E&) [with E = std::length_error]’:
src/boost/circular_buffer_base.hpp:1328:28:   required from ‘boost::circular_buffer<T, Alloc>::pointer boost::circular_buffer<T, Alloc>::allocate(boost::circular_buffer<T, Alloc>::size_type) [with T = char; Alloc = std::allocator<char>; boost::circular_buffer<T, Alloc>::pointer = char*; boost::circular_buffer<T, Alloc>::size_type = long unsigned int]’
src/boost/circular_buffer_base.hpp:728:37:   required from ‘boost::circular_buffer<T, Alloc>::circular_buffer(boost::circular_buffer<T, Alloc>::size_type, const allocator_type&) [with T = char; Alloc = std::allocator<char>; boost::circular_buffer<T, Alloc>::size_type = long unsigned int; boost::circular_buffer<T, Alloc>::allocator_type = std::allocator<char>]’
src/sanity.cc:90:36:   required from here
/usr/include/boost/throw_exception.hpp:162:11: error: invalid cast to abstract class type ‘boost::wrapexcept<std::length_error>’
  162 |     throw wrapexcept<E>( e );
      |           ^~~~~~~~~~~~~~~~~~
/usr/include/boost/throw_exception.hpp:69:47: note:   because the following virtual functions are pure within ‘boost::wrapexcept<std::length_error>’:
   69 | template<class E> struct BOOST_SYMBOL_VISIBLE wrapexcept:
      |                                               ^~~~~~~~~~
In file included from /usr/include/boost/throw_exception.hpp:23,
                 from /usr/include/boost/optional/optional.hpp:34,
                 from /usr/include/boost/optional.hpp:15,
                 from /usr/include/boost/format/internals.hpp:21,
                 from /usr/include/boost/format.hpp:38,
                 from src/sanity.cc:17:
/usr/include/boost/exception/exception.hpp:407:40: note:     ‘virtual const boost::exception_detail::clone_base* boost::exception_detail::clone_base::clone() const’
  407 |             virtual clone_base const * clone() const = 0;
      |                                        ^~~~~
/usr/include/boost/exception/exception.hpp:408:26: note:     ‘virtual void boost::exception_detail::clone_base::rethrow() const’
  408 |             virtual void rethrow() const = 0;
      |                          ^~~~~~~
In file included from /usr/include/boost/optional/optional.hpp:34,
                 from /usr/include/boost/optional.hpp:15,
                 from /usr/include/boost/format/internals.hpp:21,
                 from /usr/include/boost/format.hpp:38,
                 from src/sanity.cc:17:
/usr/include/boost/throw_exception.hpp: In instantiation of ‘void boost::throw_exception(const E&) [with E = boost::bad_lexical_cast]’:
/usr/include/boost/lexical_cast/bad_lexical_cast.hpp:99:35:   required from ‘void boost::conversion::detail::throw_bad_cast() [with S = int; T = std::__cxx11::basic_string<char>]’
/usr/include/boost/lexical_cast.hpp:42:70:   required from ‘Target boost::lexical_cast(const Source&) [with Target = std::__cxx11::basic_string<char>; Source = int]’
src/sanity.cc:494:29:   required from here
/usr/include/boost/throw_exception.hpp:162:11: error: invalid cast to abstract class type ‘boost::wrapexcept<boost::bad_lexical_cast>’
  162 |     throw wrapexcept<E>( e );
      |           ^~~~~~~~~~~~~~~~~~
/usr/include/boost/throw_exception.hpp:69:47: note:   because the following virtual functions are pure within ‘boost::wrapexcept<boost::bad_lexical_cast>’:
   69 | template<class E> struct BOOST_SYMBOL_VISIBLE wrapexcept:
      |                                               ^~~~~~~~~~
In file included from /usr/include/boost/throw_exception.hpp:23,
                 from /usr/include/boost/optional/optional.hpp:34,
                 from /usr/include/boost/optional.hpp:15,
                 from /usr/include/boost/format/internals.hpp:21,
                 from /usr/include/boost/format.hpp:38,
                 from src/sanity.cc:17:
/usr/include/boost/exception/exception.hpp:407:40: note:     ‘virtual const boost::exception_detail::clone_base* boost::exception_detail::clone_base::clone() const’
  407 |             virtual clone_base const * clone() const = 0;
      |                                        ^~~~~
/usr/include/boost/exception/exception.hpp:408:26: note:     ‘virtual void boost::exception_detail::clone_base::rethrow() const’
  408 |             virtual void rethrow() const = 0;
      |                          ^~~~~~~
In file included from /usr/include/boost/optional/optional.hpp:34,
                 from /usr/include/boost/optional.hpp:15,
                 from /usr/include/boost/format/internals.hpp:21,
                 from /usr/include/boost/format.hpp:38,
                 from src/sanity.cc:17:
/usr/include/boost/throw_exception.hpp: In instantiation of ‘void boost::throw_exception(const E&) [with E = boost::io::too_many_args]’:
/usr/include/boost/format/feed_args.hpp:286:39:   required from ‘void boost::io::detail::distribute(boost::basic_format<Ch, Tr, Alloc>&, T) [with Ch = char; Tr = std::char_traits<char>; Alloc = std::allocator<char>; T = const boost::io::detail::put_holder<char, std::char_traits<char> >&]’
/usr/include/boost/format/feed_args.hpp:301:38:   required from ‘boost::basic_format<Ch, Tr, Alloc>& boost::io::detail::feed_impl(boost::basic_format<Ch, Tr, Alloc>&, T) [with Ch = char; Tr = std::char_traits<char>; Alloc = std::allocator<char>; T = const boost::io::detail::put_holder<char, std::char_traits<char> >&]’
/usr/include/boost/format/feed_args.hpp:313:67:   required from ‘boost::basic_format<Ch, Tr, Alloc>& boost::io::detail::feed(boost::basic_format<Ch, Tr, Alloc>&, T) [with Ch = char; Tr = std::char_traits<char>; Alloc = std::allocator<char>; T = const char* const&]’
/usr/include/boost/format/format_class.hpp:64:66:   required from ‘boost::basic_format<Ch, Tr, Alloc>& boost::basic_format<Ch, Tr, Alloc>::operator%(const T&) [with T = const char*; Ch = char; Tr = std::char_traits<char>; Alloc = std::allocator<char>]’
src/sanity.cc:538:12:   required from here
/usr/include/boost/throw_exception.hpp:162:11: error: invalid cast to abstract class type ‘boost::wrapexcept<boost::io::too_many_args>’
  162 |     throw wrapexcept<E>( e );
      |           ^~~~~~~~~~~~~~~~~~
/usr/include/boost/throw_exception.hpp:69:47: note:   because the following virtual functions are pure within ‘boost::wrapexcept<boost::io::too_many_args>’:
   69 | template<class E> struct BOOST_SYMBOL_VISIBLE wrapexcept:
      |                                               ^~~~~~~~~~
In file included from /usr/include/boost/throw_exception.hpp:23,
                 from /usr/include/boost/optional/optional.hpp:34,
                 from /usr/include/boost/optional.hpp:15,
                 from /usr/include/boost/format/internals.hpp:21,
                 from /usr/include/boost/format.hpp:38,
                 from src/sanity.cc:17:
/usr/include/boost/exception/exception.hpp:407:40: note:     ‘virtual const boost::exception_detail::clone_base* boost::exception_detail::clone_base::clone() const’
  407 |             virtual clone_base const * clone() const = 0;
      |                                        ^~~~~
/usr/include/boost/exception/exception.hpp:408:26: note:     ‘virtual void boost::exception_detail::clone_base::rethrow() const’
  408 |             virtual void rethrow() const = 0;
      |                          ^~~~~~~
In file included from src/boost/circular_buffer.hpp:19,
                 from src/sanity.cc:20:
src/boost/circular_buffer_base.hpp: In member function ‘bool boost::cb_details::cb_iterator<Buff, Traits>::less(const InternalIterator0&, const InternalIterator1&) const [with InternalIterator0 = boost::cb_details::cb_helper_pointer<boost::cb_details::cb_nonconst_traits<std::allocator<char> > >; InternalIterator1 = boost::cb_details::cb_helper_pointer<boost::cb_details::cb_nonconst_traits<std::allocator<char> > >; Buff = boost::circular_buffer<char>; Traits = boost::cb_details::cb_nonconst_traits<std::allocator<char> >]’:
src/boost/circular_buffer_base.hpp:381:13: warning: this statement may fall through [-Wimplicit-fallthrough=]
  381 |             switch (compare(rhs.m_it, m_buff->m_first)) {
      |             ^~~~~~
src/boost/circular_buffer_base.hpp:386:9: note: here
  386 |         case 0:
      |         ^~~~
src/boost/circular_buffer_base.hpp:387:13: warning: this statement may fall through [-Wimplicit-fallthrough=]
  387 |             switch (compare(rhs.m_it, m_buff->m_first)) {
      |             ^~~~~~
src/boost/circular_buffer_base.hpp:392:9: note: here
  392 |         case 1:
      |         ^~~~
make[2]: *** [Makefile:2447: src/sanity.o] Error 1
make[2]: Leaving directory '/home/micwoj92/build/src/monotone-1.1'
make[1]: *** [Makefile:2568: all-recursive] Error 1
make[1]: Leaving directory '/home/micwoj92/build/src/monotone-1.1'
make: *** [Makefile:1466: all] Error 2
==> ERROR: A failure occurred in build().
    Aborting...

wlhlm commented on 2018-04-22 08:22 (UTC)

This no longer compiles with pcre-8.42.