summaryrefslogtreecommitdiffstats
path: root/libstdc++-v3/include/std/memory
diff options
context:
space:
mode:
authorpaolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4>2006-12-22 12:49:48 +0000
committerpaolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4>2006-12-22 12:49:48 +0000
commita692857bd4abea817b0415456653da5428d5edeb (patch)
tree5d30499d499b8e196110b974f1f184304e0e1f7f /libstdc++-v3/include/std/memory
parent225c0ccb2dd1ab2a64279bed0c46d2d939f634fb (diff)
downloadppe42-gcc-a692857bd4abea817b0415456653da5428d5edeb.tar.gz
ppe42-gcc-a692857bd4abea817b0415456653da5428d5edeb.zip
2006-12-22 Paolo Carlini <pcarlini@suse.de>
DR 541, [WP]. * include/std/memory (auto_ptr<void>): Add specialization. * testsuite/tr1/2_general_utilities/memory/shared_ptr/ assign/dr541.cc: New. * testsuite/20_util/memory/auto_ptr/assign_neg.cc: Adjust dg-error markers. * docs/html/ext/howto.html: Add an entry for DR 541. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@120148 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libstdc++-v3/include/std/memory')
-rw-r--r--libstdc++-v3/include/std/memory14
1 files changed, 12 insertions, 2 deletions
diff --git a/libstdc++-v3/include/std/memory b/libstdc++-v3/include/std/memory
index b57a94f4bbd..c47d49c034d 100644
--- a/libstdc++-v3/include/std/memory
+++ b/libstdc++-v3/include/std/memory
@@ -1,6 +1,7 @@
// <memory> -*- C++ -*-
-// Copyright (C) 2001, 2002, 2004, 2005 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006
+// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -367,7 +368,16 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
template<typename _Tp1>
operator auto_ptr<_Tp1>() throw()
{ return auto_ptr<_Tp1>(this->release()); }
- };
+ };
+
+ // _GLIBCXX_RESOLVE_LIB_DEFECTS
+ // 541. shared_ptr template assignment and void
+ template<>
+ class auto_ptr<void>
+ {
+ public:
+ typedef void element_type;
+ };
_GLIBCXX_END_NAMESPACE
OpenPOWER on IntegriCloud