libstdc++/3150: revert 2001-11-30 commit.
2002-01-09 Paolo Carlini <pcarlini@unitus.it> libstdc++/3150: revert 2001-11-30 commit. DR266 only means that the destructors should be removed from the descriptions in the standard: writing them explicitly allows the vtable heuristic to work. For additional information see: http://gcc.gnu.org/ml/libstdc++/2002-01/msg00090.html http://gcc.gnu.org/ml/libstdc++/2002-01/msg00110.html http://gcc.gnu.org/ml/libstdc++/2002-01/msg00155.html * libsupc++/exception (bad_exception::~bad_exception()): Reintroduce declaration. * libsupc++/new (bad_alloc::~bad_alloc()): Same. * libsupc++/typeinfo (bad_cast::~bad_cast()): Same. (bad_typeid::~bad_typeid()): Same. * libsupc++/eh_exception.cc (bad_exception::~bad_exception()): Reintroduce definition. * libsupc++/new_handler.cc (bad_alloc::~bad_alloc()): Same. * libsupc++/tinfo.cc (bad_cast::~bad_cast()): Same. (bad_typeid::~bad_typeid()): Same. From-SVN: r48687
This commit is contained in:
parent
30c1fa7651
commit
d66ae36a8b
@ -1,3 +1,23 @@
|
|||||||
|
2002-01-09 Paolo Carlini <pcarlini@unitus.it>
|
||||||
|
|
||||||
|
libstdc++/3150: revert 2001-11-30 commit. DR266 only means
|
||||||
|
that the destructors should be removed from the descriptions
|
||||||
|
in the standard: writing them explicitly allows the vtable
|
||||||
|
heuristic to work. For additional information see:
|
||||||
|
http://gcc.gnu.org/ml/libstdc++/2002-01/msg00090.html
|
||||||
|
http://gcc.gnu.org/ml/libstdc++/2002-01/msg00110.html
|
||||||
|
http://gcc.gnu.org/ml/libstdc++/2002-01/msg00155.html
|
||||||
|
* libsupc++/exception (bad_exception::~bad_exception()):
|
||||||
|
Reintroduce declaration.
|
||||||
|
* libsupc++/new (bad_alloc::~bad_alloc()): Same.
|
||||||
|
* libsupc++/typeinfo (bad_cast::~bad_cast()): Same.
|
||||||
|
(bad_typeid::~bad_typeid()): Same.
|
||||||
|
* libsupc++/eh_exception.cc (bad_exception::~bad_exception()):
|
||||||
|
Reintroduce definition.
|
||||||
|
* libsupc++/new_handler.cc (bad_alloc::~bad_alloc()): Same.
|
||||||
|
* libsupc++/tinfo.cc (bad_cast::~bad_cast()): Same.
|
||||||
|
(bad_typeid::~bad_typeid()): Same.
|
||||||
|
|
||||||
2002-01-09 Benjamin Kosnik <bkoz@redhat.com>
|
2002-01-09 Benjamin Kosnik <bkoz@redhat.com>
|
||||||
|
|
||||||
* include/Makefile.am (c_base_srcdir): Remove duplicate '/'.
|
* include/Makefile.am (c_base_srcdir): Remove duplicate '/'.
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
// -*- C++ -*- std::exception implementation.
|
// -*- C++ -*- std::exception implementation.
|
||||||
// Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
|
// Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
|
||||||
// Free Software Foundation
|
// Free Software Foundation
|
||||||
//
|
//
|
||||||
// This file is part of GNU CC.
|
// This file is part of GNU CC.
|
||||||
@ -35,6 +35,8 @@
|
|||||||
|
|
||||||
std::exception::~exception() throw() { }
|
std::exception::~exception() throw() { }
|
||||||
|
|
||||||
|
std::bad_exception::~bad_exception() throw() { }
|
||||||
|
|
||||||
const char*
|
const char*
|
||||||
std::exception::what() const throw()
|
std::exception::what() const throw()
|
||||||
{
|
{
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
// Exception Handling support header for -*- C++ -*-
|
// Exception Handling support header for -*- C++ -*-
|
||||||
|
|
||||||
// Copyright (C) 1995, 1996, 1997, 1998, 2000, 2001 Free Software Foundation
|
// Copyright (C) 1995, 1996, 1997, 1998, 2000, 2001, 2002
|
||||||
|
// Free Software Foundation
|
||||||
//
|
//
|
||||||
// This file is part of GNU CC.
|
// This file is part of GNU CC.
|
||||||
//
|
//
|
||||||
@ -62,6 +63,7 @@ namespace std
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
bad_exception() throw() { }
|
bad_exception() throw() { }
|
||||||
|
virtual ~bad_exception() throw();
|
||||||
};
|
};
|
||||||
|
|
||||||
/// If you write a replacement %terminate handler, it must be of this type.
|
/// If you write a replacement %terminate handler, it must be of this type.
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
// The -*- C++ -*- dynamic memory management header.
|
// The -*- C++ -*- dynamic memory management header.
|
||||||
|
|
||||||
// Copyright (C) 1994, 1996, 1997, 1998, 2000, 2001 Free Software Foundation
|
// Copyright (C) 1994, 1996, 1997, 1998, 2000, 2001, 2002
|
||||||
|
// Free Software Foundation
|
||||||
|
|
||||||
// This file is part of GNU CC.
|
// This file is part of GNU CC.
|
||||||
//
|
//
|
||||||
@ -50,6 +51,7 @@ namespace std
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
bad_alloc() throw() { }
|
bad_alloc() throw() { }
|
||||||
|
virtual ~bad_alloc() throw();
|
||||||
};
|
};
|
||||||
|
|
||||||
struct nothrow_t { };
|
struct nothrow_t { };
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
// Implementation file for the -*- C++ -*- dynamic memory management header.
|
// Implementation file for the -*- C++ -*- dynamic memory management header.
|
||||||
|
|
||||||
// Copyright (C) 1996, 1997, 1998, 2000 Free Software Foundation
|
// Copyright (C) 1996, 1997, 1998, 2000, 2001, 2002
|
||||||
|
// Free Software Foundation
|
||||||
//
|
//
|
||||||
// This file is part of GNU CC.
|
// This file is part of GNU CC.
|
||||||
//
|
//
|
||||||
@ -42,3 +43,5 @@ std::set_new_handler (new_handler handler)
|
|||||||
__new_handler = handler;
|
__new_handler = handler;
|
||||||
return prev_handler;
|
return prev_handler;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::bad_alloc::~bad_alloc() throw() { }
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
// Methods for type_info for -*- C++ -*- Run Time Type Identification.
|
// Methods for type_info for -*- C++ -*- Run Time Type Identification.
|
||||||
// Copyright (C) 1994, 1996, 1998, 1999, 2000, 2001 Free Software Foundation
|
// Copyright (C) 1994, 1996, 1998, 1999, 2000, 2001, 2002
|
||||||
|
// Free Software Foundation
|
||||||
//
|
//
|
||||||
// This file is part of GNU CC.
|
// This file is part of GNU CC.
|
||||||
//
|
//
|
||||||
@ -39,6 +40,9 @@ std::type_info::
|
|||||||
~type_info ()
|
~type_info ()
|
||||||
{ }
|
{ }
|
||||||
|
|
||||||
|
std::bad_cast::~bad_cast() throw() { }
|
||||||
|
std::bad_typeid::~bad_typeid() throw() { }
|
||||||
|
|
||||||
#if !__GXX_MERGED_TYPEINFO_NAMES
|
#if !__GXX_MERGED_TYPEINFO_NAMES
|
||||||
|
|
||||||
// We can't rely on common symbols being shared between shared objects.
|
// We can't rely on common symbols being shared between shared objects.
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
// RTTI support for -*- C++ -*-
|
// RTTI support for -*- C++ -*-
|
||||||
// Copyright (C) 1994, 1995, 1996, 1997, 1998, 2000, 2001 Free Software Foundation
|
// Copyright (C) 1994, 1995, 1996, 1997, 1998, 2000, 2001, 2002
|
||||||
|
// Free Software Foundation
|
||||||
//
|
//
|
||||||
// This file is part of GNU CC.
|
// This file is part of GNU CC.
|
||||||
//
|
//
|
||||||
@ -129,6 +130,7 @@ namespace std
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
bad_cast() throw() { }
|
bad_cast() throw() { }
|
||||||
|
virtual ~bad_cast() throw();
|
||||||
};
|
};
|
||||||
|
|
||||||
/** If you use a NULL pointer in a @c typeid expression, this is thrown. */
|
/** If you use a NULL pointer in a @c typeid expression, this is thrown. */
|
||||||
@ -136,6 +138,7 @@ namespace std
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
bad_typeid () throw() { }
|
bad_typeid () throw() { }
|
||||||
|
virtual ~bad_typeid() throw();
|
||||||
};
|
};
|
||||||
} // namespace std
|
} // namespace std
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user