From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id bCteEPJlGWpyriYAWB0awg (envelope-from ) for ; Fri, 29 May 2026 06:09:54 -0400 Authentication-Results: simark.ca; dkim=pass (1024-bit key; unprotected) header.d=arm.com header.i=@arm.com header.a=rsa-sha256 header.s=selector1 header.b=bGczfBNS; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.a=rsa-sha256 header.s=selector1 header.b=bGczfBNS; dkim-atps=neutral Received: by simark.ca (Postfix, from userid 112) id 2D54A1E062; Fri, 29 May 2026 06:09:54 -0400 (EDT) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-25) on simark.ca X-Spam-Level: X-Spam-Status: No, score=-2.4 required=5.0 tests=ARC_SIGNED,ARC_VALID,BAYES_00, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,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 840271E062 for ; Fri, 29 May 2026 06:09:52 -0400 (EDT) Received: from vm01.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 07E3B4BA2E25 for ; Fri, 29 May 2026 10:09:52 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 07E3B4BA2E25 Authentication-Results: sourceware.org; dkim=pass (1024-bit key, unprotected) header.d=arm.com header.i=@arm.com header.a=rsa-sha256 header.s=selector1 header.b=bGczfBNS; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.a=rsa-sha256 header.s=selector1 header.b=bGczfBNS Received: from MRWPR03CU001.outbound.protection.outlook.com (mail-francesouthazlp170110003.outbound.protection.outlook.com [IPv6:2a01:111:f403:c207::3]) by sourceware.org (Postfix) with ESMTPS id 7EC5C4BA23DA for ; Fri, 29 May 2026 10:09:21 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 7EC5C4BA23DA Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=arm.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 7EC5C4BA23DA Authentication-Results: sourceware.org; arc=pass smtp.remote-ip=2a01:111:f403:c207::3 ARC-Seal: i=3; a=rsa-sha256; d=sourceware.org; s=key; t=1780049361; cv=pass; b=Jzcve8nK5qFCtz7ucoUwf2Euedzgl7tYRcYvHrYS3yWiuu5q7JXu3MqpWvISfJAutT8QF5ZaVg9duLSwk2xsJG6ij3bVcMglkw+U6KDZT1zVDTRUfNF8wrpQIX4GDlxrGn719K4dBlmeWaPhCdAEVvwgd0CdCzPPnpGh8B3LQLo= ARC-Message-Signature: i=3; a=rsa-sha256; d=sourceware.org; s=key; t=1780049361; c=relaxed/simple; bh=qa3QfgOj4h1QH2TgA5l4EzMoSnGJEawpMEr+f78z4MM=; h=DKIM-Signature:DKIM-Signature:Message-ID:Date:Subject:To:From: MIME-Version; b=v7IsXebcpeIpKOxEIwx71OzE7PeyB+2hhEswvWTjGfBKIYBQ9uVKziTcBOe/icvhBMx/9pJIzq4DoG6FGPIHM+t+7+c0XhVu/JuxyH0UCLeM6VxoPN8geNF7k3oqOHEcCOk/kXgjRHQmZJNlEaCA+VjIRDlFhX3O87jAzVH3PMU= ARC-Authentication-Results: i=3; sourceware.org; dkim=pass (1024-bit key, unprotected) header.d=arm.com header.i=@arm.com header.a=rsa-sha256 header.s=selector1 header.b=bGczfBNS; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.a=rsa-sha256 header.s=selector1 header.b=bGczfBNS DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 7EC5C4BA23DA ARC-Seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=jDfjakDXrN3SOK46xRSj0cmjQOWYLQacwAhthA2ND+TXmjquZhH3FDpOPnnusU1ZMp+RUichu93Fbc8eWzi9gpcMF7em23ZvTXdXFadNbTduMPprbVttrm0HnBEb/YdIg0tGIkUBTdKqLqQ8MeghNrauEdSRBF5wq8kBhkc88E0xdxS0B0qQOpIedjK6NnAdtO8ddhNKmZsPuEVpVvczYcB87Vuuvt1UaHjiG9WimRC85O+3CUxewzysllUBJVwVlVGrOJMYFEnvXCWxlrHmbIqtoarfA8KmtOwjWAmId3qdOCc1/9fpTSHmlytyVG82w2GTWI7rBsx0BNFkUvggPw== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=eO2AhpRqLYuIfGNBs25vR+9T5o7wtbYoCn47/4OEu1A=; b=iH0jHVs2/MY78yb3fxD03XsjSwXjcn0bDL8NBRssYLiDqNasDUgXyiNxQUzpN5GnJuyYgcx1iMV1tfmetRcrjz/4+HPw7jlw4GRCoeZyeGr7lwELHWDD65TNvPKAwv62vjrascS9rtyDOEwBxiKTjQEZS6fYJblyYdsnao/lkF1LNEAtrGdeRjEKo0pXsKD2hdHOYN2kpnnkYZBAtUsUYUjH0gA8CI2sy3yjWVO1YqjQp55jOg6i8PKyuBKIXtJx+c3BLc/L8au3j/Ec6OzCaTU24XQV7f5uMGWJrv45g8IQeovi80JcW3dvdTxaGGxM/SR+Ff0rMHbH+koY1wpuAA== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 4.158.2.129) smtp.rcpttodomain=tromey.com smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=arm.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=eO2AhpRqLYuIfGNBs25vR+9T5o7wtbYoCn47/4OEu1A=; b=bGczfBNSHvg5JzKdEI1ijaQKF2jCoYR28Ik0A1qypiSfYhrz7+BLJNQlixmvZz1jAKBAlM1HBHFFR0eHoDBxWdg8u47PBZjecyzA04KpJMd/4LLvD6cs3zdiQb+iByvv3mLHCE4AdICXd3AkhIsR7dxnHOnE15Kl7nOkoIh3xd0= Received: from CWLP265CA0513.GBRP265.PROD.OUTLOOK.COM (2603:10a6:400:18c::8) by AS2PR08MB9152.eurprd08.prod.outlook.com (2603:10a6:20b:578::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.71.15; Fri, 29 May 2026 10:09:10 +0000 Received: from AMS0EPF000001A3.eurprd05.prod.outlook.com (2603:10a6:400:18c:cafe::5a) by CWLP265CA0513.outlook.office365.com (2603:10a6:400:18c::8) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.21.71.14 via Frontend Transport; Fri, 29 May 2026 10:09:10 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 4.158.2.129) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=arm.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 4.158.2.129 as permitted sender) receiver=protection.outlook.com; client-ip=4.158.2.129; helo=outbound-uk1.az.dlp.m.darktrace.com; pr=C Received: from outbound-uk1.az.dlp.m.darktrace.com (4.158.2.129) by AMS0EPF000001A3.mail.protection.outlook.com (10.167.16.228) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.21.92.5 via Frontend Transport; Fri, 29 May 2026 10:09:10 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=m21Yt3xJYmrFJLXi3nWWLEynLBjfqV82zdOrrvOyqDzjLe/nsB9NSUVfo/mMcVuxbogf8qh4mPPoLdgraqK8EBTEk4JeuH0xkRh9bLDbT2o787gN11PdRAPt13wZfjQXR+c3dPeQpaT+8uxMXYtbRq+KbV04dbHy3O6Z43+Za/JaIPSAMIIIrJxhnyvveedZluOIxjoCeD+Cgsr9WWVQsg2tQhpH1BJ28khQPfv9x3xgnwyLHqlef+8oQbiDJrU5VTNOAHzHq7yW81ZVi137y2eY4CK0RRDI17MK0iu/a2OM2VEQLjNA3vid2fSuRZyK4Nu3AC70Q8FSVZZf5nkN+Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=eO2AhpRqLYuIfGNBs25vR+9T5o7wtbYoCn47/4OEu1A=; b=lgiE+ismXPg2XyVKe+wyl/uBlncwUKWXebMdpNzozWqfGhpc0yxB/hXwsPSwP5bKj/mCurr1gwLknCvezutvSccb6+AzEOhsVrvMSsVSTd7CB5CfMRxbFx/LdKyuovZFzbdijE5QcEB4KOtPxV0l/dpXgQEtB78TYkTQJkNDNEksumcKPJ0F/8owczoaBETDzVT9I/bqAgizSGJY9jJ48PAqQRE1ypB+E50Jt6jjV/Eog19G+16TzIfdi511Lor7PG/TA2hOv+t0xO44eBpx6EQj0f3NxVXxuXVRKOrnQ07WJmtJ5tHmr838g3SEnFk/hCsAVbSNaCLOMob16J3yXQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=eO2AhpRqLYuIfGNBs25vR+9T5o7wtbYoCn47/4OEu1A=; b=bGczfBNSHvg5JzKdEI1ijaQKF2jCoYR28Ik0A1qypiSfYhrz7+BLJNQlixmvZz1jAKBAlM1HBHFFR0eHoDBxWdg8u47PBZjecyzA04KpJMd/4LLvD6cs3zdiQb+iByvv3mLHCE4AdICXd3AkhIsR7dxnHOnE15Kl7nOkoIh3xd0= Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; Received: from DU0PR08MB8663.eurprd08.prod.outlook.com (2603:10a6:10:401::6) by DB3PR08MB8842.eurprd08.prod.outlook.com (2603:10a6:10:437::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.71.12; Fri, 29 May 2026 10:08:03 +0000 Received: from DU0PR08MB8663.eurprd08.prod.outlook.com ([fe80::f957:cec9:ec8d:7968]) by DU0PR08MB8663.eurprd08.prod.outlook.com ([fe80::f957:cec9:ec8d:7968%2]) with mapi id 15.21.0071.014; Fri, 29 May 2026 10:08:03 +0000 Message-ID: Date: Fri, 29 May 2026 11:08:02 +0100 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v1] gdb/python: fix memory leak in gdb_py_tp_name To: Tom Tromey Cc: gdb-patches@sourceware.org, Andrew Burgess References: <20260526160459.270322-1-matthieu.longo@arm.com> <87fr3e6sdp.fsf@tromey.com> <11b35b46-7e18-471a-94e2-91fef5b287d2@arm.com> <87tsrr5vtl.fsf@tromey.com> <62841b2c-9d0e-4efc-9b26-ca9bfd8787b9@arm.com> <87ldd35php.fsf@tromey.com> Content-Language: en-US From: Matthieu Longo In-Reply-To: <87ldd35php.fsf@tromey.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: PR3P250CA0008.EURP250.PROD.OUTLOOK.COM (2603:10a6:102:57::13) To DU0PR08MB8663.eurprd08.prod.outlook.com (2603:10a6:10:401::6) MIME-Version: 1.0 X-MS-TrafficTypeDiagnostic: DU0PR08MB8663:EE_|DB3PR08MB8842:EE_|AMS0EPF000001A3:EE_|AS2PR08MB9152:EE_ X-MS-Office365-Filtering-Correlation-Id: b514c98e-dcf3-42ff-2e15-08debd6a53c8 x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; ARA:13230040|366016|376014|1800799024|18002099003|22082099003|11063799006|4143699003|56012099006; X-Microsoft-Antispam-Message-Info-Original: gvVRCbalZHvcRjG3Z2fG/dwqfHrg5GBvudeiZmKHAxGQuaefDSUMiuNuWVi9ZfFmZh5LqZMWPMZV7DPhp/oa1tizToGFcfg6XUNFFYQU10fleoJPZPQFj6/8QdwZS8ZdJoRpvL5f7osxkYJMVGYtI6HHd1bv2mPMzc4cQkDMPuWrRJHBYTIuZaoZLnml726ckP4N/N2ZUY/0XZseRyjvf26fPlnMGeTzm8gPiDsRowedSCrIfq0U1WWt1/fulrQut5sEEitrUOnTqhisV4NBcsf2idGlrpA89VnRr6f0V/xAGuxdmEVYbCzhhgoKR3Q9u8en/D8xnzbKzy7+xAmwJl08+fiv6mmiJqk9p0XOBhSHQV99q9Qp7ddhZIsyPlxSJ5eC3VBXYoWB8A3rafh+njUTRZVlkt0wFuNqZ99e92J0A14cRdO+BBfVZCgavIoC8FWrVlYoaV2x+N0JVi/2tCcB42mDRfj+Fg6mDiZwogdtX8GWM0dwtPHAQZIoFoCOYvMHnMMCsnJ9gMTfCg16RCqQv6risdqDnYBnd2UPFsMT0lKuVMFUSjbgXlNhcWMxmjcM0hyFx5UPLikn/U5KfF2+mkoLNRpmxo8YKLOjbe+dYCm3zC1jEyy0ynYPr3m/CSPAwOmAUbrZqQ8CsK5qlfvgm1J26upKPirDutzKGKcQlbxMguGXlFDOgKHw1GZPzebxcZfWkd17bW23lbQcrw== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DU0PR08MB8663.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(366016)(376014)(1800799024)(18002099003)(22082099003)(11063799006)(4143699003)(56012099006); DIR:OUT; SFP:1101; X-Exchange-RoutingPolicyChecked: Q8DOt3gyYOw0eO0tRMBsa6P6lnJsevO/3+cWjZij51Y7QSistk/BQ5AQuWse5hpaWLxGwXn7k0qbhCR4c9/nIhQua2Lvb7ti+2qRMbpSnJ8b5EUiuI64ZBL6NnFQYz2K8h0UXtaKlmFaG8FpPf7lKol/inNDJ7Tikxco78IZdNwFbFsPgfSSGK3gV5jKDMKeiwXRQDZURT/B4jtqvNcRm99qQOQz8A/C6DJlk0jSc+iOnpQPY0ub2D2COdwmlKJO5/63Fb2JxSkvsa/lc1KYwRo16r/f4Ie2f/lZGLM6FlGziSC8mCnaWUknZxzX545HUDLkgSH/1VvPgahBHPHHnw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB3PR08MB8842 X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AMS0EPF000001A3.eurprd05.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: e580289e-9de5-460a-ee2c-08debd6a2be4 X-Microsoft-Antispam: BCL:0; ARA:13230040|376014|14060799003|36860700016|1800799024|82310400026|35042699022|18002099003|22082099003|4143699003|11063799006|56012099006; X-Microsoft-Antispam-Message-Info: ay63pZQ3OFl6Qrxdw0KMLcnqBPzPZn0E4YkCz1VnjnsOZcnmTH4aUz+wOJWU335iFYti50A9ra4ffz1JoZFHuvM+ZXmqjVaPhIuabfIHG+m24Q6zNtOzbOhbBMBd6YCKwhoJUFQUYcKAyzrPFeIgHvPT4HOvDWdkI5vIcCbDnhVGOL7J6M+TsQqKgzvLlQTUVt43EXyGXFoXWmFl0a2I+i5wpSA69ztLUodJ1J3mrIzF8voJfoECm/bk36U3FH/Dp/PFqH+TQsfspc9mz8dVXFVJHDJaFwVXnpNFHHG9vUTUqaZg7ZEO2fe3lK1aWrL7wn0FDkgP2R37C82UrxOpu2PuYg6xhg+1iRxZs/34YNuv9aOor8VP+oN5eydXYK0ISYq8eqXLEV5AwTBqx2dOnfacO0h1jEiFkBJ5ABjPg/TOqfjxBnqUlS4tBopJJvJFY7kB841a0oWOfjUfkpfR1xcNjBxLxjB+zhXaC5j4Wbo6NntCo23439DUotP79/8DehALpyNvm98y51h1848bsxaZXMa/zlSW5PAITeLLaqYqdM3W4lEb/50oKGEu2FNC1rRosKHWcLYdVEyPkQz1k8IDsOYy2yQNiMQxhQaPDx4inuh99waxx3zNPsDkMZRKHypoSYJofZXfPu38qNIhBY3EDPdu5N/YK0aBPVbwYFruU/AIWBxqD0byQ1Njrbc6OQKyxOBCrergW+l86UZNmg82frqZlVc/D4p49sVb9dI= X-Forefront-Antispam-Report: CIP:4.158.2.129; CTRY:GB; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:outbound-uk1.az.dlp.m.darktrace.com; PTR:InfoDomainNonexistent; CAT:NONE; SFS:(13230040)(376014)(14060799003)(36860700016)(1800799024)(82310400026)(35042699022)(18002099003)(22082099003)(4143699003)(11063799006)(56012099006); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: +UOoSBb3AwzYn4WtvB2Y7Xm7KmkdEfMESDXURQz/djoANG6q9Jjn8kPR/FCbeJW8RpfO0nlnO//ugOQ0+Rx0+7ldt4eAqPe11jj44a3qaJfJOR9wr7rsXQSM1q6kGkZOY0PifXmQbL2VNpJrGzJK5ojTyBTxLvexd+l0GpQrxK66WaXKSY7SjVXXWQysGeb4ooxQfJ6RwA61m4cgfvA8yogftu6XXKKInbDoApPK8hn8RA7s16fWlOlaygI10U8NWhLbor0It+PeaZD8ruSegIOZ7Ems4fpazSZtqKz45aa2WPuF3sX+TK68JZylKTZscYHx59CTxXsrsau49ZjRa/q1zloOWk4uwDIYcrUH2bL3R32N+QGS52M7462wBnzpRpJg1ZEyP+j0KS4Dd5RNBS8j7QUGmeUJTK8A+F1PClneDEkaPtjhhfwPVuVov//T X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 May 2026 10:09:10.2058 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: b514c98e-dcf3-42ff-2e15-08debd6a53c8 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[4.158.2.129]; Helo=[outbound-uk1.az.dlp.m.darktrace.com] X-MS-Exchange-CrossTenant-AuthSource: AMS0EPF000001A3.eurprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB9152 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 On 28/05/2026 20:00, Tom Tromey wrote: >>>>>> "Matthieu" == Matthieu Longo writes: > > Matthieu> Indeed that can happen, for instance, when this function is called > Matthieu> inside a tp_clear() in the middle of a PyObject destruction. > > Thanks. > > Matthieu> Something like below would at least avoid the general abort, but it > Matthieu> would cause logging of errors in the middle of the destruction. How > Matthieu> useful would it be ? > > Matthieu> gdbpy_ref<> fully_qualified_name (PyType_GetFullyQualifiedName (py_type)); > Matthieu> if (fully_qualified_name == nullptr) > Matthieu> { > Matthieu> PyErr_Print(); > Matthieu> PyErr_Clear(); > Matthieu> return {}; > Matthieu> } > > Matthieu> At this point, I don't think that it is super important not to crash > Matthieu> because there is a serious logic error somewhere if we are unable to > Matthieu> get this name. Consequently, an assert might be more appropriate. > > If we think it could conceivably happen then it should probably just > call gdbpy_print_stack (which is basically the above but with some user > controls) and then return some error string. > > Tom What about the below ? Matthieu diff --git a/gdb/python/py-obj-type.c b/gdb/python/py-obj-type.c index 45f7d8a3d74..514dbf5c179 100644 --- a/gdb/python/py-obj-type.c +++ b/gdb/python/py-obj-type.c @@ -27,7 +27,11 @@ gdb_py_tp_name (PyTypeObject *py_type) noexcept auto pyobj_to_str = [](PyObject *name) -> std::string { const char *s = PyUnicode_AsUTF8AndSize (name, nullptr); - return (s == nullptr) ? "" : s; + if (s != nullptr) + return s; + + gdbpy_print_stack (); + error (_("Could not convert PyObject to UTF-8 string.")); }; #if PY_VERSION_HEX >= 0x030d0000 @@ -35,8 +39,10 @@ gdb_py_tp_name (PyTypeObject *py_type) noexcept part of the stable ABI since version 3.13. */ gdbpy_ref<> fully_qualified_name (PyType_GetFullyQualifiedName (py_type)); if (fully_qualified_name == nullptr) - return {}; - + { + gdbpy_print_stack (); + error (_("Could not get fully qualified name.")); + } return pyobj_to_str (fully_qualified_name.get ()); #else /* PY_VERSION_HEX < 0x030d0000 && ! defined (Py_LIMITED_API) */ @@ -52,8 +58,10 @@ gdb_py_tp_name (PyTypeObject *py_type) noexcept /* Note: PyType_GetQualName() was added in version 3.11. */ gdbpy_ref<> qualname (PyType_GetQualName (py_type)); if (qualname == nullptr) - return {}; - + { + gdbpy_print_stack (); + error (_("Could not get qualified name.")); + } return pyobj_to_str (qualname.get ()); # else @@ -64,8 +72,10 @@ gdb_py_tp_name (PyTypeObject *py_type) noexcept when the minimum supported Python version is increased above 3.10. */ PyHeapTypeObject *ht = (PyHeapTypeObject *) py_type; if (ht->ht_qualname == nullptr) - return {}; - + { + gdbpy_print_stack (); + error (_("Could not get qualified name.")); + } return pyobj_to_str (ht->ht_qualname); # endif #endif