<?xml version="1.0" encoding="UTF-8" ?>

<bugzilla version="5.2"
          urlbase="https://bugzilla.altlinux.org/"
          
          maintainer="jenya@basealt.ru"
>

    <bug>
          <bug_id>15718</bug_id>
          
          <creation_ts>2008-05-19 20:11:24 +0400</creation_ts>
          <short_desc>boost::spirit example program produce many warnings when compiled with -Wshadow option</short_desc>
          <delta_ts>2008-10-24 20:52:09 +0400</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>boost-devel</component>
          <version>unstable</version>
          <rep_platform>all</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>http://www.nabble.com/boost%3A%3Aspirit-example-program-produce-many-warnings-when-compiled-with--Wshadow-option-to17324157.html</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>patch</keywords>
          <priority>P2</priority>
          <bug_severity>minor</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Slava Semushin">php-coder</reporter>
          <assigned_to name="Ivan A. Melnikov">iv</assigned_to>
          <cc>iv</cc>
    
    <cc>sem</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>70239</commentid>
    <comment_count>0</comment_count>
    <who name="Slava Semushin">php-coder</who>
    <bug_when>2008-05-19 20:11:24 +0400</bug_when>
    <thetext>I have following stuff:

boost-devel-1.34.1-alt1
gcc4.1-c++-4.1.2-alt2

When I compile simple code with -Wshadow flag I got many warnings:

