Subject: Re: [Boost-bugs] [Boost C++ Libraries] #3363: linking 2 files compiled with different NDEBUG causes segfault
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2010-04-01 02:34:24
#3363: linking 2 files compiled with different NDEBUG causes segfault
----------------------------+-----------------------------------------------
Reporter: smr@⦠| Owner: az_sw_dude
Type: Bugs | Status: new
Milestone: Boost 1.40.0 | Component: date_time
Version: Boost 1.39.0 | Severity: Problem
Keywords: |
----------------------------+-----------------------------------------------
Comment(by anonymous):
Replying to [comment:2 vladimir_prus]:
> Generally speaking, why is this a problem? In general, NDEBUG may change
ABI, and therefore should be consistent for entire application -- unless
there's a standard saying otherwise.
What I can find on the web is http://www.visualco.de/NDEBUG.html which
asserts that
The C standard only dictates that when NDEBUG is defined, the assert
macro shall expand to nothing. NDEBUG has no other effect or meaning.
The standardization of assert() supports that; c.f.
http://www.opengroup.org/onlinepubs/9699919799/functions/assert.html I
don't know of anything that states '''NDEBUG may change ABI''' -- do you?
One problem the current situation causes is that a boost-using library may
be compiled without NDEBUG while someone's application uses NDEBUG, and
then goes kabloom when it runs.
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/3363#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:02 UTC