* installing *source* package ‘parsermd’ ...
** package ‘parsermd’ successfully unpacked and MD5 sums checked
** using staged installation
** libs
using C++ compiler: ‘g++-14 (GCC) 14.2.0’
using C++17
make[1]: Entering directory '/data/gannet/ripley/R/packages/tests-devel/parsermd/src'
g++-14 -std=gnu++17 -I"/data/gannet/ripley/R/R-devel/include" -DNDEBUG  -I'/data/gannet/ripley/R/test-dev/Rcpp/include' -I'/data/gannet/ripley/R/test-dev/BH/include' -I/usr/local/include -DC99_INLINE_SEMANTICS=0   -fpic  -g -O2 -Wall -pedantic -mtune=native -Wno-ignored-attributes -Wno-parentheses -Wp,-D_FORTIFY_SOURCE=3 -fexceptions -fstack-protector-strong -fstack-clash-protection -fcf-protection  -DR_NO_REMAP -c RcppExports.cpp -o RcppExports.o
g++-14 -std=gnu++17 -I"/data/gannet/ripley/R/R-devel/include" -DNDEBUG  -I'/data/gannet/ripley/R/test-dev/Rcpp/include' -I'/data/gannet/ripley/R/test-dev/BH/include' -I/usr/local/include -DC99_INLINE_SEMANTICS=0   -fpic  -g -O2 -Wall -pedantic -mtune=native -Wno-ignored-attributes -Wno-parentheses -Wp,-D_FORTIFY_SOURCE=3 -fexceptions -fstack-protector-strong -fstack-clash-protection -fcf-protection  -DR_NO_REMAP -c parser.cpp -o parser.o
g++-14 -std=gnu++17 -I"/data/gannet/ripley/R/R-devel/include" -DNDEBUG  -I'/data/gannet/ripley/R/test-dev/Rcpp/include' -I'/data/gannet/ripley/R/test-dev/BH/include' -I/usr/local/include -DC99_INLINE_SEMANTICS=0   -fpic  -g -O2 -Wall -pedantic -mtune=native -Wno-ignored-attributes -Wno-parentheses -Wp,-D_FORTIFY_SOURCE=3 -fexceptions -fstack-protector-strong -fstack-clash-protection -fcf-protection  -DR_NO_REMAP -c parser_rcpp_wrap.cpp -o parser_rcpp_wrap.o
In file included from /data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/shared_ptr.hpp:17,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/shared_ptr.hpp:17,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/format/alt_sstream.hpp:22,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/format/internals.hpp:24,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/format.hpp:38,
                 from parser.cpp:10:
/data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/detail/shared_count.hpp:326:33: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  326 |     explicit shared_count( std::auto_ptr<Y> & r ): pi_( new sp_counted_impl_p<Y>( r.get() ) )
      |                                 ^~~~~~~~
In file included from /usr/local/gcc14/include/c++/14.2.0/memory:78,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/auxiliary/any_parser.hpp:19,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/auxiliary.hpp:11,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3.hpp:62,
                 from parse_rmd.h:5,
                 from parser.cpp:6:
/usr/local/gcc14/include/c++/14.2.0/bits/unique_ptr.h:59:28: note: declared here
   59 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/shared_ptr.hpp:354:31: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  354 |     explicit shared_ptr( std::auto_ptr<Y> & r ): px(r.get()), pn()
      |                               ^~~~~~~~
/usr/local/gcc14/include/c++/14.2.0/bits/unique_ptr.h:59:28: note: declared here
   59 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/shared_ptr.hpp:365:22: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  365 |     shared_ptr( std::auto_ptr<Y> && r ): px(r.get()), pn()
      |                      ^~~~~~~~
/usr/local/gcc14/include/c++/14.2.0/bits/unique_ptr.h:59:28: note: declared here
   59 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/shared_ptr.hpp:423:34: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  423 |     shared_ptr & operator=( std::auto_ptr<Y> & r )
      |                                  ^~~~~~~~
/usr/local/gcc14/include/c++/14.2.0/bits/unique_ptr.h:59:28: note: declared here
   59 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/shared_ptr.hpp:430:34: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  430 |     shared_ptr & operator=( std::auto_ptr<Y> && r )
      |                                  ^~~~~~~~
/usr/local/gcc14/include/c++/14.2.0/bits/unique_ptr.h:59:28: note: declared here
   59 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/shared_ptr.hpp: In member function 'boost::shared_ptr<T>& boost::shared_ptr<T>::operator=(std::auto_ptr<_Up>&&)':
/data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/shared_ptr.hpp:432:38: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  432 |         this_type( static_cast< std::auto_ptr<Y> && >( r ) ).swap( *this );
      |                                      ^~~~~~~~
/usr/local/gcc14/include/c++/14.2.0/bits/unique_ptr.h:59:28: note: declared here
   59 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