/usr/include/boost/spirit/core/scanner/scanner.hpp: In member function &apos;bool
boost::spirit::scanner&lt;IteratorT, PoliciesT&gt;::at_end() const [with IteratorT =
const char*, PoliciesT =
boost::spirit::scanner_policies&lt;boost::spirit::skip_parser_iteration_policy&lt;boost::spirit::nothing_parser,
boost::spirit::iteration_policy&gt;, boost::spirit::match_policy,
boost::spirit::action_policy&gt;]&apos;:
/usr/include/boost/spirit/core/scanner/scanner.hpp:233:   instantiated from
&apos;boost::spirit::scanner&lt;IteratorT, PoliciesT&gt;::scanner(IteratorT&amp;, typename
boost::call_traits&lt;IteratorT&gt;::param_type, const PoliciesT&amp;) [with IteratorT =
const char*, PoliciesT =
boost::spirit::scanner_policies&lt;boost::spirit::skip_parser_iteration_policy&lt;boost::spirit::nothing_parser,
boost::spirit::iteration_policy&gt;, boost::spirit::match_policy,
boost::spirit::action_policy&gt;]&apos;
/usr/include/boost/spirit/core/scanner/impl/skipper.ipp:106:   instantiated from
&apos;static boost::spirit::parse_info&lt;IteratorT&gt;
boost::spirit::impl::phrase_parser&lt;SkipT&gt;::parse(const IteratorT&amp;, const
IteratorT&amp;, const ParserT&amp;, const SkipT&amp;) [with IteratorT = const char*, ParserT
=
boost::spirit::sequence&lt;boost::spirit::sequence&lt;boost::spirit::kleene_star&lt;boost::spirit::blank_parser&gt;,
boost::spirit::chlit&lt;char&gt; &gt;,
boost::spirit::kleene_star&lt;boost::spirit::blank_parser&gt; &gt;, SkipT =
boost::spirit::nothing_parser]&apos;
/usr/include/boost/spirit/core/scanner/impl/skipper.ipp:153:   instantiated from
&apos;boost::spirit::parse_info&lt;IteratorT&gt; boost::spirit::parse(const IteratorT&amp;,
const IteratorT&amp;, const boost::spirit::parser&lt;DerivedT&gt;&amp;, const
boost::spirit::parser&lt;SkipT&gt;&amp;) [with IteratorT = const char*, ParserT =
boost::spirit::sequence&lt;boost::spirit::sequence&lt;boost::spirit::kleene_star&lt;boost::spirit::blank_parser&gt;,
boost::spirit::chlit&lt;char&gt; &gt;,
boost::spirit::kleene_star&lt;boost::spirit::blank_parser&gt; &gt;, SkipT =
boost::spirit::nothing_parser]&apos;
/usr/include/boost/spirit/core/scanner/impl/skipper.ipp:171:   instantiated from
&apos;boost::spirit::parse_info&lt;const CharT*&gt; boost::spirit::parse(const CharT*,
const boost::spirit::parser&lt;DerivedT&gt;&amp;, const boost::spirit::parser&lt;SkipT&gt;&amp;)
[with CharT = char, ParserT =
boost::spirit::sequence&lt;boost::spirit::sequence&lt;boost::spirit::kleene_star&lt;boost::spirit::blank_parser&gt;,
boost::spirit::chlit&lt;char&gt; &gt;,
boost::spirit::kleene_star&lt;boost::spirit::blank_parser&gt; &gt;, SkipT =
boost::spirit::nothing_parser]&apos;
boost-test.cc:8:   instantiated from here
/usr/include/boost/spirit/core/scanner/scanner.hpp:245: warning: declaration of
&apos;iteration_policy_t&apos; shadows a member of &apos;this&apos;
/usr/include/boost/spirit/core/scanner/scanner.hpp: In member function &apos;typename
boost::detail::iterator_traits&lt;IteratorT&gt;::value_type
boost::spirit::scanner&lt;IteratorT, PoliciesT&gt;::operator*() const [with IteratorT
= const char*, PoliciesT =
boost::spirit::scanner_policies&lt;boost::spirit::skip_parser_iteration_policy&lt;boost::spirit::nothing_parser,
boost::spirit::iteration_policy&gt;, boost::spirit::match_policy,
boost::spirit::action_policy&gt;]&apos;:
/usr/include/boost/spirit/core/primitives/primitives.hpp:53:   instantiated from
&apos;typename boost::spirit::parser_result&lt;DerivedT, ScannerT&gt;::type
boost::spirit::char_parser&lt;DrivedT&gt;::parse(const ScannerT&amp;) const [with ScannerT
= boost::spirit::scanner&lt;const char*,
boost::spirit::scanner_policies&lt;boost::spirit::skip_parser_iteration_policy&lt;boost::spirit::nothing_parser,
boost::spirit::iteration_policy&gt;, boost::spirit::match_policy,
boost::spirit::action_policy&gt; &gt;, DerivedT = boost::spirit::chlit&lt;char&gt;]&apos;
/usr/include/boost/spirit/core/composite/sequence.hpp:54:   instantiated from
&apos;typename boost::spirit::parser_result&lt;boost::spirit::sequence&lt;A, B&gt;,
ScannerT&gt;::type boost::spirit::sequence&lt;A, B&gt;::parse(const ScannerT&amp;) const
[with ScannerT = boost::spirit::scanner&lt;const char*,
boost::spirit::scanner_policies&lt;boost::spirit::skip_parser_iteration_policy&lt;boost::spirit::nothing_parser,
boost::spirit::iteration_policy&gt;, boost::spirit::match_policy,
boost::spirit::action_policy&gt; &gt;, A =
boost::spirit::kleene_star&lt;boost::spirit::blank_parser&gt;, B =
boost::spirit::chlit&lt;char&gt;]&apos;
/usr/include/boost/spirit/core/composite/sequence.hpp:53:   instantiated from
&apos;typename boost::spirit::parser_result&lt;boost::spirit::sequence&lt;A, B&gt;,
ScannerT&gt;::type boost::spirit::sequence&lt;A, B&gt;::parse(const ScannerT&amp;) const
[with ScannerT = boost::spirit::scanner&lt;const char*,
boost::spirit::scanner_policies&lt;boost::spirit::skip_parser_iteration_policy&lt;boost::spirit::nothing_parser,
boost::spirit::iteration_policy&gt;, boost::spirit::match_policy,
boost::spirit::action_policy&gt; &gt;, A =
boost::spirit::sequence&lt;boost::spirit::kleene_star&lt;boost::spirit::blank_parser&gt;,
boost::spirit::chlit&lt;char&gt; &gt;, B =
boost::spirit::kleene_star&lt;boost::spirit::blank_parser&gt;]&apos;
/usr/include/boost/spirit/core/scanner/impl/skipper.ipp:107:   instantiated from
&apos;static boost::spirit::parse_info&lt;IteratorT&gt;
boost::spirit::impl::phrase_parser&lt;SkipT&gt;::parse(const IteratorT&amp;, const
IteratorT&amp;, const ParserT&amp;, const SkipT&amp;) [with IteratorT = const char*, ParserT
=
boost::spirit::sequence&lt;boost::spirit::sequence&lt;boost::spirit::kleene_star&lt;boost::spirit::blank_parser&gt;,
boost::spirit::chlit&lt;char&gt; &gt;,
boost::spirit::kleene_star&lt;boost::spirit::blank_parser&gt; &gt;, SkipT =
boost::spirit::nothing_parser]&apos;
/usr/include/boost/spirit/core/scanner/impl/skipper.ipp:153:   instantiated from
&apos;boost::spirit::parse_info&lt;IteratorT&gt; boost::spirit::parse(const IteratorT&amp;,
const IteratorT&amp;, const boost::spirit::parser&lt;DerivedT&gt;&amp;, const
boost::spirit::parser&lt;SkipT&gt;&amp;) [with IteratorT = const char*, ParserT =
boost::spirit::sequence&lt;boost::spirit::sequence&lt;boost::spirit::kleene_star&lt;boost::spirit::blank_parser&gt;,
boost::spirit::chlit&lt;char&gt; &gt;,
boost::spirit::kleene_star&lt;boost::spirit::blank_parser&gt; &gt;, SkipT =
boost::spirit::nothing_parser]&apos;
/usr/include/boost/spirit/core/scanner/impl/skipper.ipp:171:   instantiated from
&apos;boost::spirit::parse_info&lt;const CharT*&gt; boost::spirit::parse(const CharT*,
const boost::spirit::parser&lt;DerivedT&gt;&amp;, const boost::spirit::parser&lt;SkipT&gt;&amp;)
[with CharT = char, ParserT =
boost::spirit::sequence&lt;boost::spirit::sequence&lt;boost::spirit::kleene_star&lt;boost::spirit::blank_parser&gt;,
boost::spirit::chlit&lt;char&gt; &gt;,
boost::spirit::kleene_star&lt;boost::spirit::blank_parser&gt; &gt;, SkipT =
boost::spirit::nothing_parser]&apos;
boost-test.cc:8:   instantiated from here
/usr/include/boost/spirit/core/scanner/scanner.hpp:252: warning: declaration of
&apos;iteration_policy_t&apos; shadows a member of &apos;this&apos;
/usr/include/boost/spirit/core/impl/match.ipp: In constructor
&apos;boost::spirit::match&lt;T&gt;::match(size_t, typename
boost::optional&lt;T&gt;::argument_type) [with T = char]&apos;:
/usr/include/boost/spirit/core/scanner/scanner.hpp:86:   instantiated from
&apos;boost::spirit::match&lt;T&gt; boost::spirit::match_policy::create_match(size_t, const
AttrT&amp;, const IteratorT&amp;, const IteratorT&amp;) const [with AttrT = char, IteratorT
= const char*]&apos;
/usr/include/boost/spirit/core/primitives/primitives.hpp:58:   instantiated from
&apos;typename boost::spirit::parser_result&lt;DerivedT, ScannerT&gt;::type
boost::spirit::char_parser&lt;DrivedT&gt;::parse(const ScannerT&amp;) const [with ScannerT
= boost::spirit::scanner&lt;const char*,
boost::spirit::scanner_policies&lt;boost::spirit::skip_parser_iteration_policy&lt;boost::spirit::nothing_parser,
boost::spirit::iteration_policy&gt;, boost::spirit::match_policy,
boost::spirit::action_policy&gt; &gt;, DerivedT = boost::spirit::chlit&lt;char&gt;]&apos;
/usr/include/boost/spirit/core/composite/sequence.hpp:54:   instantiated from
&apos;typename boost::spirit::parser_result&lt;boost::spirit::sequence&lt;A, B&gt;,
ScannerT&gt;::type boost::spirit::sequence&lt;A, B&gt;::parse(const ScannerT&amp;) const
[with ScannerT = boost::spirit::scanner&lt;const char*,
boost::spirit::scanner_policies&lt;boost::spirit::skip_parser_iteration_policy&lt;boost::spirit::nothing_parser,
boost::spirit::iteration_policy&gt;, boost::spirit::match_policy,
boost::spirit::action_policy&gt; &gt;, A =
boost::spirit::kleene_star&lt;boost::spirit::blank_parser&gt;, B =
boost::spirit::chlit&lt;char&gt;]&apos;
/usr/include/boost/spirit/core/composite/sequence.hpp:53:   instantiated from
&apos;typename boost::spirit::parser_result&lt;boost::spirit::sequence&lt;A, B&gt;,
ScannerT&gt;::type boost::spirit::sequence&lt;A, B&gt;::parse(const ScannerT&amp;) const
[with ScannerT = boost::spirit::scanner&lt;const char*,
boost::spirit::scanner_policies&lt;boost::spirit::skip_parser_iteration_policy&lt;boost::spirit::nothing_parser,
boost::spirit::iteration_policy&gt;, boost::spirit::match_policy,
boost::spirit::action_policy&gt; &gt;, A =
boost::spirit::sequence&lt;boost::spirit::kleene_star&lt;boost::spirit::blank_parser&gt;,
boost::spirit::chlit&lt;char&gt; &gt;, B =
boost::spirit::kleene_star&lt;boost::spirit::blank_parser&gt;]&apos;
/usr/include/boost/spirit/core/scanner/impl/skipper.ipp:107:   instantiated from
&apos;static boost::spirit::parse_info&lt;IteratorT&gt;
boost::spirit::impl::phrase_parser&lt;SkipT&gt;::parse(const IteratorT&amp;, const
IteratorT&amp;, const ParserT&amp;, const SkipT&amp;) [with IteratorT = const char*, ParserT
=
boost::spirit::sequence&lt;boost::spirit::sequence&lt;boost::spirit::kleene_star&lt;boost::spirit::blank_parser&gt;,
boost::spirit::chlit&lt;char&gt; &gt;,
boost::spirit::kleene_star&lt;boost::spirit::blank_parser&gt; &gt;, SkipT =
boost::spirit::nothing_parser]&apos;
/usr/include/boost/spirit/core/scanner/impl/skipper.ipp:153:   instantiated from
&apos;boost::spirit::parse_info&lt;IteratorT&gt; boost::spirit::parse(const IteratorT&amp;,
const IteratorT&amp;, const boost::spirit::parser&lt;DerivedT&gt;&amp;, const
boost::spirit::parser&lt;SkipT&gt;&amp;) [with IteratorT = const char*, ParserT =
boost::spirit::sequence&lt;boost::spirit::sequence&lt;boost::spirit::kleene_star&lt;boost::spirit::blank_parser&gt;,
boost::spirit::chlit&lt;char&gt; &gt;,
boost::spirit::kleene_star&lt;boost::spirit::blank_parser&gt; &gt;, SkipT =
boost::spirit::nothing_parser]&apos;
/usr/include/boost/spirit/core/scanner/impl/skipper.ipp:171:   instantiated from
&apos;boost::spirit::parse_info&lt;const CharT*&gt; boost::spirit::parse(const CharT*,
const boost::spirit::parser&lt;DerivedT&gt;&amp;, const boost::spirit::parser&lt;SkipT&gt;&amp;)
[with CharT = char, ParserT =
boost::spirit::sequence&lt;boost::spirit::sequence&lt;boost::spirit::kleene_star&lt;boost::spirit::blank_parser&gt;,
boost::spirit::chlit&lt;char&gt; &gt;,
boost::spirit::kleene_star&lt;boost::spirit::blank_parser&gt; &gt;, SkipT =
boost::spirit::nothing_parser]&apos;
boost-test.cc:8:   instantiated from here
/usr/include/boost/spirit/core/impl/match.ipp:24: warning: declaration of
&apos;length&apos; shadows a member of &apos;this&apos;
/usr/include/boost/spirit/core/scanner/scanner.hpp: In member function &apos;bool
boost::spirit::scanner&lt;IteratorT, PoliciesT&gt;::at_end() const [with IteratorT =
const char*, PoliciesT =
boost::spirit::scanner_policies&lt;boost::spirit::no_skipper_iteration_policy&lt;boost::spirit::skip_parser_iteration_policy&lt;boost::spirit::nothing_parser,
boost::spirit::iteration_policy&gt; &gt;, boost::spirit::match_policy,
boost::spirit::action_policy&gt;]&apos;:
/usr/include/boost/spirit/core/scanner/scanner.hpp:233:   instantiated from
&apos;boost::spirit::scanner&lt;IteratorT, PoliciesT&gt;::scanner(IteratorT&amp;, typename
boost::call_traits&lt;IteratorT&gt;::param_type, const PoliciesT&amp;) [with IteratorT =
const char*, PoliciesT =
boost::spirit::scanner_policies&lt;boost::spirit::no_skipper_iteration_policy&lt;boost::spirit::skip_parser_iteration_policy&lt;boost::spirit::nothing_parser,
boost::spirit::iteration_policy&gt; &gt;, boost::spirit::match_policy,
boost::spirit::action_policy&gt;]&apos;
/usr/include/boost/spirit/core/scanner/impl/skipper.ipp:36:   instantiated from
&apos;void boost::spirit::impl::skipper_skip(const ST&amp;, const ScannerT&amp;, const
boost::spirit::skipper_iteration_policy&lt;BaseT&gt;&amp;) [with ST =
boost::spirit::nothing_parser, ScannerT = boost::spirit::scanner&lt;const char*,
boost::spirit::scanner_policies&lt;boost::spirit::skip_parser_iteration_policy&lt;boost::spirit::nothing_parser,
boost::spirit::iteration_policy&gt;, boost::spirit::match_policy,
boost::spirit::action_policy&gt; &gt;, BaseT = boost::spirit::iteration_policy]&apos;
/usr/include/boost/spirit/core/scanner/skipper.hpp:135:   instantiated from
&apos;void boost::spirit::skip_parser_iteration_policy&lt;ParserT, BaseT&gt;::skip(const
ScannerT&amp;) const [with ScannerT = boost::spirit::scanner&lt;const char*,
boost::spirit::scanner_policies&lt;boost::spirit::skip_parser_iteration_policy&lt;boost::spirit::nothing_parser,
boost::spirit::iteration_policy&gt;, boost::spirit::match_policy,
boost::spirit::action_policy&gt; &gt;, ParserT = boost::spirit::nothing_parser, BaseT
= boost::spirit::iteration_policy]&apos;
/usr/include/boost/spirit/core/scanner/skipper.hpp:51:   instantiated from &apos;bool
boost::spirit::skipper_iteration_policy&lt;BaseT&gt;::at_end(const ScannerT&amp;) const
[with ScannerT = boost::spirit::scanner&lt;const char*,
boost::spirit::scanner_policies&lt;boost::spirit::skip_parser_iteration_policy&lt;boost::spirit::nothing_parser,
boost::spirit::iteration_policy&gt;, boost::spirit::match_policy,
boost::spirit::action_policy&gt; &gt;, BaseT = boost::spirit::iteration_policy]&apos;
/usr/include/boost/spirit/core/scanner/scanner.hpp:246:   instantiated from
&apos;bool boost::spirit::scanner&lt;IteratorT, PoliciesT&gt;::at_end() const [with
IteratorT = const char*, PoliciesT =
boost::spirit::scanner_policies&lt;boost::spirit::skip_parser_iteration_policy&lt;boost::spirit::nothing_parser,
boost::spirit::iteration_policy&gt;, boost::spirit::match_policy,
boost::spirit::action_policy&gt;]&apos;
/usr/include/boost/spirit/core/scanner/scanner.hpp:233:   instantiated from
&apos;boost::spirit::scanner&lt;IteratorT, PoliciesT&gt;::scanner(IteratorT&amp;, typename
boost::call_traits&lt;IteratorT&gt;::param_type, const PoliciesT&amp;) [with IteratorT =
const char*, PoliciesT =
boost::spirit::scanner_policies&lt;boost::spirit::skip_parser_iteration_policy&lt;boost::spirit::nothing_parser,
boost::spirit::iteration_policy&gt;, boost::spirit::match_policy,
boost::spirit::action_policy&gt;]&apos;
/usr/include/boost/spirit/core/scanner/impl/skipper.ipp:106:   instantiated from
&apos;static boost::spirit::parse_info&lt;IteratorT&gt;
boost::spirit::impl::phrase_parser&lt;SkipT&gt;::parse(const IteratorT&amp;, const
IteratorT&amp;, const ParserT&amp;, const SkipT&amp;) [with IteratorT = const char*, ParserT
=
boost::spirit::sequence&lt;boost::spirit::sequence&lt;boost::spirit::kleene_star&lt;boost::spirit::blank_parser&gt;,
boost::spirit::chlit&lt;char&gt; &gt;,
boost::spirit::kleene_star&lt;boost::spirit::blank_parser&gt; &gt;, SkipT =
boost::spirit::nothing_parser]&apos;
/usr/include/boost/spirit/core/scanner/impl/skipper.ipp:153:   instantiated from
&apos;boost::spirit::parse_info&lt;IteratorT&gt; boost::spirit::parse(const IteratorT&amp;,
const IteratorT&amp;, const boost::spirit::parser&lt;DerivedT&gt;&amp;, const
boost::spirit::parser&lt;SkipT&gt;&amp;) [with IteratorT = const char*, ParserT =
boost::spirit::sequence&lt;boost::spirit::sequence&lt;boost::spirit::kleene_star&lt;boost::spirit::blank_parser&gt;,
boost::spirit::chlit&lt;char&gt; &gt;,
boost::spirit::kleene_star&lt;boost::spirit::blank_parser&gt; &gt;, SkipT =
boost::spirit::nothing_parser]&apos;
/usr/include/boost/spirit/core/scanner/impl/skipper.ipp:171:   instantiated from
&apos;boost::spirit::parse_info&lt;const CharT*&gt; boost::spirit::parse(const CharT*,
const boost::spirit::parser&lt;DerivedT&gt;&amp;, const boost::spirit::parser&lt;SkipT&gt;&amp;)
[with CharT = char, ParserT =
boost::spirit::sequence&lt;boost::spirit::sequence&lt;boost::spirit::kleene_star&lt;boost::spirit::blank_parser&gt;,
boost::spirit::chlit&lt;char&gt; &gt;,
boost::spirit::kleene_star&lt;boost::spirit::blank_parser&gt; &gt;, SkipT =
boost::spirit::nothing_parser]&apos;
boost-test.cc:8:   instantiated from here
/usr/include/boost/spirit/core/scanner/scanner.hpp:245: warning: declaration of
&apos;iteration_policy_t&apos; shadows a member of &apos;this&apos;


