Re: [Boost-bugs] [Boost C++ Libraries] #4706: ValueType requirements seem wrong

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #4706: ValueType requirements seem wrong
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2010-10-03 20:21:14


#4706: ValueType requirements seem wrong
-------------------------------+--------------------------------------------
  Reporter: dave | Owner: nasonov
      Type: Bugs | Status: new
 Milestone: To Be Determined | Component: any
   Version: Boost 1.44.0 | Severity: Problem
Resolution: | Keywords:
-------------------------------+--------------------------------------------
Description changed by dave:

Old description:

> According to the doc:
>
> > The specific requirements on value types to be used in an any are:
> >
> > A !ValueType is !CopyConstructible [20.1.3].
> > A !ValueType is optionally Assignable [23.1]. The strong exception-
> safety guarantee is required for all forms of assignment.
> > The destructor for a !ValueType upholds the no-throw exception-safety
> guarantee.
>
> The doc seems to be saying that Assignable is not strictly required, but
> if you supply an assignment operator, it must offer the strong guarantee.
> But nothing in any depends on assignability of its !ValueType parameter,
> much less that it provides the strong guarantee.

New description:

 According to the doc:

> The specific requirements on value types to be used in an any are:
>
> A !ValueType is !CopyConstructible [20.1.3].
>
> A !ValueType is optionally Assignable [23.1]. The strong exception-
 safety guarantee is required for all forms of assignment.
>
> The destructor for a !ValueType upholds the no-throw exception-safety
 guarantee.

 The doc seems to be saying that Assignable is not strictly required, but
 if you supply an assignment operator, it must offer the strong guarantee.
 But nothing in any depends on assignability of its !ValueType parameter,
 much less that it provides the strong guarantee.

--
-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/4706#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:04 UTC