libcec-daemon
libcec-daemon copied to clipboard
Fail to build with boost 1.61
System is Debian unstable i386
src/accumulator.hpp: In instantiation of 'accumulator_type<T>* accumulator(T*) [with T = int]':
src/main.cpp:569:46: required from here
src/accumulator.hpp:97:12: error: invalid new-expression of abstract class type 'accumulator_type<int>'
return new accumulator_type<T>(store);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/accumulator.hpp:18:7: note: because the following virtual functions are pure within 'accumulator_type<int>':
class accumulator_type : public boost::program_options::value_semantic
^~~~~~~~~~~~~~~~
In file included from /usr/include/boost/program_options/options_description.hpp:13:0,
from /usr/include/boost/program_options.hpp:15,
from src/main.cpp:26:
/usr/include/boost/program_options/value_semantic.hpp:44:22: note: virtual bool boost::program_options::value_semantic::adjacent_tokens_only() const
virtual bool adjacent_tokens_only() const = 0;
^~~~~~~~~~~~~~~~~~~~
Makefile:452: recipe for target 'src/main.o' failed
Also fails with boost 1.63 64bit with the same error. Fixed with:
--- accumulator.hpp 2017-04-26 14:40:48.098050738 -0400 +++ accumulator.hpp.new 2017-04-26 14:40:33.082051363 -0400 @@ -54,6 +54,8 @@ /// Requiring one or more appearances is unlikely. virtual bool is_required() const { return false; }
- virtual bool adjacent_tokens_only() const override { return false; }
- /// Every appearance of the option simply increments the value // /// There should never be any tokens.