Code with trivial example will me attached.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>70240</commentid>
    <comment_count>1</comment_count>
      <attachid>2637</attachid>
    <who name="Slava Semushin">php-coder</who>
    <bug_when>2008-05-19 20:12:41 +0400</bug_when>
    <thetext>Created attachment 2637
Example of code.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>70241</commentid>
    <comment_count>2</comment_count>
    <who name="Slava Semushin">php-coder</who>
    <bug_when>2008-05-19 20:16:06 +0400</bug_when>
    <thetext>P.S. May be it was fixed in boost-1.35 version, I don&apos;t known because doesn&apos;t
have it for testing... :-(</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>70242</commentid>
    <comment_count>3</comment_count>
    <who name="Damir Shayhutdinov">damir</who>
    <bug_when>2008-05-19 20:17:26 +0400</bug_when>
    <thetext>Слава, поговори пожалуйста на эту тему с апстримом, я не настолько силен в С++,
и уж тем более не силен в том надругательстве над С++, которое постоянно делают
авторы boost.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>70243</commentid>
    <comment_count>4</comment_count>
    <who name="Slava Semushin">php-coder</who>
    <bug_when>2008-05-19 20:22:19 +0400</bug_when>
    <thetext>Я так и думал, поэтому и написал на английском, чтобы потом можно было сослаться
на баг :) Я просто думаю, вдруг это в 1.35 исправлено? Я что-то не смог найти у
них в системне контроя версий возможность посмотреть какие изменения
производились с файлом и когда. Ладно. Напишу им в рассылку, пожалуй..</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>70255</commentid>
    <comment_count>5</comment_count>
    <who name="algor">algor</who>
    <bug_when>2008-05-20 09:39:17 +0400</bug_when>
    <thetext>php-coder: как напишешь в рассылку, прицепи сюда линк, плз. чисто поржать.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>70376</commentid>
    <comment_count>6</comment_count>
      <attachid>2638</attachid>
    <who name="Slava Semushin">php-coder</who>
    <bug_when>2008-05-22 12:08:37 +0400</bug_when>
    <thetext>Created attachment 2638
