
Andrey Semashev wrote:
I'm proud to announce that I've released the fourth candidate of Boost.Log for the review.
Good to see
There were many improvements since the passed year of development. Many of them reflect the discussion of RC3. Here's a short list of major changes:
* Substantial documentation improvement. The tutorial section has been reorganized. * Removed rotating file stream. As a replacement, a new file sink has been added, which allows to achieve the same results ans adds a few more features. It is now possible to collect rotated log files in a dedicated directory. * Added a new multifile sink backend. * Added a new ordering asynchronous sink frontend. * The syslog sink backend is now supported on Windows, too. The sink no longer requires native support for POSIX API for syslog, but is able to send syslog packets to a remote server over UDP. * Added support for scoped logging. There is now a distinct log record entity, which is returned by the core as a result of filtring. * Added support for exception control. * Added a new mode of logging, called trivial logging.
Is it possible to use any features without compiling - like the trivial logging?
The more complete change log is available here:
The library with docs, tests and examples has been updated in Boost.Vault:
There's SVN repository available on SourceForge project page:
The docs are also available online here:
Comments are welcome.
I tried building this on Linux using gcc 4.2.4 with boost 1.41. I could build boost fine but not this unfortunately. Some (hopefully useful) log build output is pasted at the end of this post for your convenience. Fyi I used: ./bjam --toolset=gcc --stage-dir=. stage from boost root. ---- common.mkdir bin.v2 common.mkdir bin.v2/libs common.mkdir bin.v2/libs/log common.mkdir bin.v2/libs/log/build common.mkdir bin.v2/libs/log/build/gcc-4.2.4 common.mkdir bin.v2/libs/log/build/gcc-4.2.4/release common.mkdir bin.v2/libs/log/build/gcc-4.2.4/release/threading-multi gcc.compile.c++ bin.v2/libs/log/build/gcc-4.2.4/release/threading-multi/attribute_set.o ./boost/intrusive/detail/is_stateful_value_traits.hpp: In instantiation of ‘const int boost::intrusive::function_detector::DetectMember_InstantiationKey_to_value_ptr<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link>, const boost::log_mt_posix::basic_attribute_set<char>::implementation::node* (boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link>::*)(const boost::log_mt_posix::basic_attribute_set<char>::node_base*), const boost::log_mt_posix::basic_attribute_set<char>::implementation::node* (boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link>::*)(const boost::log_mt_posix::basic_attribute_set<char>::node_base*)const, const boost::log_mt_posix::basic_attribute_set<char>::implementation::node* (*)(const boost::log_mt_posix::basic_attribute_set<char>::node_base*)>::check’: ./boost/intrusive/detail/is_stateful_value_traits.hpp:67: instantiated from ‘const bool boost::intrusive::detail::is_stateful_value_traits<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link> >::value’ ./boost/intrusive/detail/utilities.hpp:566: instantiated from ‘const bool boost::intrusive::detail::store_cont_ptr_on_it_impl<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link>, false>::value’ ./boost/intrusive/detail/utilities.hpp:580: instantiated from ‘const bool boost::intrusive::detail::store_cont_ptr_on_it<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link>, unsigned int, false> > >::value’ ./boost/intrusive/detail/list_node.hpp:82: instantiated from ‘const bool boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link>, unsigned int, false> >, false>::store_container_ptr’ ./boost/intrusive/detail/list_node.hpp:175: instantiated from ‘boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link>, unsigned int, false> >, false>::members’ ./boost/intrusive/detail/list_node.hpp:184: instantiated from ‘boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link>, unsigned int, false> >, false>’ libs/log/src/attribute_set.cpp:358: instantiated from ‘typename boost::log_mt_posix::basic_attribute_set<CharT>::iterator boost::log_mt_posix::basic_attribute_set<CharT>::begin() [with CharT = char]’ libs/log/src/attribute_set.cpp:435: instantiated from here ./boost/intrusive/detail/is_stateful_value_traits.hpp:39: error: ‘& boost::intrusive::derivation_value_traits<T, NodeTraits, LinkMode>::to_value_ptr [with T = boost::log_mt_posix::basic_attribute_set<char>::implementation::node, NodeTraits = boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, boost::intrusive::link_mode_type LinkMode = safe_link]’ is not a valid template argument for type ‘const boost::log_mt_posix::basic_attribute_set<char>::implementation::node* (*)(const boost::log_mt_posix::basic_attribute_set<char>::node_base*)’ because function ‘static typename boost::pointer_to_other<typename NodeTraits::node_ptr, const T>::type boost::intrusive::derivation_value_traits<T, NodeTraits, LinkMode>::to_value_ptr(typename NodeTraits::const_node_ptr) [with T = boost::log_mt_posix::basic_attribute_set<char>::implementation::node, NodeTraits = boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, boost::intrusive::link_mode_type LinkMode = safe_link]’ has not external linkage ./boost/intrusive/detail/is_stateful_value_traits.hpp: In instantiation of ‘const int boost::intrusive::function_detector::DetectMember_InstantiationKey_to_node_ptr<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link>, const boost::log_mt_posix::basic_attribute_set<char>::node_base* (boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link>::*)(const boost::log_mt_posix::basic_attribute_set<char>::implementation::node&), const boost::log_mt_posix::basic_attribute_set<char>::node_base* (boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link>::*)(const boost::log_mt_posix::basic_attribute_set<char>::implementation::node&)const, const boost::log_mt_posix::basic_attribute_set<char>::node_base* (*)(const boost::log_mt_posix::basic_attribute_set<char>::implementation::node&)>::check’: ./boost/intrusive/detail/is_stateful_value_traits.hpp:67: instantiated from ‘const bool boost::intrusive::detail::is_stateful_value_traits<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link> >::value’ ./boost/intrusive/detail/utilities.hpp:566: instantiated from ‘const bool boost::intrusive::detail::store_cont_ptr_on_it_impl<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link>, false>::value’ ./boost/intrusive/detail/utilities.hpp:580: instantiated from ‘const bool boost::intrusive::detail::store_cont_ptr_on_it<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link>, unsigned int, false> > >::value’ ./boost/intrusive/detail/list_node.hpp:82: instantiated from ‘const bool boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link>, unsigned int, false> >, false>::store_container_ptr’ ./boost/intrusive/detail/list_node.hpp:175: instantiated from ‘boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link>, unsigned int, false> >, false>::members’ ./boost/intrusive/detail/list_node.hpp:184: instantiated from ‘boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link>, unsigned int, false> >, false>’ libs/log/src/attribute_set.cpp:358: instantiated from ‘typename boost::log_mt_posix::basic_attribute_set<CharT>::iterator boost::log_mt_posix::basic_attribute_set<CharT>::begin() [with CharT = char]’ libs/log/src/attribute_set.cpp:435: instantiated from here ./boost/intrusive/detail/is_stateful_value_traits.hpp:38: error: ‘& boost::intrusive::derivation_value_traits<T, NodeTraits, LinkMode>::to_node_ptr [with T = boost::log_mt_posix::basic_attribute_set<char>::implementation::node, NodeTraits = boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, boost::intrusive::link_mode_type LinkMode = safe_link]’ is not a valid template argument for type ‘const boost::log_mt_posix::basic_attribute_set<char>::node_base* (*)(const boost::log_mt_posix::basic_attribute_set<char>::implementation::node&)’ because function ‘static typename NodeTraits::const_node_ptr boost::intrusive::derivation_value_traits<T, NodeTraits, LinkMode>::to_node_ptr(typename std::iterator_traits<typename boost::pointer_to_other<typename NodeTraits::node_ptr, const T>::type>::reference) [with T = boost::log_mt_posix::basic_attribute_set<char>::implementation::node, NodeTraits = boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, boost::intrusive::link_mode_type LinkMode = safe_link]’ has not external linkage ./boost/intrusive/detail/is_stateful_value_traits.hpp: In instantiation of ‘const int boost::intrusive::function_detector::DetectMember_InstantiationKey_to_value_ptr<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link>, boost::log_mt_posix::basic_attribute_set<char>::implementation::node* (boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link>::*)(boost::log_mt_posix::basic_attribute_set<char>::node_base*), boost::log_mt_posix::basic_attribute_set<char>::implementation::node* (boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link>::*)(boost::log_mt_posix::basic_attribute_set<char>::node_base*)const, boost::log_mt_posix::basic_attribute_set<char>::implementation::node* (*)(boost::log_mt_posix::basic_attribute_set<char>::node_base*)>::check’: ./boost/intrusive/detail/is_stateful_value_traits.hpp:67: instantiated from ‘const bool boost::intrusive::detail::is_stateful_value_traits<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link> >::value’ ./boost/intrusive/detail/utilities.hpp:566: instantiated from ‘const bool boost::intrusive::detail::store_cont_ptr_on_it_impl<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link>, false>::value’ ./boost/intrusive/detail/utilities.hpp:580: instantiated from ‘const bool boost::intrusive::detail::store_cont_ptr_on_it<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link>, unsigned int, false> > >::value’ ./boost/intrusive/detail/list_node.hpp:82: instantiated from ‘const bool boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link>, unsigned int, false> >, false>::store_container_ptr’ ./boost/intrusive/detail/list_node.hpp:175: instantiated from ‘boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link>, unsigned int, false> >, false>::members’ ./boost/intrusive/detail/list_node.hpp:184: instantiated from ‘boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link>, unsigned int, false> >, false>’ libs/log/src/attribute_set.cpp:358: instantiated from ‘typename boost::log_mt_posix::basic_attribute_set<CharT>::iterator boost::log_mt_posix::basic_attribute_set<CharT>::begin() [with CharT = char]’ libs/log/src/attribute_set.cpp:435: instantiated from here ./boost/intrusive/detail/is_stateful_value_traits.hpp:39: error: ‘& boost::intrusive::derivation_value_traits<T, NodeTraits, LinkMode>::to_value_ptr [with T = boost::log_mt_posix::basic_attribute_set<char>::implementation::node, NodeTraits = boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, boost::intrusive::link_mode_type LinkMode = safe_link]’ is not a valid template argument for type ‘boost::log_mt_posix::basic_attribute_set<char>::implementation::node* (*)(boost::log_mt_posix::basic_attribute_set<char>::node_base*)’ because function ‘static typename boost::pointer_to_other<typename NodeTraits::node_ptr, T>::type boost::intrusive::derivation_value_traits<T, NodeTraits, LinkMode>::to_value_ptr(typename NodeTraits::node_ptr) [with T = boost::log_mt_posix::basic_attribute_set<char>::implementation::node, NodeTraits = boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, boost::intrusive::link_mode_type LinkMode = safe_link]’ has not external linkage ./boost/intrusive/detail/is_stateful_value_traits.hpp: In instantiation of ‘const int boost::intrusive::function_detector::DetectMember_InstantiationKey_to_node_ptr<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link>, boost::log_mt_posix::basic_attribute_set<char>::node_base* (boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link>::*)(boost::log_mt_posix::basic_attribute_set<char>::implementation::node&), boost::log_mt_posix::basic_attribute_set<char>::node_base* (boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link>::*)(boost::log_mt_posix::basic_attribute_set<char>::implementation::node&)const, boost::log_mt_posix::basic_attribute_set<char>::node_base* (*)(boost::log_mt_posix::basic_attribute_set<char>::implementation::node&)>::check’: ./boost/intrusive/detail/is_stateful_value_traits.hpp:67: instantiated from ‘const bool boost::intrusive::detail::is_stateful_value_traits<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link> >::value’ ./boost/intrusive/detail/utilities.hpp:566: instantiated from ‘const bool boost::intrusive::detail::store_cont_ptr_on_it_impl<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link>, false>::value’ ./boost/intrusive/detail/utilities.hpp:580: instantiated from ‘const bool boost::intrusive::detail::store_cont_ptr_on_it<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link>, unsigned int, false> > >::value’ ./boost/intrusive/detail/list_node.hpp:82: instantiated from ‘const bool boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link>, unsigned int, false> >, false>::store_container_ptr’ ./boost/intrusive/detail/list_node.hpp:175: instantiated from ‘boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link>, unsigned int, false> >, false>::members’ ./boost/intrusive/detail/list_node.hpp:184: instantiated from ‘boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, safe_link>, unsigned int, false> >, false>’ libs/log/src/attribute_set.cpp:358: instantiated from ‘typename boost::log_mt_posix::basic_attribute_set<CharT>::iterator boost::log_mt_posix::basic_attribute_set<CharT>::begin() [with CharT = char]’ libs/log/src/attribute_set.cpp:435: instantiated from here ./boost/intrusive/detail/is_stateful_value_traits.hpp:38: error: ‘& boost::intrusive::derivation_value_traits<T, NodeTraits, LinkMode>::to_node_ptr [with T = boost::log_mt_posix::basic_attribute_set<char>::implementation::node, NodeTraits = boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, boost::intrusive::link_mode_type LinkMode = safe_link]’ is not a valid template argument for type ‘boost::log_mt_posix::basic_attribute_set<char>::node_base* (*)(boost::log_mt_posix::basic_attribute_set<char>::implementation::node&)’ because function ‘static typename NodeTraits::node_ptr boost::intrusive::derivation_value_traits<T, NodeTraits, LinkMode>::to_node_ptr(typename std::iterator_traits<typename boost::pointer_to_other<typename NodeTraits::node_ptr, T>::type>::reference) [with T = boost::log_mt_posix::basic_attribute_set<char>::implementation::node, NodeTraits = boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<char>::implementation::node, boost::log_mt_posix::basic_attribute_set<char>::node_base>::node_traits, boost::intrusive::link_mode_type LinkMode = safe_link]’ has not external linkage ./boost/intrusive/detail/is_stateful_value_traits.hpp: In instantiation of ‘const int boost::intrusive::function_detector::DetectMember_InstantiationKey_to_value_ptr<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link>, const boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node* (boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link>::*)(const boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base*), const boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node* (boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link>::*)(const boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base*)const, const boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node* (*)(const boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base*)>::check’: ./boost/intrusive/detail/is_stateful_value_traits.hpp:67: instantiated from ‘const bool boost::intrusive::detail::is_stateful_value_traits<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link> >::value’ ./boost/intrusive/detail/utilities.hpp:566: instantiated from ‘const bool boost::intrusive::detail::store_cont_ptr_on_it_impl<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link>, false>::value’ ./boost/intrusive/detail/utilities.hpp:580: instantiated from ‘const bool boost::intrusive::detail::store_cont_ptr_on_it<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link>, unsigned int, false> > >::value’ ./boost/intrusive/detail/list_node.hpp:82: instantiated from ‘const bool boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link>, unsigned int, false> >, false>::store_container_ptr’ ./boost/intrusive/detail/list_node.hpp:175: instantiated from ‘boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link>, unsigned int, false> >, false>::members’ ./boost/intrusive/detail/list_node.hpp:184: instantiated from ‘boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link>, unsigned int, false> >, false>’ libs/log/src/attribute_set.cpp:358: instantiated from ‘typename boost::log_mt_posix::basic_attribute_set<CharT>::iterator boost::log_mt_posix::basic_attribute_set<CharT>::begin() [with CharT = wchar_t]’ libs/log/src/attribute_set.cpp:438: instantiated from here ./boost/intrusive/detail/is_stateful_value_traits.hpp:39: error: ‘& boost::intrusive::derivation_value_traits<T, NodeTraits, LinkMode>::to_value_ptr [with T = boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, NodeTraits = boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, boost::intrusive::link_mode_type LinkMode = safe_link]’ is not a valid template argument for type ‘const boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node* (*)(const boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base*)’ because function ‘static typename boost::pointer_to_other<typename NodeTraits::node_ptr, const T>::type boost::intrusive::derivation_value_traits<T, NodeTraits, LinkMode>::to_value_ptr(typename NodeTraits::const_node_ptr) [with T = boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, NodeTraits = boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, boost::intrusive::link_mode_type LinkMode = safe_link]’ has not external linkage ./boost/intrusive/detail/is_stateful_value_traits.hpp: In instantiation of ‘const int boost::intrusive::function_detector::DetectMember_InstantiationKey_to_node_ptr<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link>, const boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base* (boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link>::*)(const boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node&), const boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base* (boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link>::*)(const boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node&)const, const boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base* (*)(const boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node&)>::check’: ./boost/intrusive/detail/is_stateful_value_traits.hpp:67: instantiated from ‘const bool boost::intrusive::detail::is_stateful_value_traits<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link> >::value’ ./boost/intrusive/detail/utilities.hpp:566: instantiated from ‘const bool boost::intrusive::detail::store_cont_ptr_on_it_impl<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link>, false>::value’ ./boost/intrusive/detail/utilities.hpp:580: instantiated from ‘const bool boost::intrusive::detail::store_cont_ptr_on_it<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link>, unsigned int, false> > >::value’ ./boost/intrusive/detail/list_node.hpp:82: instantiated from ‘const bool boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link>, unsigned int, false> >, false>::store_container_ptr’ ./boost/intrusive/detail/list_node.hpp:175: instantiated from ‘boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link>, unsigned int, false> >, false>::members’ ./boost/intrusive/detail/list_node.hpp:184: instantiated from ‘boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link>, unsigned int, false> >, false>’ libs/log/src/attribute_set.cpp:358: instantiated from ‘typename boost::log_mt_posix::basic_attribute_set<CharT>::iterator boost::log_mt_posix::basic_attribute_set<CharT>::begin() [with CharT = wchar_t]’ libs/log/src/attribute_set.cpp:438: instantiated from here ./boost/intrusive/detail/is_stateful_value_traits.hpp:38: error: ‘& boost::intrusive::derivation_value_traits<T, NodeTraits, LinkMode>::to_node_ptr [with T = boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, NodeTraits = boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, boost::intrusive::link_mode_type LinkMode = safe_link]’ is not a valid template argument for type ‘const boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base* (*)(const boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node&)’ because function ‘static typename NodeTraits::const_node_ptr boost::intrusive::derivation_value_traits<T, NodeTraits, LinkMode>::to_node_ptr(typename std::iterator_traits<typename boost::pointer_to_other<typename NodeTraits::node_ptr, const T>::type>::reference) [with T = boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, NodeTraits = boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, boost::intrusive::link_mode_type LinkMode = safe_link]’ has not external linkage ./boost/intrusive/detail/is_stateful_value_traits.hpp: In instantiation of ‘const int boost::intrusive::function_detector::DetectMember_InstantiationKey_to_value_ptr<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link>, boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node* (boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link>::*)(boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base*), boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node* (boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link>::*)(boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base*)const, boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node* (*)(boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base*)>::check’: ./boost/intrusive/detail/is_stateful_value_traits.hpp:67: instantiated from ‘const bool boost::intrusive::detail::is_stateful_value_traits<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link> >::value’ ./boost/intrusive/detail/utilities.hpp:566: instantiated from ‘const bool boost::intrusive::detail::store_cont_ptr_on_it_impl<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link>, false>::value’ ./boost/intrusive/detail/utilities.hpp:580: instantiated from ‘const bool boost::intrusive::detail::store_cont_ptr_on_it<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link>, unsigned int, false> > >::value’ ./boost/intrusive/detail/list_node.hpp:82: instantiated from ‘const bool boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link>, unsigned int, false> >, false>::store_container_ptr’ ./boost/intrusive/detail/list_node.hpp:175: instantiated from ‘boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link>, unsigned int, false> >, false>::members’ ./boost/intrusive/detail/list_node.hpp:184: instantiated from ‘boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link>, unsigned int, false> >, false>’ libs/log/src/attribute_set.cpp:358: instantiated from ‘typename boost::log_mt_posix::basic_attribute_set<CharT>::iterator boost::log_mt_posix::basic_attribute_set<CharT>::begin() [with CharT = wchar_t]’ libs/log/src/attribute_set.cpp:438: instantiated from here ./boost/intrusive/detail/is_stateful_value_traits.hpp:39: error: ‘& boost::intrusive::derivation_value_traits<T, NodeTraits, LinkMode>::to_value_ptr [with T = boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, NodeTraits = boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, boost::intrusive::link_mode_type LinkMode = safe_link]’ is not a valid template argument for type ‘boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node* (*)(boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base*)’ because function ‘static typename boost::pointer_to_other<typename NodeTraits::node_ptr, T>::type boost::intrusive::derivation_value_traits<T, NodeTraits, LinkMode>::to_value_ptr(typename NodeTraits::node_ptr) [with T = boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, NodeTraits = boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, boost::intrusive::link_mode_type LinkMode = safe_link]’ has not external linkage ./boost/intrusive/detail/is_stateful_value_traits.hpp: In instantiation of ‘const int boost::intrusive::function_detector::DetectMember_InstantiationKey_to_node_ptr<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link>, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base* (boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link>::*)(boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node&), boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base* (boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link>::*)(boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node&)const, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base* (*)(boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node&)>::check’: ./boost/intrusive/detail/is_stateful_value_traits.hpp:67: instantiated from ‘const bool boost::intrusive::detail::is_stateful_value_traits<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link> >::value’ ./boost/intrusive/detail/utilities.hpp:566: instantiated from ‘const bool boost::intrusive::detail::store_cont_ptr_on_it_impl<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link>, false>::value’ ./boost/intrusive/detail/utilities.hpp:580: instantiated from ‘const bool boost::intrusive::detail::store_cont_ptr_on_it<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link>, unsigned int, false> > >::value’ ./boost/intrusive/detail/list_node.hpp:82: instantiated from ‘const bool boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link>, unsigned int, false> >, false>::store_container_ptr’ ./boost/intrusive/detail/list_node.hpp:175: instantiated from ‘boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link>, unsigned int, false> >, false>::members’ ./boost/intrusive/detail/list_node.hpp:184: instantiated from ‘boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::derivation_value_traits<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, safe_link>, unsigned int, false> >, false>’ libs/log/src/attribute_set.cpp:358: instantiated from ‘typename boost::log_mt_posix::basic_attribute_set<CharT>::iterator boost::log_mt_posix::basic_attribute_set<CharT>::begin() [with CharT = wchar_t]’ libs/log/src/attribute_set.cpp:438: instantiated from here ./boost/intrusive/detail/is_stateful_value_traits.hpp:38: error: ‘& boost::intrusive::derivation_value_traits<T, NodeTraits, LinkMode>::to_node_ptr [with T = boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, NodeTraits = boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, boost::intrusive::link_mode_type LinkMode = safe_link]’ is not a valid template argument for type ‘boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base* (*)(boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node&)’ because function ‘static typename NodeTraits::node_ptr boost::intrusive::derivation_value_traits<T, NodeTraits, LinkMode>::to_node_ptr(typename std::iterator_traits<typename boost::pointer_to_other<typename NodeTraits::node_ptr, T>::type>::reference) [with T = boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, NodeTraits = boost::log_mt_posix::<unnamed>::ordered_list<boost::log_mt_posix::basic_attribute_set<wchar_t>::implementation::node, boost::log_mt_posix::basic_attribute_set<wchar_t>::node_base>::node_traits, boost::intrusive::link_mode_type LinkMode = safe_link]’ has not external linkage "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread -fPIC -fno-strict-aliasing -DBOOST_ALL_NO_LIB=1 -DBOOST_DATE_TIME_DYN_LINK=1 -DBOOST_FILESYSTEM_DYN_LINK=1 -DBOOST_LOG_BUILDING_THE_LIB=1 -DBOOST_LOG_DLL -DBOOST_LOG_USE_NATIVE_SYSLOG=1 -DBOOST_SYSTEM_DYN_LINK=1 -DBOOST_THREAD_POSIX -DBOOST_THREAD_USE_DLL=1 -DDATE_TIME_INLINE -DNDEBUG -I"." -c -o "bin.v2/libs/log/build/gcc-4.2.4/release/threading-multi/attribute_set.o" "libs/log/src/attribute_set.cpp" ...failed gcc.compile.c++ bin.v2/libs/log/build/gcc-4.2.4/release/threading-multi/attribute_set.o... gcc.compile.c++ bin.v2/libs/log/build/gcc-4.2.4/release/threading-multi/attribute_values_view.o gcc.compile.c++ bin.v2/libs/log/build/gcc-4.2.4/release/threading-multi/slim_string.o gcc.compile.c++ bin.v2/libs/log/build/gcc-4.2.4/release/threading-multi/code_conversion.o gcc.compile.c++ bin.v2/libs/log/build/gcc-4.2.4/release/threading-multi/core.o gcc.compile.c++ bin.v2/libs/log/build/gcc-4.2.4/release/threading-multi/stream_provider.o gcc.compile.c++ bin.v2/libs/log/build/gcc-4.2.4/release/threading-multi/severity_level.o gcc.compile.c++ bin.v2/libs/log/build/gcc-4.2.4/release/threading-multi/global_logger_storage.o gcc.compile.c++ bin.v2/libs/log/build/gcc-4.2.4/release/threading-multi/named_scope.o gcc.compile.c++ bin.v2/libs/log/build/gcc-4.2.4/release/threading-multi/process_id.o gcc.compile.c++ bin.v2/libs/log/build/gcc-4.2.4/release/threading-multi/timer.o gcc.compile.c++ bin.v2/libs/log/build/gcc-4.2.4/release/threading-multi/exceptions.o gcc.compile.c++ bin.v2/libs/log/build/gcc-4.2.4/release/threading-multi/sink_frontends.o gcc.compile.c++ bin.v2/libs/log/build/gcc-4.2.4/release/threading-multi/text_ostream_backend.o gcc.compile.c++ bin.v2/libs/log/build/gcc-4.2.4/release/threading-multi/text_file_backend.o ./boost/intrusive/detail/is_stateful_value_traits.hpp: In instantiation of ‘const int boost::intrusive::function_detector::DetectMember_InstantiationKey_to_value_ptr<boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1>, const boost::log_mt_posix::sinks::<unnamed>::file_collector* (boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1>::*)(const boost::intrusive::list_node<void*>*), const boost::log_mt_posix::sinks::<unnamed>::file_collector* (boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1>::*)(const boost::intrusive::list_node<void*>*)const, const boost::log_mt_posix::sinks::<unnamed>::file_collector* (*)(const boost::intrusive::list_node<void*>*)>::check’: ./boost/intrusive/detail/is_stateful_value_traits.hpp:67: instantiated from ‘const bool boost::intrusive::detail::is_stateful_value_traits<boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1> >::value’ ./boost/intrusive/detail/utilities.hpp:566: instantiated from ‘const bool boost::intrusive::detail::store_cont_ptr_on_it_impl<boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1>, false>::value’ ./boost/intrusive/detail/utilities.hpp:580: instantiated from ‘const bool boost::intrusive::detail::store_cont_ptr_on_it<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1>, unsigned int, true> > >::value’ ./boost/intrusive/detail/list_node.hpp:82: instantiated from ‘const bool boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1>, unsigned int, true> >, false>::store_container_ptr’ ./boost/intrusive/detail/list_node.hpp:175: instantiated from ‘boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1>, unsigned int, true> >, false>::members’ ./boost/intrusive/detail/list_node.hpp:184: instantiated from ‘boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1>, unsigned int, true> >, false>’ libs/log/src/text_file_backend.cpp:724: instantiated from here ./boost/intrusive/detail/is_stateful_value_traits.hpp:39: error: ‘& boost::intrusive::detail::base_hook_traits<T, NodeTraits, LinkMode, Tag, HookType>::to_value_ptr [with T = boost::log_mt_posix::sinks::<unnamed>::file_collector, NodeTraits = boost::intrusive::list_node_traits<void*>, boost::intrusive::link_mode_type LinkMode = safe_link, Tag = boost::intrusive::default_tag, int HookType = 1]’ is not a valid template argument for type ‘const boost::log_mt_posix::sinks::<unnamed>::file_collector* (*)(const boost::intrusive::list_node<void*>*)’ because function ‘static typename boost::pointer_to_other<typename NodeTraits::node_ptr, const T>::type boost::intrusive::detail::base_hook_traits<T, NodeTraits, LinkMode, Tag, HookType>::to_value_ptr(typename NodeTraits::const_node_ptr) [with T = boost::log_mt_posix::sinks::<unnamed>::file_collector, NodeTraits = boost::intrusive::list_node_traits<void*>, boost::intrusive::link_mode_type LinkMode = safe_link, Tag = boost::intrusive::default_tag, int HookType = 1]’ has not external linkage ./boost/intrusive/detail/is_stateful_value_traits.hpp: In instantiation of ‘const int boost::intrusive::function_detector::DetectMember_InstantiationKey_to_node_ptr<boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1>, const boost::intrusive::list_node<void*>* (boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1>::*)(const boost::log_mt_posix::sinks::<unnamed>::file_collector&), const boost::intrusive::list_node<void*>* (boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1>::*)(const boost::log_mt_posix::sinks::<unnamed>::file_collector&)const, const boost::intrusive::list_node<void*>* (*)(const boost::log_mt_posix::sinks::<unnamed>::file_collector&)>::check’: ./boost/intrusive/detail/is_stateful_value_traits.hpp:67: instantiated from ‘const bool boost::intrusive::detail::is_stateful_value_traits<boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1> >::value’ ./boost/intrusive/detail/utilities.hpp:566: instantiated from ‘const bool boost::intrusive::detail::store_cont_ptr_on_it_impl<boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1>, false>::value’ ./boost/intrusive/detail/utilities.hpp:580: instantiated from ‘const bool boost::intrusive::detail::store_cont_ptr_on_it<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1>, unsigned int, true> > >::value’ ./boost/intrusive/detail/list_node.hpp:82: instantiated from ‘const bool boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1>, unsigned int, true> >, false>::store_container_ptr’ ./boost/intrusive/detail/list_node.hpp:175: instantiated from ‘boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1>, unsigned int, true> >, false>::members’ ./boost/intrusive/detail/list_node.hpp:184: instantiated from ‘boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1>, unsigned int, true> >, false>’ libs/log/src/text_file_backend.cpp:724: instantiated from here ./boost/intrusive/detail/is_stateful_value_traits.hpp:38: error: ‘& boost::intrusive::detail::base_hook_traits<T, NodeTraits, LinkMode, Tag, HookType>::to_node_ptr [with T = boost::log_mt_posix::sinks::<unnamed>::file_collector, NodeTraits = boost::intrusive::list_node_traits<void*>, boost::intrusive::link_mode_type LinkMode = safe_link, Tag = boost::intrusive::default_tag, int HookType = 1]’ is not a valid template argument for type ‘const boost::intrusive::list_node<void*>* (*)(const boost::log_mt_posix::sinks::<unnamed>::file_collector&)’ because function ‘static typename NodeTraits::const_node_ptr boost::intrusive::detail::base_hook_traits<T, NodeTraits, LinkMode, Tag, HookType>::to_node_ptr(typename std::iterator_traits<typename boost::pointer_to_other<typename NodeTraits::node_ptr, const T>::type>::reference) [with T = boost::log_mt_posix::sinks::<unnamed>::file_collector, NodeTraits = boost::intrusive::list_node_traits<void*>, boost::intrusive::link_mode_type LinkMode = safe_link, Tag = boost::intrusive::default_tag, int HookType = 1]’ has not external linkage ./boost/intrusive/detail/is_stateful_value_traits.hpp: In instantiation of ‘const int boost::intrusive::function_detector::DetectMember_InstantiationKey_to_value_ptr<boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1>, boost::log_mt_posix::sinks::<unnamed>::file_collector* (boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1>::*)(boost::intrusive::list_node<void*>*), boost::log_mt_posix::sinks::<unnamed>::file_collector* (boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1>::*)(boost::intrusive::list_node<void*>*)const, boost::log_mt_posix::sinks::<unnamed>::file_collector* (*)(boost::intrusive::list_node<void*>*)>::check’: ./boost/intrusive/detail/is_stateful_value_traits.hpp:67: instantiated from ‘const bool boost::intrusive::detail::is_stateful_value_traits<boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1> >::value’ ./boost/intrusive/detail/utilities.hpp:566: instantiated from ‘const bool boost::intrusive::detail::store_cont_ptr_on_it_impl<boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1>, false>::value’ ./boost/intrusive/detail/utilities.hpp:580: instantiated from ‘const bool boost::intrusive::detail::store_cont_ptr_on_it<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1>, unsigned int, true> > >::value’ ./boost/intrusive/detail/list_node.hpp:82: instantiated from ‘const bool boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1>, unsigned int, true> >, false>::store_container_ptr’ ./boost/intrusive/detail/list_node.hpp:175: instantiated from ‘boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1>, unsigned int, true> >, false>::members’ ./boost/intrusive/detail/list_node.hpp:184: instantiated from ‘boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1>, unsigned int, true> >, false>’ libs/log/src/text_file_backend.cpp:724: instantiated from here ./boost/intrusive/detail/is_stateful_value_traits.hpp:39: error: ‘& boost::intrusive::detail::base_hook_traits<T, NodeTraits, LinkMode, Tag, HookType>::to_value_ptr [with T = boost::log_mt_posix::sinks::<unnamed>::file_collector, NodeTraits = boost::intrusive::list_node_traits<void*>, boost::intrusive::link_mode_type LinkMode = safe_link, Tag = boost::intrusive::default_tag, int HookType = 1]’ is not a valid template argument for type ‘boost::log_mt_posix::sinks::<unnamed>::file_collector* (*)(boost::intrusive::list_node<void*>*)’ because function ‘static typename boost::pointer_to_other<typename NodeTraits::node_ptr, T>::type boost::intrusive::detail::base_hook_traits<T, NodeTraits, LinkMode, Tag, HookType>::to_value_ptr(typename NodeTraits::node_ptr) [with T = boost::log_mt_posix::sinks::<unnamed>::file_collector, NodeTraits = boost::intrusive::list_node_traits<void*>, boost::intrusive::link_mode_type LinkMode = safe_link, Tag = boost::intrusive::default_tag, int HookType = 1]’ has not external linkage ./boost/intrusive/detail/is_stateful_value_traits.hpp: In instantiation of ‘const int boost::intrusive::function_detector::DetectMember_InstantiationKey_to_node_ptr<boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1>, boost::intrusive::list_node<void*>* (boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1>::*)(boost::log_mt_posix::sinks::<unnamed>::file_collector&), boost::intrusive::list_node<void*>* (boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1>::*)(boost::log_mt_posix::sinks::<unnamed>::file_collector&)const, boost::intrusive::list_node<void*>* (*)(boost::log_mt_posix::sinks::<unnamed>::file_collector&)>::check’: ./boost/intrusive/detail/is_stateful_value_traits.hpp:67: instantiated from ‘const bool boost::intrusive::detail::is_stateful_value_traits<boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1> >::value’ ./boost/intrusive/detail/utilities.hpp:566: instantiated from ‘const bool boost::intrusive::detail::store_cont_ptr_on_it_impl<boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1>, false>::value’ ./boost/intrusive/detail/utilities.hpp:580: instantiated from ‘const bool boost::intrusive::detail::store_cont_ptr_on_it<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1>, unsigned int, true> > >::value’ ./boost/intrusive/detail/list_node.hpp:82: instantiated from ‘const bool boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1>, unsigned int, true> >, false>::store_container_ptr’ ./boost/intrusive/detail/list_node.hpp:175: instantiated from ‘boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1>, unsigned int, true> >, false>::members’ ./boost/intrusive/detail/list_node.hpp:184: instantiated from ‘boost::intrusive::list_iterator<boost::intrusive::list_impl<boost::intrusive::listopt<boost::intrusive::detail::base_hook_traits<boost::log_mt_posix::sinks::<unnamed>::file_collector, boost::intrusive::list_node_traits<void*>, safe_link, boost::intrusive::default_tag, 1>, unsigned int, true> >, false>’ libs/log/src/text_file_backend.cpp:724: instantiated from here ./boost/intrusive/detail/is_stateful_value_traits.hpp:38: error: ‘& boost::intrusive::detail::base_hook_traits<T, NodeTraits, LinkMode, Tag, HookType>::to_node_ptr [with T = boost::log_mt_posix::sinks::<unnamed>::file_collector, NodeTraits = boost::intrusive::list_node_traits<void*>, boost::intrusive::link_mode_type LinkMode = safe_link, Tag = boost::intrusive::default_tag, int HookType = 1]’ is not a valid template argument for type ‘boost::intrusive::list_node<void*>* (*)(boost::log_mt_posix::sinks::<unnamed>::file_collector&)’ because function ‘static typename NodeTraits::node_ptr boost::intrusive::detail::base_hook_traits<T, NodeTraits, LinkMode, Tag, HookType>::to_node_ptr(typename std::iterator_traits<typename boost::pointer_to_other<typename NodeTraits::node_ptr, T>::type>::reference) [with T = boost::log_mt_posix::sinks::<unnamed>::file_collector, NodeTraits = boost::intrusive::list_node_traits<void*>, boost::intrusive::link_mode_type LinkMode = safe_link, Tag = boost::intrusive::default_tag, int HookType = 1]’ has not external linkage ./boost/system/error_code.hpp:208: warning: ‘boost::system::system_category’ defined but not used ./boost/system/error_code.hpp:209: warning: ‘boost::system::generic_category’ defined but not used ./boost/system/error_code.hpp:214: warning: ‘boost::system::posix_category’ defined but not used ./boost/system/error_code.hpp:215: warning: ‘boost::system::errno_ecat’ defined but not used ./boost/system/error_code.hpp:216: warning: ‘boost::system::native_ecat’ defined but not used "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread -fPIC -fno-strict-aliasing -DBOOST_ALL_NO_LIB=1 -DBOOST_DATE_TIME_DYN_LINK=1 -DBOOST_FILESYSTEM_DYN_LINK=1 -DBOOST_LOG_BUILDING_THE_LIB=1 -DBOOST_LOG_DLL -DBOOST_LOG_USE_NATIVE_SYSLOG=1 -DBOOST_SYSTEM_DYN_LINK=1 -DBOOST_THREAD_POSIX -DBOOST_THREAD_USE_DLL=1 -DDATE_TIME_INLINE -DNDEBUG -I"." -c -o "bin.v2/libs/log/build/gcc-4.2.4/release/threading-multi/text_file_backend.o" "libs/log/src/text_file_backend.cpp" ...failed gcc.compile.c++ bin.v2/libs/log/build/gcc-4.2.4/release/threading-multi/text_file_backend.o... gcc.compile.c++ bin.v2/libs/log/build/gcc-4.2.4/release/threading-multi/syslog_backend.o gcc.compile.c++ bin.v2/libs/log/build/gcc-4.2.4/release/threading-multi/thread_specific.o gcc.compile.c++ bin.v2/libs/log/build/gcc-4.2.4/release/threading-multi/trivial.o