From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id hC+xIJwvp2k9zBIAWB0awg (envelope-from ) for ; Tue, 03 Mar 2026 13:59:40 -0500 Authentication-Results: simark.ca; dkim=fail reason="signature verification failed" (768-bit key; unprotected) header.d=tromey.com header.i=@tromey.com header.a=rsa-sha256 header.s=default header.b=Z6YZjwoM; dkim-atps=neutral Received: by simark.ca (Postfix, from userid 112) id 6E6031E089; Tue, 03 Mar 2026 13:59:40 -0500 (EST) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-25) on simark.ca X-Spam-Level: X-Spam-Status: No, score=-2.1 required=5.0 tests=ARC_SIGNED,ARC_VALID,BAYES_00, DKIM_INVALID,DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED,RCVD_IN_VALIDITY_RPBL_BLOCKED, RCVD_IN_VALIDITY_SAFE_BLOCKED autolearn=ham autolearn_force=no version=4.0.1 Received: from vm01.sourceware.org (vm01.sourceware.org [38.145.34.32]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by simark.ca (Postfix) with ESMTPS id 8C61C1E089 for ; Tue, 03 Mar 2026 13:59:39 -0500 (EST) Received: from vm01.sourceware.org (localhost [127.0.0.1]) by sourceware.org (Postfix) with ESMTP id EE5EE4BA2E17 for ; Tue, 3 Mar 2026 18:59:38 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org EE5EE4BA2E17 Authentication-Results: sourceware.org; dkim=fail reason="signature verification failed" (768-bit key, unprotected) header.d=tromey.com header.i=@tromey.com header.a=rsa-sha256 header.s=default header.b=Z6YZjwoM Received: from omta40.uswest2.a.cloudfilter.net (omta40.uswest2.a.cloudfilter.net [35.89.44.39]) by sourceware.org (Postfix) with ESMTPS id 1BD614BA2E0E for ; Tue, 3 Mar 2026 18:59:11 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 1BD614BA2E0E Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=tromey.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=tromey.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 1BD614BA2E0E Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=35.89.44.39 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1772564351; cv=none; b=jz+B9cUMMdcmXt0MdB+3L/iwLLT0i3TEPYpMBuXs5AO2JENBOjKcEN6cYXYX/qSUD/Fx7ZsGJWWO2nIrfyB0L2wGgVuW1Cm5TglEaD//ieG/4Q7cUZiaVy5vr8/sxgasYxEqyzfMtgRj6WPSRfV0SGvHQjiz+K0p7GCB6QvARYI= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1772564351; c=relaxed/simple; bh=i6yOtA+YaTU/LKigtbBhuktKfWdFteNz6Nbhs12zOj8=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=L5DD21L772Gr65Yl7JY6FOFolg2+fJmX+NX27SBrONRUw6oRn6XiYzhRNlD+nNGU2OKaBc+iJZ6oAdmd2sxGfMqzIg9qq5/Ffx+cLzeLIFdxryqLlnsze8VmmM2AOl1iILdr5NZ/UcmR4eWQ/WqDqhEHbNmgZ/6XU8gp5I+MM+A= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 1BD614BA2E0E Received: from eig-obgw-6004b.ext.cloudfilter.net ([10.0.30.210]) by cmsmtp with ESMTPS id xRMWv7rDtaPqLxUxavh8lo; Tue, 03 Mar 2026 18:59:10 +0000 Received: from box5379.bluehost.com ([162.241.216.53]) by cmsmtp with ESMTPS id xUxZvhT1IK8vzxUxZvxA86; Tue, 03 Mar 2026 18:59:09 +0000 X-Authority-Analysis: v=2.4 cv=cJDgskeN c=1 sm=1 tr=0 ts=69a72f7d a=ApxJNpeYhEAb1aAlGBBbmA==:117 a=ApxJNpeYhEAb1aAlGBBbmA==:17 a=Yq5XynenixoA:10 a=ItBw4LHWJt0A:10 a=7CQSdrXTAAAA:8 a=773QZbTwHYtJ6lpxzoIA:9 a=a-qgeE7W1pNrGK8U0ZQC:22 a=DCx65vhANUyCzuf5D8fC:22 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=tromey.com; s=default; h=Content-Type:MIME-Version:Message-ID:Date:References:In-Reply-To :Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=L9aH/VDCk4HbIveDOS//m0K86DRKckcAASIYs9WUp/M=; b=Z6YZjwoM1VS+oSqKfzE1Qqn+n/ PBP7k3jiPJpTB1szr2w1eZfAzU6cFE+kj2EVMExdqE4MkJ8jCNqswrOFWFP3ciIttmbxzL3QNP2m3 7H/NJQguV4rHZGMQCG2WqI1Ms; Received: from 97-122-122-234.hlrn.qwest.net ([97.122.122.234]:37170 helo=bapiya) by box5379.bluehost.com with esmtpsa (TLS1.3) tls TLS_AES_256_GCM_SHA384 (Exim 4.98.2) (envelope-from ) id 1vxUxY-00000001xSZ-3xqU; Tue, 03 Mar 2026 11:59:09 -0700 From: Tom Tromey To: Matthieu Longo Cc: , Tom Tromey Subject: Re: [PATCH v2 4/9] gdb: add new helpers for retrieving a type's fully qualified name In-Reply-To: <20260303161659.397427-5-matthieu.longo@arm.com> (Matthieu Longo's message of "Tue, 3 Mar 2026 16:16:54 +0000") References: <20260303161659.397427-1-matthieu.longo@arm.com> <20260303161659.397427-5-matthieu.longo@arm.com> X-Attribution: Tom Date: Tue, 03 Mar 2026 11:59:07 -0700 Message-ID: <877brsrb7o.fsf@tromey.com> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - box5379.bluehost.com X-AntiAbuse: Original Domain - sourceware.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - tromey.com X-BWhitelist: no X-Source-IP: 97.122.122.234 X-Source-L: No X-Exim-ID: 1vxUxY-00000001xSZ-3xqU X-Source: X-Source-Args: X-Source-Dir: X-Source-Sender: 97-122-122-234.hlrn.qwest.net (bapiya) [97.122.122.234]:37170 X-Source-Auth: tom+tromey.com X-Email-Count: 18 X-Org: HG=bhshared;ORG=bluehost; X-Source-Cap: ZWx5bnJvYmk7ZWx5bnJvYmk7Ym94NTM3OS5ibHVlaG9zdC5jb20= X-Local-Domain: yes X-CMAE-Envelope: MS4xfPboyWeZld93XQxM6vFIzGP+bhxuP+eEokuKP2yGpdCWCrD6RxJhoX/3La67sDal9RqNt8rxjI/GH0fRt1AMJKm664xU2fXjHI9z89qMCa1oss+E9v4Y mIst1/GQPq4Yk91b6fTnR3P1qTJal++RQcL+ufTOVUdy5a6QpaDkWwKDLAnD6bPVJZlBcY3qeyff9X5bC/G9teG/rtj9pQlETbY= X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gdb-patches-bounces~public-inbox=simark.ca@sourceware.org >>>>> Matthieu Longo writes: > +/* Return the type's fully qualified name from a PyTypeObject. */ > +const char * > +gdb_py_tp_name (PyTypeObject *py_type) noexcept > +{ > +#if PY_VERSION_HEX >= 0x030d0000 ... > +#elif ! defined (Py_LIMITED_API) ... > +#else > + #error "The version of Python you are using does not expose " \ > + "PyType_GetFullyQualifiedName() as a part of the limited C API." > +#endif I think this case can't actually be hit... can it? My reasoning is that the very first case is taken if either the limited API is in use (which requires 0x030e0000 as of this patch) or if Python is new enough. So, all other cases fall into the non-limited case. It would be better IMO to remove it if it cannot ever happen. > +#else > + #error "The version of Python you are using does not expose Py_TYPE() "\ > + "as a part of the limited C API." I'd prefer that #error not be indented here. > +++ b/gdb/python/py-obj-type.h > @@ -0,0 +1,31 @@ > +/* Helpers related to Python object type > + > +/* Return the type's fully qualified name from a PyTypeObject. */ > +extern const char * > +gdb_py_tp_name (PyTypeObject *py_type) noexcept; > + > +/* Return the type's fully qualified name from a PyObject. */ > +extern const char * > +gdbpy_py_obj_tp_name (PyObject *self) noexcept; Declarations in gdb don't have a newline after the return type. thanks, Tom