aboutsummaryrefslogtreecommitdiff
path: root/libstdc++-v3/libsupc++
diff options
context:
space:
mode:
authorBenjamin Kosnik <bkoz@redhat.com>2011-03-15 00:24:08 +0000
committerBenjamin Kosnik <bkoz@gcc.gnu.org>2011-03-15 00:24:08 +0000
commite95992339f9c10fce65d2eea8c95fe9e5a84d43c (patch)
treee5d7d51858cf55279f3ce928eac52925dfcf91d4 /libstdc++-v3/libsupc++
parentfe8e6abcddefc9350252c578ba9f4bb00ca8c346 (diff)
downloadgcc-e95992339f9c10fce65d2eea8c95fe9e5a84d43c.zip
gcc-e95992339f9c10fce65d2eea8c95fe9e5a84d43c.tar.gz
gcc-e95992339f9c10fce65d2eea8c95fe9e5a84d43c.tar.bz2
Makefile.am: Add functional.cc, shared_ptr.cc.
2011-03-14 Benjamin Kosnik <bkoz@redhat.com> * src/Makefile.am: Add functional.cc, shared_ptr.cc. * src/Makefile.in: Regenerate. * libsupc++/Makefile.am: Add nested_exception.cc. * libsupc++/Makefile.in: Regenerate. * src/system_error.cc: Add ctor and dtor definitions for error_category. * src/functional.cc: New. Add dtor definition for bad_function_call. * src/stdexcept.cc: Add dtor definitions for domain_error, invalid_argument, length_error, out_of_range, range_error, overflow_error, underflow_error. * src/future.cc: Add dtor definition for __future_base::_Result_base. * src/shared_ptr.cc: New. Add dtor definition for bad_weak_ptr. * src/thread.cc: Add dtor for thread::_Impl_base. * include/std/system_error: Adjust. * include/std/stdexcept: Same. * include/std/future: Same. * include/std/functional: Same. * include/std/thread: Same. * include/bits/shared_ptr_base.h: Same. * libsupc++/nested_exception.cc: New. Add dtor for nested_exception. * libsupc++/nested_exception.h: Adjust. * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers. * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Same. * config/abi/pre/gnu.ver: Add new exports. * include/bits/regex_compiler.h: Nest namespace versioning. * include/bits/regex_grep_matcher.tcc: Same. * include/bits/regex_grep_matcher.h: Same. * include/bits/regex_cursor.h: Same. * include/bits/regex_nfa.h: Same. * include/bits/regex_nfa.tcc: Same. From-SVN: r170975
Diffstat (limited to 'libstdc++-v3/libsupc++')
-rw-r--r--libstdc++-v3/libsupc++/Makefile.am6
-rw-r--r--libstdc++-v3/libsupc++/Makefile.in14
-rw-r--r--libstdc++-v3/libsupc++/nested_exception.cc29
-rw-r--r--libstdc++-v3/libsupc++/nested_exception.h4
4 files changed, 46 insertions, 7 deletions
diff --git a/libstdc++-v3/libsupc++/Makefile.am b/libstdc++-v3/libsupc++/Makefile.am
index 842d87a..701c2d9 100644
--- a/libstdc++-v3/libsupc++/Makefile.am
+++ b/libstdc++-v3/libsupc++/Makefile.am
@@ -77,6 +77,7 @@ sources = \
guard.cc \
guard_error.cc \
hash_bytes.cc \
+ nested_exception.cc \
new_handler.cc \
new_op.cc \
new_opnt.cc \
@@ -134,6 +135,11 @@ cp-demangle.o: cp-demangle.c
$(C_COMPILE) -DIN_GLIBCPP_V3 -Wno-error -c $<
+nested_exception.lo: nested_exception.cc
+ $(LTCXXCOMPILE) -std=gnu++0x -c $<
+nested_exception.o: nested_exception.cc
+ $(CXXCOMPILE) -std=gnu++0x -c $<
+
# Libtool notes
# 1) Need to explicitly set LTCXXCOMPILE so that AM_CXXFLAGS is
diff --git a/libstdc++-v3/libsupc++/Makefile.in b/libstdc++-v3/libsupc++/Makefile.in
index c994b07..18ba840 100644
--- a/libstdc++-v3/libsupc++/Makefile.in
+++ b/libstdc++-v3/libsupc++/Makefile.in
@@ -98,10 +98,10 @@ am__objects_1 = array_type_info.lo atexit_arm.lo bad_alloc.lo \
eh_term_handler.lo eh_terminate.lo eh_throw.lo eh_type.lo \
eh_unex_handler.lo enum_type_info.lo function_type_info.lo \
fundamental_type_info.lo guard.lo guard_error.lo hash_bytes.lo \
- new_handler.lo new_op.lo new_opnt.lo new_opv.lo new_opvnt.lo \
- pbase_type_info.lo pmem_type_info.lo pointer_type_info.lo \
- pure.lo si_class_type_info.lo tinfo.lo tinfo2.lo vec.lo \
- vmi_class_type_info.lo vterminate.lo
+ nested_exception.lo new_handler.lo new_op.lo new_opnt.lo \
+ new_opv.lo new_opvnt.lo pbase_type_info.lo pmem_type_info.lo \
+ pointer_type_info.lo pure.lo si_class_type_info.lo tinfo.lo \
+ tinfo2.lo vec.lo vmi_class_type_info.lo vterminate.lo
@GLIBCXX_HOSTED_TRUE@am__objects_2 = cp-demangle.lo
am_libsupc___la_OBJECTS = $(am__objects_1) $(am__objects_2)
libsupc___la_OBJECTS = $(am_libsupc___la_OBJECTS)
@@ -383,6 +383,7 @@ sources = \
guard.cc \
guard_error.cc \
hash_bytes.cc \
+ nested_exception.cc \
new_handler.cc \
new_op.cc \
new_opnt.cc \
@@ -766,6 +767,11 @@ cp-demangle.lo: cp-demangle.c
cp-demangle.o: cp-demangle.c
$(C_COMPILE) -DIN_GLIBCPP_V3 -Wno-error -c $<
+nested_exception.lo: nested_exception.cc
+ $(LTCXXCOMPILE) -std=gnu++0x -c $<
+nested_exception.o: nested_exception.cc
+ $(CXXCOMPILE) -std=gnu++0x -c $<
+
install-stdHEADERS: $(std_HEADERS)
@$(NORMAL_INSTALL)
$(mkinstalldirs) $(DESTDIR)$(stddir)
diff --git a/libstdc++-v3/libsupc++/nested_exception.cc b/libstdc++-v3/libsupc++/nested_exception.cc
new file mode 100644
index 0000000..876e8e0
--- /dev/null
+++ b/libstdc++-v3/libsupc++/nested_exception.cc
@@ -0,0 +1,29 @@
+// Copyright (C) 2011 Free Software Foundation
+//
+// This file is part of GCC.
+//
+// GCC is free software; you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation; either version 3, or (at your option)
+// any later version.
+
+// GCC is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// Under Section 7 of GPL version 3, you are granted additional
+// permissions described in the GCC Runtime Library Exception, version
+// 3.1, as published by the Free Software Foundation.
+
+// You should have received a copy of the GNU General Public License and
+// a copy of the GCC Runtime Library Exception along with this program;
+// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
+// <http://www.gnu.org/licenses/>.
+
+#include <exception>
+
+namespace std
+{
+ nested_exception::~nested_exception() = default;
+} // namespace std
diff --git a/libstdc++-v3/libsupc++/nested_exception.h b/libstdc++-v3/libsupc++/nested_exception.h
index 799bd197..6a4f04e 100644
--- a/libstdc++-v3/libsupc++/nested_exception.h
+++ b/libstdc++-v3/libsupc++/nested_exception.h
@@ -63,7 +63,7 @@ namespace std
nested_exception& operator=(const nested_exception&) = default;
- inline virtual ~nested_exception();
+ virtual ~nested_exception();
void
rethrow_nested() const __attribute__ ((__noreturn__))
@@ -74,8 +74,6 @@ namespace std
{ return _M_ptr; }
};
- inline nested_exception::~nested_exception() = default;
-
template<typename _Except>
struct _Nested_exception : public _Except, public nested_exception
{