From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id OFSAK9Tiol+3WQAAWB0awg (envelope-from ) for ; Wed, 04 Nov 2020 12:20:20 -0500 Received: by simark.ca (Postfix, from userid 112) id A685F1F08B; Wed, 4 Nov 2020 12:20:20 -0500 (EST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on simark.ca X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=MAILING_LIST_MULTI, URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.2 Received: from sourceware.org (server2.sourceware.org [8.43.85.97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by simark.ca (Postfix) with ESMTPS id DB2821E58E for ; Wed, 4 Nov 2020 12:20:19 -0500 (EST) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 4F5BC388A031; Wed, 4 Nov 2020 17:20:19 +0000 (GMT) Received: from mx2.suse.de (mx2.suse.de [195.135.220.15]) by sourceware.org (Postfix) with ESMTPS id 3F578388A031 for ; Wed, 4 Nov 2020 17:20:16 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 3F578388A031 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=suse.de Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=tdevries@suse.de X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (unknown [195.135.221.27]) by mx2.suse.de (Postfix) with ESMTP id 53F87ACBA; Wed, 4 Nov 2020 17:20:15 +0000 (UTC) Subject: Re: [PATCH 0/9] Fix most -fgnat-encodings=minimal failures From: Tom de Vries To: Tom Tromey References: <20200930200600.1207702-1-tromey@adacore.com> <87wnz1jf61.fsf@tromey.com> <841f46d8-6f6a-0b89-a99f-6077300e849f@suse.de> Message-ID: Date: Wed, 4 Nov 2020 18:20:14 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.4.0 MIME-Version: 1.0 In-Reply-To: <841f46d8-6f6a-0b89-a99f-6077300e849f@suse.de> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: gdb-patches@sourceware.org Errors-To: gdb-patches-bounces@sourceware.org Sender: "Gdb-patches" On 11/4/20 5:33 PM, Tom de Vries wrote: > On 11/4/20 4:49 PM, Tom Tromey wrote: >>>>>>> "Tom" == Tom Tromey writes: >> >> Tom> GNAT has two debuginfo modes -- the default, which is to emit "GNAT >> Tom> encodings", and -fgnat-encodings=minimal, which emits something closer >> Tom> to pure DWARF. >> >> Tom> Historically gdb has only handled GNAT encodings. This patch series >> Tom> brings gdb most of the way to handling -fgnat-encodings=minimal. The >> Tom> remaining issues are going to require some patches to GNAT and gdb; my >> Tom> plan is to only land the gdb changes once the GNAT changes have gone >> Tom> in. >> >> Tom> Patches #2 - #9 were all reviewed internally by Joel. However, they >> Tom> aren't all purely Ada-specific. (Patch #1 is new, written while I was >> Tom> prepping this series -- see the comments there.) >> >> Tom> For gdb itself, the benefit of these changes is that with >> Tom> minimal-encodings, the Ada type system works more like the rest of >> Tom> gdb. For users the main benefit is that the Python API works more >> Tom> nicely. >> >> I'm checking these in now. > > With a build from commit d8f62e8447 "Recognize names of array types", I get: > ... > FAIL: gdb.ada/array_of_variant.exp: scenario=minimal: print entire array > FAIL: gdb.ada/array_of_variant.exp: scenario=minimal: print first array > element > FAIL: gdb.ada/array_of_variant.exp: scenario=minimal: print first array > slice > FAIL: gdb.ada/big_packed_array.exp: scenario=minimal: print bad > KPASS: gdb.ada/enum_idx_packed.exp: scenario=minimal: ptype small (PRMS > minimal encodings) > KPASS: gdb.ada/enum_idx_packed.exp: scenario=minimal: print small (PRMS > minimal encodings) > KPASS: gdb.ada/enum_idx_packed.exp: scenario=minimal: print small'first > (PRMS minimal encodings) > KPASS: gdb.ada/enum_idx_packed.exp: scenario=minimal: ptype multi (PRMS > minimal encodings) > KPASS: gdb.ada/enum_idx_packed.exp: scenario=minimal: print multi (PRMS > minimal encodings) > KPASS: gdb.ada/enum_idx_packed.exp: scenario=minimal: print multi'first > (PRMS minimal encodings) > KPASS: gdb.ada/enum_idx_packed.exp: scenario=minimal: print multi_multi > (PRMS minimal encodings) > KPASS: gdb.ada/enum_idx_packed.exp: scenario=minimal: print > multi_multi(1,3) (PRMS minimal encodings) > KPASS: gdb.ada/enum_idx_packed.exp: scenario=minimal: print > multi_multi(2) (PRMS minimal encodings) > KPASS: gdb.ada/mod_from_name.exp: scenario=minimal: print xp (PRMS > minimal encodings) > KPASS: gdb.ada/pckd_arr_ren.exp: scenario=minimal: print var (PRMS > minimal encodings) > ... As well as: ... FAIL: gdb.dwarf2/data-loc.exp: ptype foo.three FAIL: gdb.dwarf2/data-loc.exp: print foo.three_tdef FAIL: gdb.dwarf2/data-loc.exp: ptype foo.three_tdef FAIL: gdb.dwarf2/data-loc.exp: ptype foo.five FAIL: gdb.dwarf2/data-loc.exp: print foo.five_tdef FAIL: gdb.dwarf2/data-loc.exp: ptype foo.five_tdef FAIL: gdb.dwarf2/data-loc.exp: print foo__three FAIL: gdb.dwarf2/data-loc.exp: ptype foo__three FAIL: gdb.dwarf2/data-loc.exp: print foo__three_tdef FAIL: gdb.dwarf2/data-loc.exp: ptype foo__three_tdef FAIL: gdb.dwarf2/data-loc.exp: print foo__five FAIL: gdb.dwarf2/data-loc.exp: ptype foo__five FAIL: gdb.dwarf2/data-loc.exp: print foo__five_tdef FAIL: gdb.dwarf2/data-loc.exp: ptype foo__five_tdef FAIL: gdb.dwarf2/data-loc.exp: ptype foo__array_type ... Thanks, - Tom