From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 26890 invoked by alias); 14 Aug 2013 17:38:37 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Received: (qmail 26864 invoked by uid 48); 14 Aug 2013 17:38:36 -0000 From: "redi at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug libstdc++/58159] unique_ptr::reset should have debug assertion for "self-reset" Date: Wed, 14 Aug 2013 17:38:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: libstdc++ X-Bugzilla-Version: unknown X-Bugzilla-Keywords: X-Bugzilla-Severity: enhancement X-Bugzilla-Who: redi at gcc dot gnu.org X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2013-08/txt/msg00771.txt.bz2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58159 --- Comment #1 from Jonathan Wakely --- What if the deleter doesn't actually destroy the object, and doing self-reset is used as a crazy way to trigger the deleter to do something with the pointer, but not to alter the value of the pointer? If that's valid then we should only do this for default_delete specializations.