From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id YQAbAlK7rmlBoh8AWB0awg (envelope-from ) for ; Mon, 09 Mar 2026 08:21:38 -0400 Authentication-Results: simark.ca; dkim=pass (1024-bit key; unprotected) header.d=suse.de header.i=@suse.de header.a=rsa-sha256 header.s=susede2_rsa header.b=DNSqy0aC; dkim=pass header.d=suse.de header.i=@suse.de header.a=ed25519-sha256 header.s=susede2_ed25519 header.b=hfuUtLh0; dkim=pass (1024-bit key) header.d=suse.de header.i=@suse.de header.a=rsa-sha256 header.s=susede2_rsa header.b=DNSqy0aC; dkim=neutral header.d=suse.de header.i=@suse.de header.a=ed25519-sha256 header.s=susede2_ed25519 header.b=hfuUtLh0; dkim-atps=neutral Received: by simark.ca (Postfix, from userid 112) id F34001E08D; Mon, 09 Mar 2026 08:21:37 -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 C75D51E08D for ; Mon, 09 Mar 2026 08:21:35 -0400 (EDT) Received: from vm01.sourceware.org (localhost [127.0.0.1]) by sourceware.org (Postfix) with ESMTP id 55D2B4BA23FC for ; Mon, 9 Mar 2026 12:21:35 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 55D2B4BA23FC Authentication-Results: sourceware.org; dkim=pass (1024-bit key, unprotected) header.d=suse.de header.i=@suse.de header.a=rsa-sha256 header.s=susede2_rsa header.b=DNSqy0aC; dkim=pass header.d=suse.de header.i=@suse.de header.a=ed25519-sha256 header.s=susede2_ed25519 header.b=hfuUtLh0; dkim=pass (1024-bit key) header.d=suse.de header.i=@suse.de header.a=rsa-sha256 header.s=susede2_rsa header.b=DNSqy0aC; dkim=neutral header.d=suse.de header.i=@suse.de header.a=ed25519-sha256 header.s=susede2_ed25519 header.b=hfuUtLh0 Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.223.131]) by sourceware.org (Postfix) with ESMTPS id 6BC0E4BA23C0 for ; Mon, 9 Mar 2026 12:19:43 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 6BC0E4BA23C0 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=suse.de Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=suse.de ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 6BC0E4BA23C0 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=195.135.223.131 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1773058783; cv=none; b=vqhb5zxhdJktOPV2aYukmD5iGPxyx9ihc0RnNnIZlHbIMtD7eY8jwVoXyUOWXvoA+ejw2kloJ5IU/1JRhcu57yH0j8/qmj8mNBBIsjF+So3lanipfbwg3RI1O58g0hoOF3eKc00Rj8jakdecb2A2WtwtTG4hJ3rqvj2ot7OO7rI= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1773058783; c=relaxed/simple; bh=X7IbaTiWeTK38VY5l+oQDk5XoKx8+9tK53+oWqNXIW0=; h=DKIM-Signature:DKIM-Signature:DKIM-Signature:DKIM-Signature:From: To:Subject:Date:Message-ID:MIME-Version; b=aJqS7nysUC+bsYsSnLGmHmS+ilQGgFN+6ndzn/NeDSkhwFoVnkRcTgAByLrXHKS4bK5iE0gi+zhLAh9UJIgbrbdXFNNn4a8AGs3n0TQxDepWFEY9OWdrI+020NTufyrwZyBfBPn/uO1Oq642B2QtWLJsrZ0TbifzuJqjfFP1QM4= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 6BC0E4BA23C0 Received: from imap1.dmz-prg2.suse.org (unknown [10.150.64.97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id 13AF15BE31 for ; Mon, 9 Mar 2026 12:19:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1773058771; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=Bx4f4mu2kZe6H8J4L6mbg9avq+/rMSRFEDmdfXrygIc=; b=DNSqy0aCw3ojFKb6FiIfRSgmkXJJPUbA50+FICLmYhJ9ef8vpKoDebhJ+5wEFafYifsjE/ 5vDeLdqNZILdbXjBVZP273elCqmSBCfcaUoh66yr2hl9nClMNHli+q3Syur7eZk6pB218q orKsl9KSc6MvFDKTx7i8nqGMpc+MPSc= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1773058771; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=Bx4f4mu2kZe6H8J4L6mbg9avq+/rMSRFEDmdfXrygIc=; b=hfuUtLh0vZxs965OOpAaF8oilYEUpaSudcBxz/NBV/zrWx/xgBkLIYNGUTNCnLk8meB6T6 QtVHYLb9e1mTm2BQ== Authentication-Results: smtp-out2.suse.de; none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1773058771; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=Bx4f4mu2kZe6H8J4L6mbg9avq+/rMSRFEDmdfXrygIc=; b=DNSqy0aCw3ojFKb6FiIfRSgmkXJJPUbA50+FICLmYhJ9ef8vpKoDebhJ+5wEFafYifsjE/ 5vDeLdqNZILdbXjBVZP273elCqmSBCfcaUoh66yr2hl9nClMNHli+q3Syur7eZk6pB218q orKsl9KSc6MvFDKTx7i8nqGMpc+MPSc= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1773058771; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=Bx4f4mu2kZe6H8J4L6mbg9avq+/rMSRFEDmdfXrygIc=; b=hfuUtLh0vZxs965OOpAaF8oilYEUpaSudcBxz/NBV/zrWx/xgBkLIYNGUTNCnLk8meB6T6 QtVHYLb9e1mTm2BQ== Received: from imap1.dmz-prg2.suse.org (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by imap1.dmz-prg2.suse.org (Postfix) with ESMTPS id EE2FE3EEC7 for ; Mon, 9 Mar 2026 12:19:30 +0000 (UTC) Received: from dovecot-director2.suse.de ([2a07:de40:b281:106:10:150:64:167]) by imap1.dmz-prg2.suse.org with ESMTPSA id SL3BONK6rmltMgAAD6G6ig (envelope-from ) for ; Mon, 09 Mar 2026 12:19:30 +0000 From: Tom de Vries To: gdb-patches@sourceware.org Subject: [PATCH 3/3] [gdb/contrib] Avoid NotImplementedError in dwarf-to-dwarf-assembler.py Date: Mon, 9 Mar 2026 13:19:30 +0100 Message-ID: <20260309121930.3098744-4-tdevries@suse.de> X-Mailer: git-send-email 2.51.0 In-Reply-To: <20260309121930.3098744-1-tdevries@suse.de> References: <20260309121930.3098744-1-tdevries@suse.de> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spamd-Result: default: False [-2.79 / 50.00]; BAYES_HAM(-2.99)[99.96%]; NEURAL_HAM_LONG(-1.00)[-1.000]; MID_CONTAINS_FROM(1.00)[]; R_MISSING_CHARSET(0.50)[]; NEURAL_HAM_SHORT(-0.20)[-1.000]; MIME_GOOD(-0.10)[text/plain]; FUZZY_RATELIMITED(0.00)[rspamd.com]; RCVD_VIA_SMTP_AUTH(0.00)[]; RCPT_COUNT_ONE(0.00)[1]; ARC_NA(0.00)[]; DKIM_SIGNED(0.00)[suse.de:s=susede2_rsa,suse.de:s=susede2_ed25519]; DBL_BLOCKED_OPENRESOLVER(0.00)[imap1.dmz-prg2.suse.org:helo]; FROM_EQ_ENVFROM(0.00)[]; FROM_HAS_DN(0.00)[]; MIME_TRACE(0.00)[0:+]; RCVD_COUNT_TWO(0.00)[2]; TO_MATCH_ENVRCPT_ALL(0.00)[]; TO_DN_NONE(0.00)[]; PREVIOUSLY_DELIVERED(0.00)[gdb-patches@sourceware.org]; RCVD_TLS_ALL(0.00)[] 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 The previous commit mentions: ... File "dwarf-to-dwarf-assembler.py", line 173, in _format_value raise NotImplementedError(f"Unknown data type: {type(self.value)}") NotImplementedError: Unknown data type: ... While the NotImplementedError makes its point clear, it's unhelpful in two ways: - it's hard to find out what part of the input causes the error, and - it may be that the user is not interested at all in the bit triggering the error, but some part after it, and the error prevents the user from seeing it Fix this by returning an error string instead of raising an error, resulting in this output: ... DW_AT_upper_bound Unknown data type: : \ [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255] DW_FORM_data16 ... --- gdb/contrib/dwarf-to-dwarf-assembler.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gdb/contrib/dwarf-to-dwarf-assembler.py b/gdb/contrib/dwarf-to-dwarf-assembler.py index 91e868da998..4832c6c8cb1 100755 --- a/gdb/contrib/dwarf-to-dwarf-assembler.py +++ b/gdb/contrib/dwarf-to-dwarf-assembler.py @@ -173,7 +173,7 @@ class DWARFAttribute: elif isinstance(self.value, ListContainer): return "0x" + "".join(format(i, "x") for i in self.value) else: - raise NotImplementedError(f"Unknown data type: {type(self.value)}") + return f"Unknown data type: {type(self.value)}: {self.value}" def format( self, offset_die_lookup: dict[int, "DWARFDIE"], indent_count: int = 0 -- 2.51.0