From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 30634 invoked by alias); 9 Dec 2005 18:25:05 -0000 Received: (qmail 30592 invoked by alias); 9 Dec 2005 18:25:02 -0000 Date: Fri, 09 Dec 2005 18:25:00 -0000 Message-ID: <20051209182502.30591.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug libstdc++/25288] std::list insert members should have no effects if an exception is thrown In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "paolo at gcc dot gnu dot org" Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2005-12/txt/msg00952.txt.bz2 List-Id: ------- Comment #4 from paolo at gcc dot gnu dot org 2005-12-09 18:25 ------- Subject: Bug 25288 Author: paolo Date: Fri Dec 9 18:24:53 2005 New Revision: 108313 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=108313 Log: 2005-12-09 Paolo Carlini Howard Hinnant PR libstdc++/25288 * include/bits/stl_list.h (list<>::_M_insert_dispatch, _M_fill_insert): Remove. (_M_initialize_dispatch, _M_fill_initialize): Add. (list(size_type, const value_type&, const allocator_type&), list(const list&), list(_InputIterator, _InputIterator, const allocator_type&): Use the latter. (insert(iterator, size_type, const value_type&), insert(iterator, _InputIterator, _InputIterator)): Use construction & splice. * testsuite/23_containers/list/modifiers/insert/25288.cc: New. * testsuite/testsuite_allocator.h (class throw_allocator): Add. * include/bits/stl_list.h (list<>::insert, erase): Fix wrong comments. Added: trunk/libstdc++-v3/testsuite/23_containers/list/modifiers/insert/ trunk/libstdc++-v3/testsuite/23_containers/list/modifiers/insert/25288.cc Modified: trunk/libstdc++-v3/ChangeLog trunk/libstdc++-v3/include/bits/stl_list.h trunk/libstdc++-v3/testsuite/testsuite_allocator.h -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25288