In file included from /usr/include/boost/ptr_container/ptr_list.hpp:19, from main.cpp:1: /usr/include/boost/ptr_container/ptr_sequence_adapter.hpp: In member function ‘void boost::ptr_sequence_adapter::push_back(typename boost::ptr_container_detail::reversible_ptr_container, CloneAllocator>::value_type) [with T = const BASE, VoidPtrSeq = std::list >, CloneAllocator = boost::heap_clone_allocator]’: main.cpp:41: instantiated from here /usr/include/boost/ptr_container/ptr_sequence_adapter.hpp:249: error: invalid conversion from ‘const void*’ to ‘void*’ /usr/include/boost/ptr_container/ptr_sequence_adapter.hpp:249: error: initializing argument 1 of ‘void std::list<_Tp, _Alloc>::push_back(const _Tp&) [with _Tp = void*, _Alloc = std::allocator]’