From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 32696 invoked by alias); 31 Mar 2003 12:46:01 -0000 Mailing-List: contact gcc-prs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-prs-owner@gcc.gnu.org Received: (qmail 32654 invoked by uid 71); 31 Mar 2003 12:46:00 -0000 Resent-Date: 31 Mar 2003 12:46:00 -0000 Resent-Message-ID: <20030331124600.32653.qmail@sources.redhat.com> Resent-From: gcc-gnats@gcc.gnu.org (GNATS Filer) Resent-Cc: gcc-prs@gcc.gnu.org, gcc-bugs@gcc.gnu.org Resent-Reply-To: gcc-gnats@gcc.gnu.org, carlo@alinoe.com Received: (qmail 29544 invoked by uid 48); 31 Mar 2003 12:36:03 -0000 Message-Id: <20030331123603.29543.qmail@sources.redhat.com> Date: Mon, 31 Mar 2003 13:36:00 -0000 From: carlo@alinoe.com Reply-To: carlo@alinoe.com To: gcc-gnats@gcc.gnu.org X-Send-Pr-Version: gnatsweb-2.9.3 (1.1.1.1.2.31) Subject: libstdc++/10276: memory leak for stringstream / ios_base callback cache. X-SW-Source: 2003-03/txt/msg02103.txt.bz2 List-Id: >Number: 10276 >Category: libstdc++ >Synopsis: memory leak for stringstream / ios_base callback cache. >Confidential: no >Severity: serious >Priority: medium >Responsible: unassigned >State: open >Class: sw-bug >Submitter-Id: net >Arrival-Date: Mon Mar 31 12:46:00 UTC 2003 >Closed-Date: >Last-Modified: >Originator: Carlo Wood >Release: 3.3 branch >Organization: >Environment: i686-gnu-linux >Description: The following code snippet leaks memory: for (int i = 0; i < 1000; ++i) { std::ostringstream s; } this results in 1000 undeleted allocations that made with 'new' in respectively ios.cc and basic_ios.tcc at: ios.cc: void ios_base::register_callback(event_callback __fn, int __index) { _M_callbacks = new _Callback_list(__fn, __index, _M_callbacks); } and bits/basic_ios.tcc: if (!pword(0)) { pword(0) = auto_ptr<__cache_t>(new __cache_t()).release(); register_callback(__cache_t::_S_callback, 0); } Can someone please make this high priority? Its a regression and I really think that it MUST be fixed before 3.3 is released. >How-To-Repeat: >Fix: >Release-Note: >Audit-Trail: >Unformatted: