Re: [Boost-bugs] [Boost C++ Libraries] #8916: boost/signals2/detail/lwm_pthreads.hpp: Ignores all failures from pthread_* functions

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #8916: boost/signals2/detail/lwm_pthreads.hpp: Ignores all failures from pthread_* functions
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2013-07-26 01:18:42


#8916: boost/signals2/detail/lwm_pthreads.hpp: Ignores all failures from pthread_*
functions
-------------------------------------+-------------------------------------
  Reporter: Jeffrey Walton | Owner: fmhess
  <noloader@…> | Status: new
      Type: Bugs | Component: signals2
 Milestone: To Be Determined | Severity: Problem
   Version: Boost 1.54.0 | Keywords: signals2 mutex pthread
Resolution: | API failure
-------------------------------------+-------------------------------------

Comment (by Jeffrey Walton <noloader@…>):

> Added BOOST_VERIFY checks on return values from pthread calls

 As I understand it (please correct me), BOOST_VERIFY is simply
 BOOST_ASSERT without the side effect of removal when NDEBUG is defined
 [1]. That is:

   * with NDEBUG, BOOST_ASSERT(x) is removed (including x)
   * without NDEBUG, BOOST_ASSERT(x) calls assert(x)

 For BOOST_VERIFY:

   * with NDEBUG, BOOST_VERIFY(x) is simply x
   * without NDEBUG, BOOST_VERIFY(x) is BOOST_ASSERT(x)

 The best that happens in an assert for Diagnostic or Debug builds (i.e.,
 NDEBUG is not defined); but no throw on failure. And in Production or
 Release code (i.e., NDEBUG is defined), then nothing happens.

 [1] http://www.boost.org/doc/libs/1_54_0/libs/utility/assert.html

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/8916#comment:3>
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:13 UTC