Re: [Boost-bugs] [Boost C++ Libraries] #7493: compile fail on intel-linux-12.1.3.0x because of bug on explicit bool conversion

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #7493: compile fail on intel-linux-12.1.3.0x because of bug on explicit bool conversion
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2012-10-10 22:44:44


#7493: compile fail on intel-linux-12.1.3.0x because of bug on explicit bool
conversion
---------------------------+------------------------------------------------
  Reporter: viboes | Owner: viboes
      Type: Bugs | Status: assigned
 Milestone: Boost 1.52.0 | Component: chrono
   Version: Boost 1.51.0 | Severity: Problem
Resolution: | Keywords:
---------------------------+------------------------------------------------
Changes (by viboes):

  * status: new => assigned


Old description:

> The following code fail to compile with intel-linux-12.1.3.0x
>

> {{{
> typename std::basic_ostream<CharT, Traits>::sentry opfx(os);
> if (bool(opfx))
> {
> }}}
>
> with the message
>
> {{{
> ../../../boost/chrono/io/duration_io.hpp(130): error: expression must
> have bool type (or be convertible to bool)
> if (opfx)
> }}}
>
> even if sentry defines an explicit bool conversion.
>
> A workaround to this issue is needed.

New description:

 The following code fail to compile with intel-linux-12.1.3.0x


 {{{
           typename std::basic_ostream<CharT, Traits>::sentry opfx(os);
           if (opfx)
           {
 }}}

 with the message

 {{{
 ../../../boost/chrono/io/duration_io.hpp(130): error: expression must have
 bool type (or be convertible to bool)
             if (opfx)
 }}}

 even if sentry defines an explicit bool conversion.

 A workaround to this issue is needed.

--
Comment:
 It is enough to do the explicit conversion


 {{{
           typename std::basic_ostream<CharT, Traits>::sentry opfx(os);
           if (bool(opfx))
           {
 }}}
-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/7493#comment:1>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:10 UTC