In file included from /data/gannet/ripley/R/test-dev/BH/include/boost/concept/assert.hpp:35,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:20,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:19,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/range/size_type.hpp:20,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/range/size.hpp:21,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/range/functions.hpp:20,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/range/iterator_range_core.hpp:38,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/directive/raw.hpp:14,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/directive.hpp:20,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3.hpp:64:
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::Assignable<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:145:5:   required from 'struct boost::Assignable<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:40:3:   required from 'struct boost_concepts::ReadableIterator<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
   40 |   BOOST_concept(ReadableIterator,(Iterator))
      |                 ^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:40:3:   required from 'struct boost_concepts::ReadableIteratorConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
   40 |   BOOST_concept(ReadableIterator,(Iterator))
      |                 ^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost_concepts::ReadableIteratorConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost_concepts::ReadableIteratorConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost_concepts::ReadableIteratorConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost_concepts::ReadableIteratorConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:30:9:   required from 'bool boost::spirit::x3::parse_main(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:48:26:   required from 'bool boost::spirit::x3::parse(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   48 |         return parse_main(first, last, p, attr);
      |                ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
parser.cpp:34:21:   required from 'void parse_str(const std::string&, bool, const Parser&, Attribute&, bool) [with Parser = boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::optional<boost::spirit::x3::sequence<boost::spirit::x3::rule<client::parser::yaml_class, client::ast::yaml>, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> > >, boost::spirit::x3::kleene<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::alternative<boost::spirit::x3::alternative<boost::spirit::x3::rule<client::parser::chunk_class, client::ast::chunk>, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::action<boost::spirit::x3::repeat_directive<boost::spirit::x3::literal_char<boost::spirit::char_encoding::standard, char>, boost::spirit::x3::detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, boost::spirit::x3::optional<boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::action<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> >, client::parser::<lambda(auto:12&)> > >, boost::spirit::x3::eol_parser>, client::ast::heading, false, true> >, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::plus<boost::spirit::x3::sequence<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::not_predicate<boost::spirit::x3::alternative<boost::spirit::x3::sequence<boost::spirit::x3::kleene<boost::spirit::x3::char_set<boost::spirit::char_encoding::standard, char> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::lexeme_directive<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, boost::spirit::x3::eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>; Attribute = client::ast::rmd; std::string = std::__cxx11::basic_string<char>]'
   34 |   bool r = x3::parse(iter, end, parser, attr);
      |            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
parser.cpp:50:12:   required from here
   50 |   parse_str(str, allow_incomplete, client::parser::rmd, doc);
      |   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
In file included from /data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:31:
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::Assignable<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::CopyConstructible<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:167:5:   required from 'struct boost::CopyConstructible<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:40:3:   required from 'struct boost_concepts::ReadableIterator<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
   40 |   BOOST_concept(ReadableIterator,(Iterator))
      |                 ^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:40:3:   required from 'struct boost_concepts::ReadableIteratorConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
   40 |   BOOST_concept(ReadableIterator,(Iterator))
      |                 ^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost_concepts::ReadableIteratorConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost_concepts::ReadableIteratorConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost_concepts::ReadableIteratorConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost_concepts::ReadableIteratorConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:30:9:   required from 'bool boost::spirit::x3::parse_main(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:48:26:   required from 'bool boost::spirit::x3::parse(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   48 |         return parse_main(first, last, p, attr);
      |                ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
parser.cpp:34:21:   required from 'void parse_str(const std::string&, bool, const Parser&, Attribute&, bool) [with Parser = boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::optional<boost::spirit::x3::sequence<boost::spirit::x3::rule<client::parser::yaml_class, client::ast::yaml>, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> > >, boost::spirit::x3::kleene<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::alternative<boost::spirit::x3::alternative<boost::spirit::x3::rule<client::parser::chunk_class, client::ast::chunk>, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::action<boost::spirit::x3::repeat_directive<boost::spirit::x3::literal_char<boost::spirit::char_encoding::standard, char>, boost::spirit::x3::detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, boost::spirit::x3::optional<boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::action<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> >, client::parser::<lambda(auto:12&)> > >, boost::spirit::x3::eol_parser>, client::ast::heading, false, true> >, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::plus<boost::spirit::x3::sequence<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::not_predicate<boost::spirit::x3::alternative<boost::spirit::x3::sequence<boost::spirit::x3::kleene<boost::spirit::x3::char_set<boost::spirit::char_encoding::standard, char> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::lexeme_directive<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, boost::spirit::x3::eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>; Attribute = client::ast::rmd; std::string = std::__cxx11::basic_string<char>]'
   34 |   bool r = x3::parse(iter, end, parser, attr);
      |            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
parser.cpp:50:12:   required from here
   50 |   parse_str(str, allow_incomplete, client::parser::rmd, doc);
      |   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::CopyConstructible<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost_concepts::ReadableIterator<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:48:7:   required from 'struct boost_concepts::ReadableIterator<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:40:3:   required from 'struct boost_concepts::ReadableIteratorConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
   40 |   BOOST_concept(ReadableIterator,(Iterator))
      |                 ^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost_concepts::ReadableIteratorConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost_concepts::ReadableIteratorConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost_concepts::ReadableIteratorConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost_concepts::ReadableIteratorConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:30:9:   required from 'bool boost::spirit::x3::parse_main(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:48:26:   required from 'bool boost::spirit::x3::parse(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   48 |         return parse_main(first, last, p, attr);
      |                ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
parser.cpp:34:21:   required from 'void parse_str(const std::string&, bool, const Parser&, Attribute&, bool) [with Parser = boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::optional<boost::spirit::x3::sequence<boost::spirit::x3::rule<client::parser::yaml_class, client::ast::yaml>, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> > >, boost::spirit::x3::kleene<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::alternative<boost::spirit::x3::alternative<boost::spirit::x3::rule<client::parser::chunk_class, client::ast::chunk>, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::action<boost::spirit::x3::repeat_directive<boost::spirit::x3::literal_char<boost::spirit::char_encoding::standard, char>, boost::spirit::x3::detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, boost::spirit::x3::optional<boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::action<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> >, client::parser::<lambda(auto:12&)> > >, boost::spirit::x3::eol_parser>, client::ast::heading, false, true> >, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::plus<boost::spirit::x3::sequence<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::not_predicate<boost::spirit::x3::alternative<boost::spirit::x3::sequence<boost::spirit::x3::kleene<boost::spirit::x3::char_set<boost::spirit::char_encoding::standard, char> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::lexeme_directive<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, boost::spirit::x3::eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>; Attribute = client::ast::rmd; std::string = std::__cxx11::basic_string<char>]'
   34 |   bool r = x3::parse(iter, end, parser, attr);
      |            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
parser.cpp:50:12:   required from here
   50 |   parse_str(str, allow_incomplete, client::parser::rmd, doc);
      |   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost_concepts::ReadableIterator<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost_concepts::ReadableIteratorConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:30:9:   required from 'bool boost::spirit::x3::parse_main(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:48:26:   required from 'bool boost::spirit::x3::parse(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   48 |         return parse_main(first, last, p, attr);
      |                ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
parser.cpp:34:21:   required from 'void parse_str(const std::string&, bool, const Parser&, Attribute&, bool) [with Parser = boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::optional<boost::spirit::x3::sequence<boost::spirit::x3::rule<client::parser::yaml_class, client::ast::yaml>, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> > >, boost::spirit::x3::kleene<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::alternative<boost::spirit::x3::alternative<boost::spirit::x3::rule<client::parser::chunk_class, client::ast::chunk>, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::action<boost::spirit::x3::repeat_directive<boost::spirit::x3::literal_char<boost::spirit::char_encoding::standard, char>, boost::spirit::x3::detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, boost::spirit::x3::optional<boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::action<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> >, client::parser::<lambda(auto:12&)> > >, boost::spirit::x3::eol_parser>, client::ast::heading, false, true> >, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::plus<boost::spirit::x3::sequence<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::not_predicate<boost::spirit::x3::alternative<boost::spirit::x3::sequence<boost::spirit::x3::kleene<boost::spirit::x3::char_set<boost::spirit::char_encoding::standard, char> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::lexeme_directive<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, boost::spirit::x3::eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>; Attribute = client::ast::rmd; std::string = std::__cxx11::basic_string<char>]'
   34 |   bool r = x3::parse(iter, end, parser, attr);
      |            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
parser.cpp:50:12:   required from here
   50 |   parse_str(str, allow_incomplete, client::parser::rmd, doc);
      |   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
In file included from /data/gannet/ripley/R/test-dev/BH/include/boost/mpl/aux_/integral_wrapper.hpp:22,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/mpl/int.hpp:20,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/mpl/lambda_fwd.hpp:23,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/mpl/aux_/na_spec.hpp:18,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/mpl/identity.hpp:17,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/support/context.hpp:12,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parser.hpp:18,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/auxiliary/any_parser.hpp:11:
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:40:17: note: in a call to non-static member function 'boost_concepts::ReadableIteratorConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >::~ReadableIteratorConcept()'
   40 |   BOOST_concept(ReadableIterator,(Iterator))
      |                 ^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/preprocessor/cat.hpp:29:34: note: in definition of macro 'BOOST_PP_CAT_I'
   29 | #    define BOOST_PP_CAT_I(a, b) a ## b
      |                                  ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/concept_def.hpp:23:12: note: in expansion of macro 'BOOST_PP_CAT'
   23 |     struct BOOST_PP_CAT(name,Concept)                                           \
      |            ^~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:40:3: note: in expansion of macro 'BOOST_concept'
   40 |   BOOST_concept(ReadableIterator,(Iterator))
      |   ^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:208:5:   required from 'struct boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:114:7:   [ skipping 6 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:31:9:   required from 'bool boost::spirit::x3::parse_main(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:48:26:   required from 'bool boost::spirit::x3::parse(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   48 |         return parse_main(first, last, p, attr);
      |                ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
parser.cpp:34:21:   required from 'void parse_str(const std::string&, bool, const Parser&, Attribute&, bool) [with Parser = boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::optional<boost::spirit::x3::sequence<boost::spirit::x3::rule<client::parser::yaml_class, client::ast::yaml>, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> > >, boost::spirit::x3::kleene<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::alternative<boost::spirit::x3::alternative<boost::spirit::x3::rule<client::parser::chunk_class, client::ast::chunk>, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::action<boost::spirit::x3::repeat_directive<boost::spirit::x3::literal_char<boost::spirit::char_encoding::standard, char>, boost::spirit::x3::detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, boost::spirit::x3::optional<boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::action<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> >, client::parser::<lambda(auto:12&)> > >, boost::spirit::x3::eol_parser>, client::ast::heading, false, true> >, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::plus<boost::spirit::x3::sequence<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::not_predicate<boost::spirit::x3::alternative<boost::spirit::x3::sequence<boost::spirit::x3::kleene<boost::spirit::x3::char_set<boost::spirit::char_encoding::standard, char> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::lexeme_directive<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, boost::spirit::x3::eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>; Attribute = client::ast::rmd; std::string = std::__cxx11::basic_string<char>]'
   34 |   bool r = x3::parse(iter, end, parser, attr);
      |            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
parser.cpp:50:12:   required from here
   50 |   parse_str(str, allow_incomplete, client::parser::rmd, doc);
      |   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>]':
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:114:7:   required from 'struct boost_concepts::IncrementableIterator<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:129:3:   required from 'struct boost_concepts::SinglePassIterator<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
  129 |   BOOST_concept(SinglePassIterator,(Iterator))
      |                 ^~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:141:3:   required from 'struct boost_concepts::ForwardTraversal<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
  141 |   BOOST_concept(ForwardTraversal,(Iterator))
      |                 ^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:141:3:   required from 'struct boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
  141 |   BOOST_concept(ForwardTraversal,(Iterator))
      |                 ^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:31:9:   required from 'bool boost::spirit::x3::parse_main(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:48:26:   required from 'bool boost::spirit::x3::parse(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   48 |         return parse_main(first, last, p, attr);
      |                ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
parser.cpp:34:21:   required from 'void parse_str(const std::string&, bool, const Parser&, Attribute&, bool) [with Parser = boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::optional<boost::spirit::x3::sequence<boost::spirit::x3::rule<client::parser::yaml_class, client::ast::yaml>, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> > >, boost::spirit::x3::kleene<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::alternative<boost::spirit::x3::alternative<boost::spirit::x3::rule<client::parser::chunk_class, client::ast::chunk>, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::action<boost::spirit::x3::repeat_directive<boost::spirit::x3::literal_char<boost::spirit::char_encoding::standard, char>, boost::spirit::x3::detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, boost::spirit::x3::optional<boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::action<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> >, client::parser::<lambda(auto:12&)> > >, boost::spirit::x3::eol_parser>, client::ast::heading, false, true> >, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::plus<boost::spirit::x3::sequence<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::not_predicate<boost::spirit::x3::alternative<boost::spirit::x3::sequence<boost::spirit::x3::kleene<boost::spirit::x3::char_set<boost::spirit::char_encoding::standard, char> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::lexeme_directive<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, boost::spirit::x3::eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>; Attribute = client::ast::rmd; std::string = std::__cxx11::basic_string<char>]'
   34 |   bool r = x3::parse(iter, end, parser, attr);
      |            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
parser.cpp:50:12:   required from here
   50 |   parse_str(str, allow_incomplete, client::parser::rmd, doc);
      |   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::Convertible<X, Y>::~Convertible() [with X = boost::iterators::random_access_traversal_tag; Y = boost::iterators::incrementable_traversal_tag]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  208 |     BOOST_CONCEPT_USAGE(Convertible) {
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost_concepts::IncrementableIterator<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:120:7:   required from 'struct boost_concepts::IncrementableIterator<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:129:3:   required from 'struct boost_concepts::SinglePassIterator<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
  129 |   BOOST_concept(SinglePassIterator,(Iterator))
      |                 ^~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:141:3:   required from 'struct boost_concepts::ForwardTraversal<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
  141 |   BOOST_concept(ForwardTraversal,(Iterator))
      |                 ^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:141:3:   required from 'struct boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
  141 |   BOOST_concept(ForwardTraversal,(Iterator))
      |                 ^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:31:9:   required from 'bool boost::spirit::x3::parse_main(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:48:26:   required from 'bool boost::spirit::x3::parse(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   48 |         return parse_main(first, last, p, attr);
      |                ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
parser.cpp:34:21:   required from 'void parse_str(const std::string&, bool, const Parser&, Attribute&, bool) [with Parser = boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::optional<boost::spirit::x3::sequence<boost::spirit::x3::rule<client::parser::yaml_class, client::ast::yaml>, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> > >, boost::spirit::x3::kleene<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::alternative<boost::spirit::x3::alternative<boost::spirit::x3::rule<client::parser::chunk_class, client::ast::chunk>, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::action<boost::spirit::x3::repeat_directive<boost::spirit::x3::literal_char<boost::spirit::char_encoding::standard, char>, boost::spirit::x3::detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, boost::spirit::x3::optional<boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::action<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> >, client::parser::<lambda(auto:12&)> > >, boost::spirit::x3::eol_parser>, client::ast::heading, false, true> >, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::plus<boost::spirit::x3::sequence<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::not_predicate<boost::spirit::x3::alternative<boost::spirit::x3::sequence<boost::spirit::x3::kleene<boost::spirit::x3::char_set<boost::spirit::char_encoding::standard, char> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::lexeme_directive<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, boost::spirit::x3::eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>; Attribute = client::ast::rmd; std::string = std::__cxx11::basic_string<char>]'
   34 |   bool r = x3::parse(iter, end, parser, attr);
      |            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
parser.cpp:50:12:   required from here
   50 |   parse_str(str, allow_incomplete, client::parser::rmd, doc);
      |   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost_concepts::IncrementableIterator<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::EqualityComparable<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:233:5:   required from 'struct boost::EqualityComparable<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:129:3:   required from 'struct boost_concepts::SinglePassIterator<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
  129 |   BOOST_concept(SinglePassIterator,(Iterator))
      |                 ^~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:141:3:   required from 'struct boost_concepts::ForwardTraversal<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
  141 |   BOOST_concept(ForwardTraversal,(Iterator))
      |                 ^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:141:3:   required from 'struct boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
  141 |   BOOST_concept(ForwardTraversal,(Iterator))
      |                 ^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:31:9:   required from 'bool boost::spirit::x3::parse_main(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:48:26:   required from 'bool boost::spirit::x3::parse(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   48 |         return parse_main(first, last, p, attr);
      |                ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
parser.cpp:34:21:   required from 'void parse_str(const std::string&, bool, const Parser&, Attribute&, bool) [with Parser = boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::optional<boost::spirit::x3::sequence<boost::spirit::x3::rule<client::parser::yaml_class, client::ast::yaml>, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> > >, boost::spirit::x3::kleene<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::alternative<boost::spirit::x3::alternative<boost::spirit::x3::rule<client::parser::chunk_class, client::ast::chunk>, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::action<boost::spirit::x3::repeat_directive<boost::spirit::x3::literal_char<boost::spirit::char_encoding::standard, char>, boost::spirit::x3::detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, boost::spirit::x3::optional<boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::action<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> >, client::parser::<lambda(auto:12&)> > >, boost::spirit::x3::eol_parser>, client::ast::heading, false, true> >, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::plus<boost::spirit::x3::sequence<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::not_predicate<boost::spirit::x3::alternative<boost::spirit::x3::sequence<boost::spirit::x3::kleene<boost::spirit::x3::char_set<boost::spirit::char_encoding::standard, char> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::lexeme_directive<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, boost::spirit::x3::eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>; Attribute = client::ast::rmd; std::string = std::__cxx11::basic_string<char>]'
   34 |   bool r = x3::parse(iter, end, parser, attr);
      |            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
parser.cpp:50:12:   required from here
   50 |   parse_str(str, allow_incomplete, client::parser::rmd, doc);
      |   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::EqualityComparable<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:208:5:   required from 'struct boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:134:7:   [ skipping 5 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:31:9:   required from 'bool boost::spirit::x3::parse_main(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:48:26:   required from 'bool boost::spirit::x3::parse(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   48 |         return parse_main(first, last, p, attr);
      |                ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
parser.cpp:34:21:   required from 'void parse_str(const std::string&, bool, const Parser&, Attribute&, bool) [with Parser = boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::optional<boost::spirit::x3::sequence<boost::spirit::x3::rule<client::parser::yaml_class, client::ast::yaml>, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> > >, boost::spirit::x3::kleene<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::alternative<boost::spirit::x3::alternative<boost::spirit::x3::rule<client::parser::chunk_class, client::ast::chunk>, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::action<boost::spirit::x3::repeat_directive<boost::spirit::x3::literal_char<boost::spirit::char_encoding::standard, char>, boost::spirit::x3::detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, boost::spirit::x3::optional<boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::action<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> >, client::parser::<lambda(auto:12&)> > >, boost::spirit::x3::eol_parser>, client::ast::heading, false, true> >, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::plus<boost::spirit::x3::sequence<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::not_predicate<boost::spirit::x3::alternative<boost::spirit::x3::sequence<boost::spirit::x3::kleene<boost::spirit::x3::char_set<boost::spirit::char_encoding::standard, char> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::lexeme_directive<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, boost::spirit::x3::eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>; Attribute = client::ast::rmd; std::string = std::__cxx11::basic_string<char>]'
   34 |   bool r = x3::parse(iter, end, parser, attr);
      |            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
parser.cpp:50:12:   required from here
   50 |   parse_str(str, allow_incomplete, client::parser::rmd, doc);
      |   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>]':
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:134:7:   required from 'struct boost_concepts::SinglePassIterator<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:141:3:   required from 'struct boost_concepts::ForwardTraversal<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
  141 |   BOOST_concept(ForwardTraversal,(Iterator))
      |                 ^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:141:3:   required from 'struct boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
  141 |   BOOST_concept(ForwardTraversal,(Iterator))
      |                 ^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:31:9:   required from 'bool boost::spirit::x3::parse_main(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:48:26:   required from 'bool boost::spirit::x3::parse(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   48 |         return parse_main(first, last, p, attr);
      |                ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
parser.cpp:34:21:   required from 'void parse_str(const std::string&, bool, const Parser&, Attribute&, bool) [with Parser = boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::optional<boost::spirit::x3::sequence<boost::spirit::x3::rule<client::parser::yaml_class, client::ast::yaml>, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> > >, boost::spirit::x3::kleene<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::alternative<boost::spirit::x3::alternative<boost::spirit::x3::rule<client::parser::chunk_class, client::ast::chunk>, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::action<boost::spirit::x3::repeat_directive<boost::spirit::x3::literal_char<boost::spirit::char_encoding::standard, char>, boost::spirit::x3::detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, boost::spirit::x3::optional<boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::action<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> >, client::parser::<lambda(auto:12&)> > >, boost::spirit::x3::eol_parser>, client::ast::heading, false, true> >, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::plus<boost::spirit::x3::sequence<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::not_predicate<boost::spirit::x3::alternative<boost::spirit::x3::sequence<boost::spirit::x3::kleene<boost::spirit::x3::char_set<boost::spirit::char_encoding::standard, char> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::lexeme_directive<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, boost::spirit::x3::eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>; Attribute = client::ast::rmd; std::string = std::__cxx11::basic_string<char>]'
   34 |   bool r = x3::parse(iter, end, parser, attr);
      |            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
parser.cpp:50:12:   required from here
   50 |   parse_str(str, allow_incomplete, client::parser::rmd, doc);
      |   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::Convertible<X, Y>::~Convertible() [with X = boost::iterators::random_access_traversal_tag; Y = boost::iterators::single_pass_traversal_tag]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  208 |     BOOST_CONCEPT_USAGE(Convertible) {
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::DefaultConstructible<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:137:5:   required from 'struct boost::DefaultConstructible<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:141:3:   required from 'struct boost_concepts::ForwardTraversal<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
  141 |   BOOST_concept(ForwardTraversal,(Iterator))
      |                 ^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:141:3:   required from 'struct boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
  141 |   BOOST_concept(ForwardTraversal,(Iterator))
      |                 ^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:31:9:   required from 'bool boost::spirit::x3::parse_main(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:48:26:   required from 'bool boost::spirit::x3::parse(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   48 |         return parse_main(first, last, p, attr);
      |                ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
parser.cpp:34:21:   required from 'void parse_str(const std::string&, bool, const Parser&, Attribute&, bool) [with Parser = boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::optional<boost::spirit::x3::sequence<boost::spirit::x3::rule<client::parser::yaml_class, client::ast::yaml>, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> > >, boost::spirit::x3::kleene<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::alternative<boost::spirit::x3::alternative<boost::spirit::x3::rule<client::parser::chunk_class, client::ast::chunk>, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::action<boost::spirit::x3::repeat_directive<boost::spirit::x3::literal_char<boost::spirit::char_encoding::standard, char>, boost::spirit::x3::detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, boost::spirit::x3::optional<boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::action<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> >, client::parser::<lambda(auto:12&)> > >, boost::spirit::x3::eol_parser>, client::ast::heading, false, true> >, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::plus<boost::spirit::x3::sequence<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::not_predicate<boost::spirit::x3::alternative<boost::spirit::x3::sequence<boost::spirit::x3::kleene<boost::spirit::x3::char_set<boost::spirit::char_encoding::standard, char> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::lexeme_directive<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, boost::spirit::x3::eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>; Attribute = client::ast::rmd; std::string = std::__cxx11::basic_string<char>]'
   34 |   bool r = x3::parse(iter, end, parser, attr);
      |            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
parser.cpp:50:12:   required from here
   50 |   parse_str(str, allow_incomplete, client::parser::rmd, doc);
      |   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::DefaultConstructible<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::forward_traversal_tag> >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:208:5:   required from 'struct boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::forward_traversal_tag>'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::forward_traversal_tag>]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::forward_traversal_tag> >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::forward_traversal_tag> >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::forward_traversal_tag>)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:150:7:   [ skipping 4 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:31:9:   required from 'bool boost::spirit::x3::parse_main(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:48:26:   required from 'bool boost::spirit::x3::parse(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   48 |         return parse_main(first, last, p, attr);
      |                ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
parser.cpp:34:21:   required from 'void parse_str(const std::string&, bool, const Parser&, Attribute&, bool) [with Parser = boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::optional<boost::spirit::x3::sequence<boost::spirit::x3::rule<client::parser::yaml_class, client::ast::yaml>, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> > >, boost::spirit::x3::kleene<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::alternative<boost::spirit::x3::alternative<boost::spirit::x3::rule<client::parser::chunk_class, client::ast::chunk>, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::action<boost::spirit::x3::repeat_directive<boost::spirit::x3::literal_char<boost::spirit::char_encoding::standard, char>, boost::spirit::x3::detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, boost::spirit::x3::optional<boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::action<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> >, client::parser::<lambda(auto:12&)> > >, boost::spirit::x3::eol_parser>, client::ast::heading, false, true> >, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::plus<boost::spirit::x3::sequence<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::not_predicate<boost::spirit::x3::alternative<boost::spirit::x3::sequence<boost::spirit::x3::kleene<boost::spirit::x3::char_set<boost::spirit::char_encoding::standard, char> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::lexeme_directive<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, boost::spirit::x3::eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>; Attribute = client::ast::rmd; std::string = std::__cxx11::basic_string<char>]'
   34 |   bool r = x3::parse(iter, end, parser, attr);
      |            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
parser.cpp:50:12:   required from here
   50 |   parse_str(str, allow_incomplete, client::parser::rmd, doc);
      |   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::forward_traversal_tag>]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::forward_traversal_tag>]':
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:150:7:   required from 'struct boost_concepts::ForwardTraversal<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:141:3:   required from 'struct boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
  141 |   BOOST_concept(ForwardTraversal,(Iterator))
      |                 ^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:31:9:   required from 'bool boost::spirit::x3::parse_main(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:48:26:   required from 'bool boost::spirit::x3::parse(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   48 |         return parse_main(first, last, p, attr);
      |                ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
parser.cpp:34:21:   required from 'void parse_str(const std::string&, bool, const Parser&, Attribute&, bool) [with Parser = boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::optional<boost::spirit::x3::sequence<boost::spirit::x3::rule<client::parser::yaml_class, client::ast::yaml>, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> > >, boost::spirit::x3::kleene<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::alternative<boost::spirit::x3::alternative<boost::spirit::x3::rule<client::parser::chunk_class, client::ast::chunk>, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::action<boost::spirit::x3::repeat_directive<boost::spirit::x3::literal_char<boost::spirit::char_encoding::standard, char>, boost::spirit::x3::detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, boost::spirit::x3::optional<boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::action<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> >, client::parser::<lambda(auto:12&)> > >, boost::spirit::x3::eol_parser>, client::ast::heading, false, true> >, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::plus<boost::spirit::x3::sequence<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::not_predicate<boost::spirit::x3::alternative<boost::spirit::x3::sequence<boost::spirit::x3::kleene<boost::spirit::x3::char_set<boost::spirit::char_encoding::standard, char> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::lexeme_directive<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, boost::spirit::x3::eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>; Attribute = client::ast::rmd; std::string = std::__cxx11::basic_string<char>]'
   34 |   bool r = x3::parse(iter, end, parser, attr);
      |            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
parser.cpp:50:12:   required from here
   50 |   parse_str(str, allow_incomplete, client::parser::rmd, doc);
      |   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::Convertible<X, Y>::~Convertible() [with X = boost::iterators::random_access_traversal_tag; Y = boost::iterators::forward_traversal_tag]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  208 |     BOOST_CONCEPT_USAGE(Convertible) {
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:31:9:   required from 'bool boost::spirit::x3::parse_main(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:48:26:   required from 'bool boost::spirit::x3::parse(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   48 |         return parse_main(first, last, p, attr);
      |                ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
parser.cpp:34:21:   required from 'void parse_str(const std::string&, bool, const Parser&, Attribute&, bool) [with Parser = boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::optional<boost::spirit::x3::sequence<boost::spirit::x3::rule<client::parser::yaml_class, client::ast::yaml>, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> > >, boost::spirit::x3::kleene<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::alternative<boost::spirit::x3::alternative<boost::spirit::x3::rule<client::parser::chunk_class, client::ast::chunk>, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::action<boost::spirit::x3::repeat_directive<boost::spirit::x3::literal_char<boost::spirit::char_encoding::standard, char>, boost::spirit::x3::detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, boost::spirit::x3::optional<boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::action<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> >, client::parser::<lambda(auto:12&)> > >, boost::spirit::x3::eol_parser>, client::ast::heading, false, true> >, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::plus<boost::spirit::x3::sequence<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::not_predicate<boost::spirit::x3::alternative<boost::spirit::x3::sequence<boost::spirit::x3::kleene<boost::spirit::x3::char_set<boost::spirit::char_encoding::standard, char> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::lexeme_directive<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, boost::spirit::x3::eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>; Attribute = client::ast::rmd; std::string = std::__cxx11::basic_string<char>]'
   34 |   bool r = x3::parse(iter, end, parser, attr);
      |            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
parser.cpp:50:12:   required from here
   50 |   parse_str(str, allow_incomplete, client::parser::rmd, doc);
      |   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:141:17: note: in a call to non-static member function 'boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >::~ForwardTraversalConcept()'
  141 |   BOOST_concept(ForwardTraversal,(Iterator))
      |                 ^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/preprocessor/cat.hpp:29:34: note: in definition of macro 'BOOST_PP_CAT_I'
   29 | #    define BOOST_PP_CAT_I(a, b) a ## b
      |                                  ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/concept_def.hpp:23:12: note: in expansion of macro 'BOOST_PP_CAT'
   23 |     struct BOOST_PP_CAT(name,Concept)                                           \
      |            ^~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:141:3: note: in expansion of macro 'BOOST_concept'
  141 |   BOOST_concept(ForwardTraversal,(Iterator))
      |   ^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::Assignable<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47:   required from 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::Assignable<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:145:5:   required from 'struct boost::Assignable<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:40:3:   required from 'struct boost_concepts::ReadableIterator<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
   40 |   BOOST_concept(ReadableIterator,(Iterator))
      |                 ^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:40:3:   required from 'struct boost_concepts::ReadableIteratorConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
   40 |   BOOST_concept(ReadableIterator,(Iterator))
      |                 ^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost_concepts::ReadableIteratorConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost_concepts::ReadableIteratorConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:30:9:   required from 'bool boost::spirit::x3::parse_main(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:48:26:   required from 'bool boost::spirit::x3::parse(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   48 |         return parse_main(first, last, p, attr);
      |                ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
parser.cpp:34:21:   required from 'void parse_str(const std::string&, bool, const Parser&, Attribute&, bool) [with Parser = boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::optional<boost::spirit::x3::sequence<boost::spirit::x3::rule<client::parser::yaml_class, client::ast::yaml>, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> > >, boost::spirit::x3::kleene<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::alternative<boost::spirit::x3::alternative<boost::spirit::x3::rule<client::parser::chunk_class, client::ast::chunk>, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::action<boost::spirit::x3::repeat_directive<boost::spirit::x3::literal_char<boost::spirit::char_encoding::standard, char>, boost::spirit::x3::detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, boost::spirit::x3::optional<boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::action<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> >, client::parser::<lambda(auto:12&)> > >, boost::spirit::x3::eol_parser>, client::ast::heading, false, true> >, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::plus<boost::spirit::x3::sequence<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::not_predicate<boost::spirit::x3::alternative<boost::spirit::x3::sequence<boost::spirit::x3::kleene<boost::spirit::x3::char_set<boost::spirit::char_encoding::standard, char> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::lexeme_directive<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, boost::spirit::x3::eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>; Attribute = client::ast::rmd; std::string = std::__cxx11::basic_string<char>]'
   34 |   bool r = x3::parse(iter, end, parser, attr);
      |            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
parser.cpp:50:12:   required from here
   50 |   parse_str(str, allow_incomplete, client::parser::rmd, doc);
      |   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::Assignable<TT>::~Assignable() [with TT = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:145:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  145 |     BOOST_CONCEPT_USAGE(Assignable) {
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::CopyConstructible<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47:   required from 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::CopyConstructible<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:167:5:   required from 'struct boost::CopyConstructible<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:40:3:   required from 'struct boost_concepts::ReadableIterator<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
   40 |   BOOST_concept(ReadableIterator,(Iterator))
      |                 ^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:40:3:   required from 'struct boost_concepts::ReadableIteratorConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
   40 |   BOOST_concept(ReadableIterator,(Iterator))
      |                 ^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost_concepts::ReadableIteratorConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost_concepts::ReadableIteratorConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:30:9:   required from 'bool boost::spirit::x3::parse_main(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:48:26:   required from 'bool boost::spirit::x3::parse(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   48 |         return parse_main(first, last, p, attr);
      |                ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
parser.cpp:34:21:   required from 'void parse_str(const std::string&, bool, const Parser&, Attribute&, bool) [with Parser = boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::optional<boost::spirit::x3::sequence<boost::spirit::x3::rule<client::parser::yaml_class, client::ast::yaml>, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> > >, boost::spirit::x3::kleene<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::alternative<boost::spirit::x3::alternative<boost::spirit::x3::rule<client::parser::chunk_class, client::ast::chunk>, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::action<boost::spirit::x3::repeat_directive<boost::spirit::x3::literal_char<boost::spirit::char_encoding::standard, char>, boost::spirit::x3::detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, boost::spirit::x3::optional<boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::action<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> >, client::parser::<lambda(auto:12&)> > >, boost::spirit::x3::eol_parser>, client::ast::heading, false, true> >, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::plus<boost::spirit::x3::sequence<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::not_predicate<boost::spirit::x3::alternative<boost::spirit::x3::sequence<boost::spirit::x3::kleene<boost::spirit::x3::char_set<boost::spirit::char_encoding::standard, char> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::lexeme_directive<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, boost::spirit::x3::eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>; Attribute = client::ast::rmd; std::string = std::__cxx11::basic_string<char>]'
   34 |   bool r = x3::parse(iter, end, parser, attr);
      |            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
parser.cpp:50:12:   required from here
   50 |   parse_str(str, allow_incomplete, client::parser::rmd, doc);
      |   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::CopyConstructible<TT>::~CopyConstructible() [with TT = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:167:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  167 |     BOOST_CONCEPT_USAGE(CopyConstructible) {
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost_concepts::ReadableIterator<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47:   required from 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost_concepts::ReadableIterator<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:48:7:   required from 'struct boost_concepts::ReadableIterator<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:40:3:   required from 'struct boost_concepts::ReadableIteratorConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
   40 |   BOOST_concept(ReadableIterator,(Iterator))
      |                 ^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost_concepts::ReadableIteratorConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost_concepts::ReadableIteratorConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost_concepts::ReadableIteratorConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost_concepts::ReadableIteratorConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:30:9:   required from 'bool boost::spirit::x3::parse_main(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:48:26:   required from 'bool boost::spirit::x3::parse(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   48 |         return parse_main(first, last, p, attr);
      |                ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
parser.cpp:34:21:   required from 'void parse_str(const std::string&, bool, const Parser&, Attribute&, bool) [with Parser = boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::optional<boost::spirit::x3::sequence<boost::spirit::x3::rule<client::parser::yaml_class, client::ast::yaml>, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> > >, boost::spirit::x3::kleene<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::alternative<boost::spirit::x3::alternative<boost::spirit::x3::rule<client::parser::chunk_class, client::ast::chunk>, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::action<boost::spirit::x3::repeat_directive<boost::spirit::x3::literal_char<boost::spirit::char_encoding::standard, char>, boost::spirit::x3::detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, boost::spirit::x3::optional<boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::action<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> >, client::parser::<lambda(auto:12&)> > >, boost::spirit::x3::eol_parser>, client::ast::heading, false, true> >, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::plus<boost::spirit::x3::sequence<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::not_predicate<boost::spirit::x3::alternative<boost::spirit::x3::sequence<boost::spirit::x3::kleene<boost::spirit::x3::char_set<boost::spirit::char_encoding::standard, char> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::lexeme_directive<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, boost::spirit::x3::eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>; Attribute = client::ast::rmd; std::string = std::__cxx11::basic_string<char>]'
   34 |   bool r = x3::parse(iter, end, parser, attr);
      |            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
parser.cpp:50:12:   required from here
   50 |   parse_str(str, allow_incomplete, client::parser::rmd, doc);
      |   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost_concepts::ReadableIterator<Iterator>::~ReadableIterator() [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:48:7: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
   48 |       BOOST_CONCEPT_USAGE(ReadableIterator)
      |       ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>]':
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47:   required from 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:208:5:   required from 'struct boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 7 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >'
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:31:9:   required from 'bool boost::spirit::x3::parse_main(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:48:26:   required from 'bool boost::spirit::x3::parse(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   48 |         return parse_main(first, last, p, attr);
      |                ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
parser.cpp:34:21:   required from 'void parse_str(const std::string&, bool, const Parser&, Attribute&, bool) [with Parser = boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::optional<boost::spirit::x3::sequence<boost::spirit::x3::rule<client::parser::yaml_class, client::ast::yaml>, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> > >, boost::spirit::x3::kleene<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::alternative<boost::spirit::x3::alternative<boost::spirit::x3::rule<client::parser::chunk_class, client::ast::chunk>, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::action<boost::spirit::x3::repeat_directive<boost::spirit::x3::literal_char<boost::spirit::char_encoding::standard, char>, boost::spirit::x3::detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, boost::spirit::x3::optional<boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::action<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> >, client::parser::<lambda(auto:12&)> > >, boost::spirit::x3::eol_parser>, client::ast::heading, false, true> >, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::plus<boost::spirit::x3::sequence<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::not_predicate<boost::spirit::x3::alternative<boost::spirit::x3::sequence<boost::spirit::x3::kleene<boost::spirit::x3::char_set<boost::spirit::char_encoding::standard, char> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::lexeme_directive<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, boost::spirit::x3::eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>; Attribute = client::ast::rmd; std::string = std::__cxx11::basic_string<char>]'
   34 |   bool r = x3::parse(iter, end, parser, attr);
      |            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
parser.cpp:50:12:   required from here
   50 |   parse_str(str, allow_incomplete, client::parser::rmd, doc);
      |   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::Convertible<X, Y>::~Convertible() [with X = boost::iterators::random_access_traversal_tag; Y = boost::iterators::incrementable_traversal_tag]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  208 |     BOOST_CONCEPT_USAGE(Convertible) {
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost_concepts::IncrementableIterator<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47:   required from 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost_concepts::IncrementableIterator<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:120:7:   required from 'struct boost_concepts::IncrementableIterator<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:129:3:   required from 'struct boost_concepts::SinglePassIterator<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
  129 |   BOOST_concept(SinglePassIterator,(Iterator))
      |                 ^~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:141:3:   required from 'struct boost_concepts::ForwardTraversal<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
  141 |   BOOST_concept(ForwardTraversal,(Iterator))
      |                 ^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:141:3:   required from 'struct boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
  141 |   BOOST_concept(ForwardTraversal,(Iterator))
      |                 ^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:31:9:   required from 'bool boost::spirit::x3::parse_main(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:48:26:   required from 'bool boost::spirit::x3::parse(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   48 |         return parse_main(first, last, p, attr);
      |                ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
parser.cpp:34:21:   required from 'void parse_str(const std::string&, bool, const Parser&, Attribute&, bool) [with Parser = boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::optional<boost::spirit::x3::sequence<boost::spirit::x3::rule<client::parser::yaml_class, client::ast::yaml>, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> > >, boost::spirit::x3::kleene<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::alternative<boost::spirit::x3::alternative<boost::spirit::x3::rule<client::parser::chunk_class, client::ast::chunk>, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::action<boost::spirit::x3::repeat_directive<boost::spirit::x3::literal_char<boost::spirit::char_encoding::standard, char>, boost::spirit::x3::detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, boost::spirit::x3::optional<boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::action<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> >, client::parser::<lambda(auto:12&)> > >, boost::spirit::x3::eol_parser>, client::ast::heading, false, true> >, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::plus<boost::spirit::x3::sequence<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::not_predicate<boost::spirit::x3::alternative<boost::spirit::x3::sequence<boost::spirit::x3::kleene<boost::spirit::x3::char_set<boost::spirit::char_encoding::standard, char> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::lexeme_directive<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, boost::spirit::x3::eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>; Attribute = client::ast::rmd; std::string = std::__cxx11::basic_string<char>]'
   34 |   bool r = x3::parse(iter, end, parser, attr);
      |            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
parser.cpp:50:12:   required from here
   50 |   parse_str(str, allow_incomplete, client::parser::rmd, doc);
      |   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost_concepts::IncrementableIterator<Iterator>::~IncrementableIterator() [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:120:7: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  120 |       BOOST_CONCEPT_USAGE(IncrementableIterator)
      |       ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::EqualityComparable<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47:   required from 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::EqualityComparable<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:233:5:   required from 'struct boost::EqualityComparable<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:129:3:   required from 'struct boost_concepts::SinglePassIterator<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
  129 |   BOOST_concept(SinglePassIterator,(Iterator))
      |                 ^~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:141:3:   required from 'struct boost_concepts::ForwardTraversal<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
  141 |   BOOST_concept(ForwardTraversal,(Iterator))
      |                 ^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:141:3:   required from 'struct boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
  141 |   BOOST_concept(ForwardTraversal,(Iterator))
      |                 ^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:31:9:   required from 'bool boost::spirit::x3::parse_main(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:48:26:   required from 'bool boost::spirit::x3::parse(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   48 |         return parse_main(first, last, p, attr);
      |                ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
parser.cpp:34:21:   required from 'void parse_str(const std::string&, bool, const Parser&, Attribute&, bool) [with Parser = boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::optional<boost::spirit::x3::sequence<boost::spirit::x3::rule<client::parser::yaml_class, client::ast::yaml>, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> > >, boost::spirit::x3::kleene<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::alternative<boost::spirit::x3::alternative<boost::spirit::x3::rule<client::parser::chunk_class, client::ast::chunk>, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::action<boost::spirit::x3::repeat_directive<boost::spirit::x3::literal_char<boost::spirit::char_encoding::standard, char>, boost::spirit::x3::detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, boost::spirit::x3::optional<boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::action<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> >, client::parser::<lambda(auto:12&)> > >, boost::spirit::x3::eol_parser>, client::ast::heading, false, true> >, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::plus<boost::spirit::x3::sequence<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::not_predicate<boost::spirit::x3::alternative<boost::spirit::x3::sequence<boost::spirit::x3::kleene<boost::spirit::x3::char_set<boost::spirit::char_encoding::standard, char> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::lexeme_directive<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, boost::spirit::x3::eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>; Attribute = client::ast::rmd; std::string = std::__cxx11::basic_string<char>]'
   34 |   bool r = x3::parse(iter, end, parser, attr);
      |            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
parser.cpp:50:12:   required from here
   50 |   parse_str(str, allow_incomplete, client::parser::rmd, doc);
      |   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::EqualityComparable<TT>::~EqualityComparable() [with TT = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:233:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  233 |     BOOST_CONCEPT_USAGE(EqualityComparable) {
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>]':
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47:   required from 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:208:5:   required from 'struct boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 6 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >'
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:31:9:   required from 'bool boost::spirit::x3::parse_main(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:48:26:   required from 'bool boost::spirit::x3::parse(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   48 |         return parse_main(first, last, p, attr);
      |                ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
parser.cpp:34:21:   required from 'void parse_str(const std::string&, bool, const Parser&, Attribute&, bool) [with Parser = boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::optional<boost::spirit::x3::sequence<boost::spirit::x3::rule<client::parser::yaml_class, client::ast::yaml>, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> > >, boost::spirit::x3::kleene<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::alternative<boost::spirit::x3::alternative<boost::spirit::x3::rule<client::parser::chunk_class, client::ast::chunk>, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::action<boost::spirit::x3::repeat_directive<boost::spirit::x3::literal_char<boost::spirit::char_encoding::standard, char>, boost::spirit::x3::detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, boost::spirit::x3::optional<boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::action<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> >, client::parser::<lambda(auto:12&)> > >, boost::spirit::x3::eol_parser>, client::ast::heading, false, true> >, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::plus<boost::spirit::x3::sequence<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::not_predicate<boost::spirit::x3::alternative<boost::spirit::x3::sequence<boost::spirit::x3::kleene<boost::spirit::x3::char_set<boost::spirit::char_encoding::standard, char> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::lexeme_directive<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, boost::spirit::x3::eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>; Attribute = client::ast::rmd; std::string = std::__cxx11::basic_string<char>]'
   34 |   bool r = x3::parse(iter, end, parser, attr);
      |            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
parser.cpp:50:12:   required from here
   50 |   parse_str(str, allow_incomplete, client::parser::rmd, doc);
      |   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::Convertible<X, Y>::~Convertible() [with X = boost::iterators::random_access_traversal_tag; Y = boost::iterators::single_pass_traversal_tag]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  208 |     BOOST_CONCEPT_USAGE(Convertible) {
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::DefaultConstructible<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47:   required from 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::DefaultConstructible<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:137:5:   required from 'struct boost::DefaultConstructible<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:141:3:   required from 'struct boost_concepts::ForwardTraversal<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
  141 |   BOOST_concept(ForwardTraversal,(Iterator))
      |                 ^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:141:3:   required from 'struct boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >'
  141 |   BOOST_concept(ForwardTraversal,(Iterator))
      |                 ^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:31:9:   required from 'bool boost::spirit::x3::parse_main(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:48:26:   required from 'bool boost::spirit::x3::parse(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   48 |         return parse_main(first, last, p, attr);
      |                ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
parser.cpp:34:21:   required from 'void parse_str(const std::string&, bool, const Parser&, Attribute&, bool) [with Parser = boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::optional<boost::spirit::x3::sequence<boost::spirit::x3::rule<client::parser::yaml_class, client::ast::yaml>, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> > >, boost::spirit::x3::kleene<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::alternative<boost::spirit::x3::alternative<boost::spirit::x3::rule<client::parser::chunk_class, client::ast::chunk>, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::action<boost::spirit::x3::repeat_directive<boost::spirit::x3::literal_char<boost::spirit::char_encoding::standard, char>, boost::spirit::x3::detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, boost::spirit::x3::optional<boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::action<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> >, client::parser::<lambda(auto:12&)> > >, boost::spirit::x3::eol_parser>, client::ast::heading, false, true> >, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::plus<boost::spirit::x3::sequence<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::not_predicate<boost::spirit::x3::alternative<boost::spirit::x3::sequence<boost::spirit::x3::kleene<boost::spirit::x3::char_set<boost::spirit::char_encoding::standard, char> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::lexeme_directive<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, boost::spirit::x3::eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>; Attribute = client::ast::rmd; std::string = std::__cxx11::basic_string<char>]'
   34 |   bool r = x3::parse(iter, end, parser, attr);
      |            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
parser.cpp:50:12:   required from here
   50 |   parse_str(str, allow_incomplete, client::parser::rmd, doc);
      |   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::DefaultConstructible<TT>::~DefaultConstructible() [with TT = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:137:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  137 |     BOOST_CONCEPT_USAGE(DefaultConstructible) {
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::forward_traversal_tag>]':
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47:   required from 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::forward_traversal_tag> >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:208:5:   required from 'struct boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::forward_traversal_tag>'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::forward_traversal_tag>]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::forward_traversal_tag> >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::forward_traversal_tag> >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 5 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > >'
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost_concepts::ForwardTraversalConcept<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:31:9:   required from 'bool boost::spirit::x3::parse_main(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/spirit/home/x3/core/parse.hpp:48:26:   required from 'bool boost::spirit::x3::parse(Iterator&, Iterator, const Parser&, Attribute&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; Parser = with_directive<rule_definition<client::parser::_, sequence<optional<sequence<rule<client::parser::yaml_class, client::ast::yaml>, kleene<eol_parser> > >, kleene<rule_definition<client::parser::_, sequence<alternative<alternative<rule<client::parser::chunk_class, client::ast::chunk>, rule_definition<client::parser::_, sequence<sequence<sequence<action<repeat_directive<literal_char<boost::spirit::char_encoding::standard, char>, detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, optional<literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, action<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> >, client::parser::<lambda(auto:12&)> > >, eol_parser>, client::ast::heading, false, true> >, rule_definition<client::parser::_, plus<sequence<rule_definition<client::parser::_, sequence<not_predicate<alternative<sequence<kleene<char_set<boost::spirit::char_encoding::standard, char> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> >, literal_string<const char*, boost::spirit::char_encoding::standard, unused_type> > >, lexeme_directive<kleene<difference<any_char<boost::spirit::char_encoding::standard>, eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, kleene<eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>, error_handler_tag, std::reference_wrapper<error_handler<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > > > >; Attribute = client::ast::rmd]'
   48 |         return parse_main(first, last, p, attr);
      |                ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
parser.cpp:34:21:   required from 'void parse_str(const std::string&, bool, const Parser&, Attribute&, bool) [with Parser = boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::optional<boost::spirit::x3::sequence<boost::spirit::x3::rule<client::parser::yaml_class, client::ast::yaml>, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> > >, boost::spirit::x3::kleene<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::alternative<boost::spirit::x3::alternative<boost::spirit::x3::rule<client::parser::chunk_class, client::ast::chunk>, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::action<boost::spirit::x3::repeat_directive<boost::spirit::x3::literal_char<boost::spirit::char_encoding::standard, char>, boost::spirit::x3::detail::finite_count<int> >, client::parser::<lambda(auto:11&)> >, boost::spirit::x3::optional<boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::action<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> >, client::parser::<lambda(auto:12&)> > >, boost::spirit::x3::eol_parser>, client::ast::heading, false, true> >, boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::plus<boost::spirit::x3::sequence<boost::spirit::x3::rule_definition<client::parser::_, boost::spirit::x3::sequence<boost::spirit::x3::not_predicate<boost::spirit::x3::alternative<boost::spirit::x3::sequence<boost::spirit::x3::kleene<boost::spirit::x3::char_set<boost::spirit::char_encoding::standard, char> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> >, boost::spirit::x3::literal_string<const char*, boost::spirit::char_encoding::standard, boost::spirit::x3::unused_type> > >, boost::spirit::x3::lexeme_directive<boost::spirit::x3::kleene<boost::spirit::x3::difference<boost::spirit::x3::any_char<boost::spirit::char_encoding::standard>, boost::spirit::x3::eol_parser> > > >, std::__cxx11::basic_string<char>, false, true>, boost::spirit::x3::eol_parser> >, std::vector<std::__cxx11::basic_string<char> >, false, true> >, boost::spirit::x3::kleene<boost::spirit::x3::eol_parser> >, client::ast::element, false, true> > >, client::ast::rmd, false, true>; Attribute = client::ast::rmd; std::string = std::__cxx11::basic_string<char>]'
   34 |   bool r = x3::parse(iter, end, parser, attr);
      |            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
parser.cpp:50:12:   required from here
   50 |   parse_str(str, allow_incomplete, client::parser::rmd, doc);
      |   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::Convertible<X, Y>::~Convertible() [with X = boost::iterators::random_access_traversal_tag; Y = boost::iterators::forward_traversal_tag]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  208 |     BOOST_CONCEPT_USAGE(Convertible) {
      |     ^~~~~~~~~~~~~~~~~~~
g++-14 -std=gnu++17 -shared -L/usr/local/gcc14/lib64 -L/usr/local/lib64 -o parsermd.so RcppExports.o parser.o parser_rcpp_wrap.o
make[1]: Leaving directory '/data/gannet/ripley/R/packages/tests-devel/parsermd/src'
make[1]: Entering directory '/data/gannet/ripley/R/packages/tests-devel/parsermd/src'
make[1]: Leaving directory '/data/gannet/ripley/R/packages/tests-devel/parsermd/src'
installing to /data/gannet/ripley/R/packages/tests-devel/parsermd.Rcheck/00LOCK-parsermd/00new/parsermd/libs
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
*** copying figures
** building package indices
** installing vignettes
** testing if installed package can be loaded from temporary location
** checking absolute paths in shared objects and dynamic libraries
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* DONE (parsermd)