Boost C++ Libraries: Ticket #8022: gcc: json_parser_read.hpp:116: warning: unused parameter 'e' [-Wunused-parameter] https://svn.boost.org/trac10/ticket/8022 <p> gcc version 4.7.2 (Built by MinGW-builds project) i686-w64-mingw32 </p> <p> yields </p> <pre class="wiki">/boost/property_tree/detail/json_parser_read.hpp: In instantiation of 'void boost::property_tree::json_parser::context&lt;Ptree&gt;::a_char::operator()(boost::property_tree::json_parser::context&lt;Ptree&gt;::It, boost::property_tree::json_parser::context&lt;Ptree&gt;::It) const [with Ptree = boost::property_tree::basic_ptree&lt;std::basic_string&lt;char&gt;, std::basic_string&lt;char&gt; &gt;; boost::property_tree::json_parser::context&lt;Ptree&gt;::It = __gnu_cxx::__normal_iterator&lt;char*, std::vector&lt;char, std::allocator&lt;char&gt; &gt; &gt;]': boost/spirit/home/classic/core/scanner/scanner.hpp:148:13: required from 'static void boost::spirit::classic::attributed_action_policy&lt;boost::spirit::classic::nil_t&gt;::call(const ActorT&amp;, boost::spirit::classic::nil_t, const IteratorT&amp;, const IteratorT&amp;) [with ActorT = boost::property_tree::json_parser::context&lt;boost::property_tree::basic_ptree&lt;std::basic_string&lt;char&gt;, std::basic_string&lt;char&gt; &gt; &gt;::a_char; IteratorT = __gnu_cxx::__normal_iterator&lt;char*, std::vector&lt;char, std::allocator&lt;char&gt; &gt; &gt;]' boost/spirit/home/classic/core/scanner/scanner.hpp:163:13: required from 'void boost::spirit::classic::action_policy::do_action(const ActorT&amp;, AttrT&amp;, const IteratorT&amp;, const IteratorT&amp;) const [with ActorT = boost::property_tree::json_parser::context&lt;boost::property_tree::basic_ptree&lt;std::basic_string&lt;char&gt;, std::basic_string&lt;char&gt; &gt; &gt;::a_char; AttrT = boost::spirit::classic::nil_t; IteratorT = __gnu_cxx::__normal_iterator&lt;char*, std::vector&lt;char, std::allocator&lt;char&gt; &gt; &gt;]' boost/spirit/home/classic/core/composite/actions.hpp:116:17: required from 'typename boost::spirit::classic::parser_result&lt;boost::spirit::classic::action&lt;ParserT, ActionT&gt;, ScannerT&gt;::type boost::spirit::classic::action&lt;ParserT, ActionT&gt;::parse(const ScannerT&amp;) const [with ScannerT = boost::spirit::classic::scanner&lt;__gnu_cxx::__normal_iterator&lt;char*, std::vector&lt;char, std::allocator&lt;char&gt; &gt; &gt;, boost::spirit::classic::scanner_policies&lt;boost::spirit::classic::no_skipper_iteration_policy&lt;boost::spirit::classic::skip_parser_iteration_policy&lt;boost::spirit::classic::alternative&lt;boost::spirit::classic::alternative&lt;boost::spirit::classic::space_parser, boost::spirit::classic::confix_parser&lt;boost::spirit::classic::strlit&lt;const char*&gt;, boost::spirit::classic::kleene_star&lt;boost::spirit::classic::anychar_parser&gt;, boost::spirit::classic::alternative&lt;boost::spirit::classic::eol_parser, boost::spirit::classic::end_parser&gt;, boost::spirit::classic::unary_parser_category, boost::spirit::classic::non_nested, boost::spirit::classic::is_lexeme&gt; &gt;, boost::spirit::classic::confix_parser&lt;boost::spirit::classic::strlit&lt;const char*&gt;, boost::spirit::classic::kleene_star&lt;boost::spirit::classic::anychar_parser&gt;, boost::spirit::classic::strlit&lt;const char*&gt;, boost::spirit::classic::unary_parser_category, boost::spirit::classic::non_nested, boost::spirit::classic::is_lexeme&gt; &gt;, boost::spirit::classic::iteration_policy&gt; &gt;, boost::spirit::classic::match_policy, boost::spirit::classic::action_policy&gt; &gt;; ParserT = boost::spirit::classic::difference&lt;boost::spirit::classic::difference&lt;boost::spirit::classic::anychar_parser, boost::spirit::classic::strlit&lt;const char*&gt; &gt;, boost::spirit::classic::strlit&lt;const char*&gt; &gt;; ActionT = boost::property_tree::json_parser::context&lt;boost::property_tree::basic_ptree&lt;std::basic_string&lt;char&gt;, std::basic_string&lt;char&gt; &gt; &gt;::a_char; typename boost::spirit::classic::parser_result&lt;boost::spirit::classic::action&lt;ParserT, ActionT&gt;, ScannerT&gt;::type = boost::spirit::classic::match&lt;boost::spirit::classic::nil_t&gt;]' boost/spirit/home/classic/core/composite/alternative.hpp:67:59: required from 'typename boost::spirit::classic::parser_result&lt;boost::spirit::classic::alternative&lt;A, B&gt;, ScannerT&gt;::type boost::spirit::classic::alternative&lt;A, B&gt;::parse(const ScannerT&amp;) const [with ScannerT = boost::spirit::classic::scanner&lt;__gnu_cxx::__normal_iterator&lt;char*, std::vector&lt;char, std::allocator&lt;char&gt; &gt; &gt;, boost::spirit::classic::scanner_policies&lt;boost::spirit::classic::no_skipper_iteration_policy&lt;boost::spirit::classic::skip_parser_iteration_policy&lt;boost::spirit::classic::alternative&lt;boost::spirit::classic::alternative&lt;boost::spirit::classic::space_parser, boost::spirit::classic::confix_parser&lt;boost::spirit::classic::strlit&lt;const char*&gt;, boost::spirit::classic::kleene_star&lt;boost::spirit::classic::anychar_parser&gt;, boost::spirit::classic::alternative&lt;boost::spirit::classic::eol_parser, boost::spirit::classic::end_parser&gt;, boost::spirit::classic::unary_parser_category, boost::spirit::classic::non_nested, boost::spirit::classic::is_lexeme&gt; &gt;, boost::spirit::classic::confix_parser&lt;boost::spirit::classic::strlit&lt;const char*&gt;, boost::spirit::classic::kleene_star&lt;boost::spirit::classic::anychar_parser&gt;, boost::spirit::classic::strlit&lt;const char*&gt;, boost::spirit::classic::unary_parser_category, boost::spirit::classic::non_nested, boost::spirit::classic::is_lexeme&gt; &gt;, boost::spirit::classic::iteration_policy&gt; &gt;, boost::spirit::classic::match_policy, boost::spirit::classic::action_policy&gt; &gt;; A = boost::spirit::classic::action&lt;boost::spirit::classic::difference&lt;boost::spirit::classic::difference&lt;boost::spirit::classic::anychar_parser, boost::spirit::classic::strlit&lt;const char*&gt; &gt;, boost::spirit::classic::strlit&lt;const char*&gt; &gt;, boost::property_tree::json_parser::context&lt;boost::property_tree::basic_ptree&lt;std::basic_string&lt;char&gt;, std::basic_string&lt;char&gt; &gt; &gt;::a_char&gt;; B = boost::spirit::classic::sequence&lt;boost::spirit::classic::chlit&lt;char&gt;, boost::spirit::classic::assertive_parser&lt;std::basic_string&lt;char&gt;, boost::spirit::classic::rule&lt;boost::spirit::classic::scanner&lt;__gnu_cxx::__normal_iterator&lt;char*, std::vector&lt;char, std::allocator&lt;char&gt; &gt; &gt;, boost::spirit::classic::scanner_policies&lt;boost::spirit::classic::no_skipper_iteration_policy&lt;boost::spirit::classic::skip_parser_iteration_policy&lt;boost::spirit::classic::alternative&lt;boost::spirit::classic::alternative&lt;boost::spirit::classic::space_parser, boost::spirit::classic::confix_parser&lt;boost::spirit::classic::strlit&lt;const char*&gt;, boost::spirit::classic::kleene_star&lt;boost::spirit::classic::anychar_parser&gt;, boost::spirit::classic::alternative&lt;boost::spirit::classic::eol_parser, boost::spirit::classic::end_parser&gt;, boost::spirit::classic::unary_parser_category, boost::spirit::classic::non_nested, boost::spirit::classic::is_lexeme&gt; &gt;, boost::spirit::classic::confix_parser&lt;boost::spirit::classic::strlit&lt;const char*&gt;, boost::spirit::classic::kleene_star&lt;boost::spirit::classic::anychar_parser&gt;, boost::spirit::classic::strlit&lt;const char*&gt;, boost::spirit::classic::unary_parser_category, boost::spirit::classic::non_nested, boost::spirit::classic::is_lexeme&gt; &gt;, boost::spirit::classic::iteration_policy&gt; &gt;, boost::spirit::classic::match_policy, boost::spirit::classic::action_policy&gt; &gt;, boost::spirit::classic::nil_t, boost::spirit::classic::nil_t&gt; &gt; &gt;; typename boost::spirit::classic::parser_result&lt;boost::spirit::classic::alternative&lt;A, B&gt;, ScannerT&gt;::type = boost::spirit::classic::match&lt;boost::spirit::classic::nil_t&gt;]' boost/spirit/home/classic/core/non_terminal/impl/rule.ipp:240:36: required from 'typename boost::spirit::classic::match_result&lt;ScannerT, ContextResultT&gt;::type boost::spirit::classic::impl::concrete_parser&lt;ParserT, ScannerT, AttrT&gt;::do_parse_virtual(const ScannerT&amp;) const [with ParserT = boost::spirit::classic::alternative&lt;boost::spirit::classic::action&lt;boost::spirit::classic::difference&lt;boost::spirit::classic::difference&lt;boost::spirit::classic::anychar_parser, boost::spirit::classic::strlit&lt;const char*&gt; &gt;, boost::spirit::classic::strlit&lt;const char*&gt; &gt;, boost::property_tree::json_parser::context&lt;boost::property_tree::basic_ptree&lt;std::basic_string&lt;char&gt;, std::basic_string&lt;char&gt; &gt; &gt;::a_char&gt;, boost::spirit::classic::sequence&lt;boost::spirit::classic::chlit&lt;char&gt;, boost::spirit::classic::assertive_parser&lt;std::basic_string&lt;char&gt;, boost::spirit::classic::rule&lt;boost::spirit::classic::scanner&lt;__gnu_cxx::__normal_iterator&lt;char*, std::vector&lt;char, std::allocator&lt;char&gt; &gt; &gt;, boost::spirit::classic::scanner_policies&lt;boost::spirit::classic::no_skipper_iteration_policy&lt;boost::spirit::classic::skip_parser_iteration_policy&lt;boost::spirit::classic::alternative&lt;boost::spirit::classic::alternative&lt;boost::spirit::classic::space_parser, boost::spirit::classic::confix_parser&lt;boost::spirit::classic::strlit&lt;const char*&gt;, boost::spirit::classic::kleene_star&lt;boost::spirit::classic::anychar_parser&gt;, boost::spirit::classic::alternative&lt;boost::spirit::classic::eol_parser, boost::spirit::classic::end_parser&gt;, boost::spirit::classic::unary_parser_category, boost::spirit::classic::non_nested, boost::spirit::classic::is_lexeme&gt; &gt;, boost::spirit::classic::confix_parser&lt;boost::spirit::classic::strlit&lt;const char*&gt;, boost::spirit::classic::kleene_star&lt;boost::spirit::classic::anychar_parser&gt;, boost::spirit::classic::strlit&lt;const char*&gt;, boost::spirit::classic::unary_parser_category, boost::spirit::classic::non_nested, boost::spirit::classic::is_lexeme&gt; &gt;, boost::spirit::classic::iteration_policy&gt; &gt;, boost::spirit::classic::match_policy, boost::spirit::classic::action_policy&gt; &gt;, boost::spirit::classic::nil_t, boost::spirit::classic::nil_t&gt; &gt; &gt; &gt;; ScannerT = boost::spirit::classic::scanner&lt;__gnu_cxx::__normal_iterator&lt;char*, std::vector&lt;char, std::allocator&lt;char&gt; &gt; &gt;, boost::spirit::classic::scanner_policies&lt;boost::spirit::classic::no_skipper_iteration_policy&lt;boost::spirit::classic::skip_parser_iteration_policy&lt;boost::spirit::classic::alternative&lt;boost::spirit::classic::alternative&lt;boost::spirit::classic::space_parser, boost::spirit::classic::confix_parser&lt;boost::spirit::classic::strlit&lt;const char*&gt;, boost::spirit::classic::kleene_star&lt;boost::spirit::classic::anychar_parser&gt;, boost::spirit::classic::alternative&lt;boost::spirit::classic::eol_parser, boost::spirit::classic::end_parser&gt;, boost::spirit::classic::unary_parser_category, boost::spirit::classic::non_nested, boost::spirit::classic::is_lexeme&gt; &gt;, boost::spirit::classic::confix_parser&lt;boost::spirit::classic::strlit&lt;const char*&gt;, boost::spirit::classic::kleene_star&lt;boost::spirit::classic::anychar_parser&gt;, boost::spirit::classic::strlit&lt;const char*&gt;, boost::spirit::classic::unary_parser_category, boost::spirit::classic::non_nested, boost::spirit::classic::is_lexeme&gt; &gt;, boost::spirit::classic::iteration_policy&gt; &gt;, boost::spirit::classic::match_policy, boost::spirit::classic::action_policy&gt; &gt;; AttrT = boost::spirit::classic::nil_t; typename boost::spirit::classic::match_result&lt;ScannerT, ContextResultT&gt;::type = boost::spirit::classic::match&lt;boost::spirit::classic::nil_t&gt;]' main.cpp:14:1: required from here boost/property_tree/detail/json_parser_read.hpp:116:18: warning: unused parameter 'e' [-Wunused-parameter] 116: void operator()(It b, It e) const </pre> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/8022 Trac 1.4.3 Shane Turner <shane.turner@…> Tue, 12 Feb 2013 14:38:46 GMT <link>https://svn.boost.org/trac10/ticket/8022#comment:1 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/8022#comment:1</guid> <description> <p> This is a duplicate of <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/6582" title="#6582: Bugs: Remove unused parameter warning in property tree json parser (closed: fixed)">#6582</a>. </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Mateusz Loskot</dc:creator> <pubDate>Thu, 18 Jul 2013 08:36:05 GMT</pubDate> <title>description changed; cc set https://svn.boost.org/trac10/ticket/8022#comment:2 https://svn.boost.org/trac10/ticket/8022#comment:2 <ul> <li><strong>cc</strong> <span class="trac-author">mateusz@…</span> added </li> <li><strong>description</strong> modified (<a href="/trac10/ticket/8022?action=diff&amp;version=2">diff</a>) </li> </ul> Ticket shane.turner@… Fri, 04 Oct 2013 14:18:42 GMT <link>https://svn.boost.org/trac10/ticket/8022#comment:3 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/8022#comment:3</guid> <description> <p> Is there any chance that this can be fixed in Boost 1.55.0? </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Sebastian Redl</dc:creator> <pubDate>Mon, 10 Feb 2014 16:19:55 GMT</pubDate> <title>status changed; resolution set https://svn.boost.org/trac10/ticket/8022#comment:4 https://svn.boost.org/trac10/ticket/8022#comment:4 <ul> <li><strong>status</strong> <span class="trac-field-old">new</span> → <span class="trac-field-new">closed</span> </li> <li><strong>resolution</strong> → <span class="trac-field-new">duplicate</span> </li> </ul> Ticket