PR libstdc++/20534 (contd)
2005-08-26 Benjamin Kosnik <bkoz@redhat.com> PR libstdc++/20534 (contd) * src/debug.cc (__gnu_debug): Remove __fancy_abort definition. Remove cstdio and cstdlib includes. * include/debug/debug.h: Define inline here. Remove _GLIBCXX_DEBUG_ABORT. * include/debug/macros.h: Remove __fancy_abort declaration, _GLIBXX_DEBUG_ABORT definition. * config/linker-map.gnu: Remove export. From-SVN: r103535
This commit is contained in:
parent
327d749cf8
commit
277d42e27f
@ -1,3 +1,14 @@
|
||||
2005-08-26 Benjamin Kosnik <bkoz@redhat.com>
|
||||
|
||||
PR libstdc++/20534 (contd)
|
||||
* src/debug.cc (__gnu_debug): Remove __fancy_abort definition.
|
||||
Remove cstdio and cstdlib includes.
|
||||
* include/debug/debug.h: Define inline here. Remove
|
||||
_GLIBCXX_DEBUG_ABORT.
|
||||
* include/debug/macros.h: Remove __fancy_abort declaration,
|
||||
_GLIBXX_DEBUG_ABORT definition.
|
||||
* config/linker-map.gnu: Remove export.
|
||||
|
||||
2005-08-26 Benjamin Kosnik <bkoz@redhat.com>
|
||||
|
||||
* scripts/check_compile (UNIQUE_ID): New. Use to name output files.
|
||||
|
@ -566,7 +566,6 @@ GLIBCXX_3.4.6 {
|
||||
_ZNSt8ios_base17_M_call_callbacksENS_5eventE;
|
||||
_ZNSt8ios_base20_M_dispose_callbacksEv;
|
||||
_ZNSt6locale5facet13_S_get_c_nameEv;
|
||||
_ZN11__gnu_debug13__fancy_abortEPKciS1_S1_;
|
||||
|
||||
_ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE9showmanycEv;
|
||||
|
||||
|
@ -40,11 +40,35 @@
|
||||
*/
|
||||
|
||||
#ifdef _GLIBCXX_DEBUG
|
||||
# include <debug/macros.h>
|
||||
# define _GLIBCXX_DEBUG_ASSERT(_Condition) _GLIBCXX_DEBUG_ABORT(_Condition)
|
||||
|
||||
# include <debug/macros.h>
|
||||
# include <cstdlib>
|
||||
# include <cstdio>
|
||||
|
||||
// Avoid the use of assert, because we're trying to keep the <cassert>
|
||||
// include out of the mix.
|
||||
namespace __gnu_debug
|
||||
{
|
||||
inline void
|
||||
__replacement_assert(const char* __file, int __line, const char* __function,
|
||||
const char* __condition)
|
||||
{
|
||||
std::printf("%s:%d: %s: Assertion '%s' failed.\n", __file, __line,
|
||||
__function, __condition);
|
||||
std::abort();
|
||||
}
|
||||
}
|
||||
|
||||
#define _GLIBCXX_DEBUG_ASSERT(_Condition) \
|
||||
do { \
|
||||
if (! (_Condition)) \
|
||||
::__gnu_debug::__replacement_assert(__FILE__, __LINE__, \
|
||||
__PRETTY_FUNCTION__, \
|
||||
#_Condition); \
|
||||
} while (false)
|
||||
|
||||
# ifdef _GLIBCXX_DEBUG_PEDANTIC
|
||||
# define _GLIBCXX_DEBUG_PEDASSERT(_Condition) _GLIBCXX_DEBUG_ABORT(_Condition)
|
||||
# define _GLIBCXX_DEBUG_PEDASSERT(_Condition) _GLIBCXX_DEBUG_ASSERT(_Condition)
|
||||
# else
|
||||
# define _GLIBCXX_DEBUG_PEDASSERT(_Condition)
|
||||
# endif
|
||||
|
@ -40,16 +40,6 @@
|
||||
* the user error and where the error is reported.
|
||||
*
|
||||
*/
|
||||
namespace __gnu_debug
|
||||
{ void __fancy_abort(const char*, int, const char*, const char*); }
|
||||
#define _GLIBCXX_DEBUG_ABORT(_Condition) \
|
||||
do { \
|
||||
if (! (_Condition)) \
|
||||
::__gnu_debug::__fancy_abort(__FILE__, __LINE__, \
|
||||
__PRETTY_FUNCTION__, \
|
||||
#_Condition); \
|
||||
} while (false)
|
||||
|
||||
#define _GLIBCXX_DEBUG_VERIFY(_Condition,_ErrorMessage) \
|
||||
do { \
|
||||
if (! (_Condition)) \
|
||||
|
@ -32,10 +32,8 @@
|
||||
#include <debug/safe_sequence.h>
|
||||
#include <debug/safe_iterator.h>
|
||||
#include <algorithm>
|
||||
#include <cstdlib>
|
||||
#include <cassert>
|
||||
#include <cstring>
|
||||
#include <cstdio>
|
||||
#include <cctype>
|
||||
#include <bits/concurrence.h>
|
||||
|
||||
@ -48,15 +46,6 @@ namespace __gnu_internal
|
||||
|
||||
namespace __gnu_debug
|
||||
{
|
||||
void
|
||||
__fancy_abort(const char* __file, int __line, const char* __function,
|
||||
const char* __condition)
|
||||
{
|
||||
printf("%s:%d: %s: Assertion '%s' failed.\n", __file, __line,
|
||||
__function, __condition);
|
||||
abort();
|
||||
}
|
||||
|
||||
const char* _S_debug_messages[] =
|
||||
{
|
||||
"function requires a valid iterator range [%1.name;, %2.name;)",
|
||||
|
Loading…
Reference in New Issue
Block a user