Патч, устраняющий эту проблему.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>70444</commentid>
    <comment_count>7</comment_count>
    <who name="Slava Semushin">php-coder</who>
    <bug_when>2008-05-22 21:16:59 +0400</bug_when>
    <thetext>(In reply to comment #5)
&gt; php-coder: как напишешь в рассылку, прицепи сюда линк, плз. чисто поржать.

http://www.nabble.com/boost%3A%3Aspirit-example-program-produce-many-warnings-when-compiled-with--Wshadow-option-to17324157.html

Можешь ржать: патч &quot;Applied in Boost SVN trunk.&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>79519</commentid>
    <comment_count>8</comment_count>
      <attachid>2992</attachid>
    <who name="Slava Semushin">php-coder</who>
    <bug_when>2008-10-12 22:35:39 +0400</bug_when>
    <thetext>Created attachment 2992
Патч для boost 1.36.0

Странно, похоже, что в буст не полностью патч приняли, потому что варнинги частично всё равно остались. Обновил патч.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>79552</commentid>
    <comment_count>9</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2008-10-13 14:11:22 +0400</bug_when>
    <thetext>Нашёл вот:

http://svn.boost.org/trac/boost/ticket/2304

Приложеный туда патч исправляет ещё несколько подобных потенциальных проблем. Стоит на него посмотреть, а заодно и спросить у апстрима их мнение по этому поводу.

2 php-coder@ : спросите? а то я на spirit-general не подписан...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>79766</commentid>
    <comment_count>10</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2008-10-17 22:31:36 +0400</bug_when>
    <thetext>В сизифе уже лежит boost-1:1.36.0-alt3, где это исправлено. Багу можно закрывать.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>80196</commentid>
    <comment_count>11</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2008-10-24 20:49:04 +0400</bug_when>
    <thetext>Обновил boost до 1.36.0-alt3 из Cизифа, проверил, работает.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>80197</commentid>
    <comment_count>12</comment_count>
    <who name="Slava Semushin">php-coder</who>
    <bug_when>2008-10-24 20:52:09 +0400</bug_when>
    <thetext>(In reply to comment #11)
&gt; Обновил boost до 1.36.0-alt3 из Cизифа, проверил, работает.

Спасибо!!!

</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>2637</attachid>
            <date>2008-05-19 20:12:41 +0400</date>
            <delta_ts>2008-05-19 20:12:41 +0400</delta_ts>
            <desc>Example of code.</desc>
            <filename>boost-test.cc</filename>
            <type>text/plain</type>
            <size>180</size>
            <attacher name="Slava Semushin">php-coder</attacher>
            
              <data encoding="base64">I2luY2x1ZGUgPGJvb3N0L3NwaXJpdC9jb3JlLmhwcD4KCnVzaW5nIG5hbWVzcGFjZSBib29zdDo6
c3Bpcml0OwoKaW50IG1haW4oKSB7CgkKCXBhcnNlX2luZm88PiByZXMgPQoJCXBhcnNlKCIgIyIs
ICgqYmxhbmtfcCA+PiBjaF9wKCcjJykgPj4gKmJsYW5rX3ApLCBub3RoaW5nX3ApOwoJCglyZXR1
cm4gMDsKfQoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>2638</attachid>
            <date>2008-05-22 12:08:37 +0400</date>
            <delta_ts>2008-10-12 22:35:39 +0400</delta_ts>
            <desc>Патч, устраняющий эту проблему.</desc>
            <filename>boost_spirit_shadow_fix.patch</filename>
            <type>text/plain</type>
            <size>1857</size>
            <attacher name="Slava Semushin">php-coder</attacher>
            
              <data encoding="base64">LS0tIC91c3IvaW5jbHVkZS9ib29zdC9zcGlyaXQvY29yZS9pbXBsL21hdGNoLmlwcC5vcmlnCTIw
MDgtMDMtMjMgMjI6MTU6MTkgKzA2MDAKKysrIC91c3IvaW5jbHVkZS9ib29zdC9zcGlyaXQvY29y
ZS9pbXBsL21hdGNoLmlwcAkyMDA4LTA1LTIyIDE1OjAwOjMwICswNzAwCkBAIC0yMSw4ICsyMSw4
IEBAIG5hbWVzcGFjZSBib29zdCB7IG5hbWVzcGFjZSBzcGlyaXQKICAgICA6IGxlbihsZW5ndGgp
LCB2YWwoKSB7fQogCiAgICAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci0gICAgaW5saW5lIG1hdGNo
PFQ+OjptYXRjaChzdGQ6OnNpemVfdCBsZW5ndGgsIGN0b3JfcGFyYW1fdCB2YWxfKQotICAgIDog
bGVuKGxlbmd0aCksIHZhbCh2YWxfKSB7fQorICAgIGlubGluZSBtYXRjaDxUPjo6bWF0Y2goc3Rk
OjpzaXplX3QgbGVuXywgY3Rvcl9wYXJhbV90IHZhbF8pCisgICAgOiBsZW4obGVuXyksIHZhbCh2
YWxfKSB7fQogCiAgICAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+CiAgICAgaW5saW5lIGJvb2wKLS0t
IC91c3IvaW5jbHVkZS9ib29zdC9zcGlyaXQvY29yZS9zY2FubmVyL3NjYW5uZXIuaHBwLm9yaWcJ
MjAwOC0wMy0yMyAyMjoxNToxOSArMDYwMAorKysgL3Vzci9pbmNsdWRlL2Jvb3N0L3NwaXJpdC9j
b3JlL3NjYW5uZXIvc2Nhbm5lci5ocHAJMjAwOC0wNS0yMiAxNTowMDozOSArMDcwMApAQCAtMjQy
LDIyICsyNDIsMjIgQEAgbmFtZXNwYWNlIGJvb3N0IHsgbmFtZXNwYWNlIHNwaXJpdAogICAgICAg
ICBib29sCiAgICAgICAgIGF0X2VuZCgpIGNvbnN0CiAgICAgICAgIHsKLSAgICAgICAgICAgIHR5
cGVkZWYgdHlwZW5hbWUgUG9saWNpZXNUOjppdGVyYXRpb25fcG9saWN5X3QgaXRlcmF0aW9uX3Bv
bGljeV90OwotICAgICAgICAgICAgcmV0dXJuIGl0ZXJhdGlvbl9wb2xpY3lfdDo6YXRfZW5kKCp0
aGlzKTsKKyAgICAgICAgICAgIHR5cGVkZWYgdHlwZW5hbWUgUG9saWNpZXNUOjppdGVyYXRpb25f
cG9saWN5X3QgaXRlcmF0aW9uX3BvbGljeV90X2xvY2FsOworICAgICAgICAgICAgcmV0dXJuIGl0
ZXJhdGlvbl9wb2xpY3lfdF9sb2NhbDo6YXRfZW5kKCp0aGlzKTsKICAgICAgICAgfQogCiAgICAg
ICAgIHZhbHVlX3QKICAgICAgICAgb3BlcmF0b3IqKCkgY29uc3QKICAgICAgICAgewotICAgICAg
ICAgICAgdHlwZWRlZiB0eXBlbmFtZSBQb2xpY2llc1Q6Oml0ZXJhdGlvbl9wb2xpY3lfdCBpdGVy
YXRpb25fcG9saWN5X3Q7Ci0gICAgICAgICAgICByZXR1cm4gaXRlcmF0aW9uX3BvbGljeV90Ojpm
aWx0ZXIoaXRlcmF0aW9uX3BvbGljeV90OjpnZXQoKnRoaXMpKTsKKyAgICAgICAgICAgIHR5cGVk
ZWYgdHlwZW5hbWUgUG9saWNpZXNUOjppdGVyYXRpb25fcG9saWN5X3QgaXRlcmF0aW9uX3BvbGlj
eV90X2xvY2FsOworICAgICAgICAgICAgcmV0dXJuIGl0ZXJhdGlvbl9wb2xpY3lfdF9sb2NhbDo6
ZmlsdGVyKGl0ZXJhdGlvbl9wb2xpY3lfdF9sb2NhbDo6Z2V0KCp0aGlzKSk7CiAgICAgICAgIH0K
IAogICAgICAgICBzY2FubmVyIGNvbnN0JgogICAgICAgICBvcGVyYXRvcisrKCkgY29uc3QKICAg
ICAgICAgewotICAgICAgICAgICAgdHlwZWRlZiB0eXBlbmFtZSBQb2xpY2llc1Q6Oml0ZXJhdGlv
bl9wb2xpY3lfdCBpdGVyYXRpb25fcG9saWN5X3Q7Ci0gICAgICAgICAgICBpdGVyYXRpb25fcG9s
aWN5X3Q6OmFkdmFuY2UoKnRoaXMpOworICAgICAgICAgICAgdHlwZWRlZiB0eXBlbmFtZSBQb2xp
Y2llc1Q6Oml0ZXJhdGlvbl9wb2xpY3lfdCBpdGVyYXRpb25fcG9saWN5X3RfbG9jYWw7CisgICAg
ICAgICAgICBpdGVyYXRpb25fcG9saWN5X3RfbG9jYWw6OmFkdmFuY2UoKnRoaXMpOwogICAgICAg
ICAgICAgcmV0dXJuICp0aGlzOwogICAgICAgICB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>2992</attachid>
            <date>2008-10-12 22:35:39 +0400</date>
            <delta_ts>2008-10-12 22:35:39 +0400</delta_ts>
            <desc>Патч для boost 1.36.0</desc>
            <filename>boost-shadow-fix-1.36.0.patch</filename>
            <type>text/plain</type>
            <size>536</size>
            <attacher name="Slava Semushin">php-coder</attacher>
            
              <data encoding="base64">LS0tIC91c3IvaW5jbHVkZS9ib29zdC9zcGlyaXQvaG9tZS9jbGFzc2ljL2NvcmUvaW1wbC9tYXRj
aC5pcHAub3JpZwkyMDA4LTAzLTIzIDIyOjE1OjE5ICswNjAwCisrKyAvdXNyL2luY2x1ZGUvYm9v
c3Qvc3Bpcml0L2hvbWUvY2xhc3NpYy9jb3JlL2ltcGwvbWF0Y2guaXBwCTIwMDgtMDUtMjIgMTU6
MDA6MzAgKzA3MDAKQEAgLTIzLDggKzIzLDggQEAgbmFtZXNwYWNlIGJvb3N0IHsgbmFtZXNwYWNl
IHNwaXJpdAogICAgIDogbGVuKGxlbmd0aCksIHZhbCgpIHt9CiAKICAgICB0ZW1wbGF0ZSA8dHlw
ZW5hbWUgVD4KLSAgICBpbmxpbmUgbWF0Y2g8VD46Om1hdGNoKHN0ZDo6c2l6ZV90IGxlbmd0aCwg
Y3Rvcl9wYXJhbV90IHZhbF8pCi0gICAgOiBsZW4obGVuZ3RoKSwgdmFsKHZhbF8pIHt9CisgICAg
aW5saW5lIG1hdGNoPFQ+OjptYXRjaChzdGQ6OnNpemVfdCBsZW5fLCBjdG9yX3BhcmFtX3QgdmFs
XykKKyAgICA6IGxlbihsZW5fKSwgdmFsKHZhbF8pIHt9CiAKICAgICB0ZW1wbGF0ZSA8dHlwZW5h
bWUgVD4KICAgICBpbmxpbmUgYm9vbAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>