From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 2001 invoked by alias); 2 Dec 2016 13:08:05 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 1990 invoked by uid 89); 2 Dec 2016 13:08:04 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-4.8 required=5.0 tests=BAYES_00,RP_MATCHES_RCVD,SPF_HELO_PASS autolearn=ham version=3.3.2 spammy=supplies, sk:wwwope, sk:www.ope, Hx-languages-length:1009 X-HELO: mx1.redhat.com Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Fri, 02 Dec 2016 13:07:53 +0000 Received: from int-mx09.intmail.prod.int.phx2.redhat.com (int-mx09.intmail.prod.int.phx2.redhat.com [10.5.11.22]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id F2507C05B1C5; Fri, 2 Dec 2016 13:07:51 +0000 (UTC) Received: from [127.0.0.1] (ovpn03.gateway.prod.ext.phx2.redhat.com [10.5.9.3]) by int-mx09.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id uB2D7oII004852; Fri, 2 Dec 2016 08:07:51 -0500 Subject: Re: [RFA 1/8] Add gdb_ref_ptr.h To: Tom Tromey , gdb-patches@sourceware.org References: <1480395946-10924-1-git-send-email-tom@tromey.com> <1480395946-10924-2-git-send-email-tom@tromey.com> From: Pedro Alves Message-ID: Date: Fri, 02 Dec 2016 13:08:00 -0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.4.0 MIME-Version: 1.0 In-Reply-To: <1480395946-10924-2-git-send-email-tom@tromey.com> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit X-SW-Source: 2016-12/txt/msg00083.txt.bz2 On 11/29/2016 05:05 AM, Tom Tromey wrote: > This adds a new gdb_ref_ptr.h, that implements a reference-counting > smart pointer class, where the user of the class supplies a > reference-counting policy object. > > This class will be used in the next patch, which changes most explicit > BFD reference counts to use this new type. Meanwhile, this patch > changes gdbpy_ref to be a specialization of this new class. > > This change required adding new nullptr_t overloads some operators in > gdb_ref_ptr.h. I suspect this was needed because some Python header > redefines NULL, but I'm not certain. Can you please remove them and see what breaks? Odd that this would be something about Python, given the class is being used in Python code today? BTW, it's worth noting that there's a proposal to add (an oddly named) policy-based intrusive ref counting smart pointer to the standard: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0468r0.html Thanks, Pedro Alves