From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by sourceware.org (Postfix) with ESMTPS id 7D8C13858039 for ; Wed, 2 Feb 2022 08:51:32 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 7D8C13858039 X-IronPort-AV: E=McAfee;i="6200,9189,10245"; a="245469998" X-IronPort-AV: E=Sophos;i="5.88,336,1635231600"; d="scan'208";a="245469998" Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Feb 2022 00:51:31 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.88,336,1635231600"; d="scan'208";a="583355660" Received: from orsmsx603.amr.corp.intel.com ([10.22.229.16]) by fmsmga008.fm.intel.com with ESMTP; 02 Feb 2022 00:51:31 -0800 Received: from orsmsx609.amr.corp.intel.com (10.22.229.22) by ORSMSX603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.20; Wed, 2 Feb 2022 00:51:30 -0800 Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by orsmsx609.amr.corp.intel.com (10.22.229.22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.20 via Frontend Transport; Wed, 2 Feb 2022 00:51:30 -0800 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (104.47.59.175) by edgegateway.intel.com (134.134.137.100) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2308.20; Wed, 2 Feb 2022 00:51:30 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=edqNa0A1x7uV5qRXlXE9wNOZEwX7FyqNLDx/XSmpCEWeWiNpy0+ZJZg/0w95HpAE7CpKRLB/S7MWJPr9T0/XFw8Go5HtAVl+ebkrKV2idIdgkqoQjYYhsTlUd855StqkfPNeGQfs04eC8rapLNvRxNjA7LHRmR3onIsZm1yaLyYzdL7bze9zpH5B6g0l7NRjwcTt1TVpHybSJDI7yXjtmQSMCKi+51UrH9qu2Nzc0CMWiDmMsUxcflr7/FaomfVIeYtY44x2ilKoATk72CB9qKJ4u66DeX2lqTsw/It4cq74DJG3FdrCc6imLs8PLUO9SSiCokC01GGt1fFDaBD5hw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Y42bCGBuPtAJjk/jCG7tQUMbLzh3GLbSC+OXlcPexng=; b=DfmDveSa02Qzq6uFtEtN2B37fb8RxPmf77AOjd8YyAfk89eA0zDwzXgUM7P93DP7a8UmRpL9rG+Oec+XRGXDpB0+6VOVQsNoDL2im6K7xbk13ka1f/e6aUVPGhi5EqkzmBovIMJIH37LfEvg7d29fx+K0bC63F0CjheFE50h+P0iorx9ain7Ti1yOVuQ/5mnK9H7CBXYylieWcAY1JuXfozJc5gHmPKfUXpUHBist01/wXf//oMjgMSCVCfkoVAra0E4c13L7RYnf6QXqNdL4QXFB0KD5zVxZUJaRk8n6V12n6vnuH29lUMQIOlGB42BsSXCKtYouq+I9UwRO14ObQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none Received: from BYAPR11MB3590.namprd11.prod.outlook.com (2603:10b6:a03:b2::23) by DM5PR1101MB2297.namprd11.prod.outlook.com (2603:10b6:4:54::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4930.18; Wed, 2 Feb 2022 08:51:28 +0000 Received: from BYAPR11MB3590.namprd11.prod.outlook.com ([fe80::698d:2e18:3937:69ce]) by BYAPR11MB3590.namprd11.prod.outlook.com ([fe80::698d:2e18:3937:69ce%2]) with mapi id 15.20.4951.012; Wed, 2 Feb 2022 08:51:28 +0000 From: "Schimpe, Christina" To: "gdb-patches@sourceware.org" Subject: RE: [PING 2] [PATCH v3 1/1] gdb: Use a typedef's scoped type name to identify local typedefs Thread-Topic: [PING 2] [PATCH v3 1/1] gdb: Use a typedef's scoped type name to identify local typedefs Thread-Index: AdgYEFjqI9waHvk+RemFLlOcs2uK/Q== Date: Wed, 2 Feb 2022 08:51:28 +0000 Message-ID: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-version: 11.6.200.16 dlp-reaction: no-action x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: d751f608-0983-4b58-6c12-08d9e62933de x-ms-traffictypediagnostic: DM5PR1101MB2297:EE_ x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:8882; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: mlO5mDNA4nUYWVXgTWRDQAw+SgZU/cP2UdSrPvbxxp2VG9a9L5TzZyrc/6Q1Uh774C/ujMaGK6wQRGFI5famVDyOxTHyMDpc1CXbYYhMjffvGmNDR+uQpA+TSw5ARxYqvErVzaCwrE6UwfMEQBA3ayXgrKQpf0qqsoGEvmITUujsL0wGlIy4MzhuSWFQwRtRwuCwtzT3twf0aGzVzCWUVJYuL/nDN5RdJsN7Ev2VqSFDGKyhK+VfK6VtL+DE5JYpzmoQ1nxQqIkrdsJt59DxhLyU6ixq1xf8BjKPFviKhwocntgIUM32JxBrsBU0LzU6H/MXxhlZGb73YqiHdnGCwKfaXQy8Dk7tpVRXKoayrV8Dcc7PRYeCAJmqyAIUST96MtV2CBiyMKAoBvKWNDnqcMub7p1pELrGo7Pp4ZXKa9OX5hl2ZHjRTVBePN6SqZz/P+NyHxc7VSesB/z1/rTyPKVU2nqHtsOvBElJAs7mkrykHgvuX70fOI/h4hdZbtHOL32Pmgcin87abhDnezunQHVdUkT/esmxbZulXlUKSbogW3x1mnxoib4pCKSMPFgLo/1/J0b7frEZVcsE1Hvy55UjoKN2uNRrt1hgjvaRD0VTzgzm9fdhH6bQf0gYw9CLa0TuK4XZhup7+5BWbLrXfoJZtaoC3f9ZghFmLa6DMooShae0Oc2BEkDthzTjkIW6nZ6bBwvQS6p8+oPMc74umvlizrRF//hOPYQG1+QZeSDroVSTFLarSw+oAPgD4mU5cjV3YRSYkzXjyw8gFRgxs8j5YQQQZc3Ooc2xBKBKw3w= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BYAPR11MB3590.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230001)(366004)(9686003)(186003)(55016003)(966005)(26005)(6506007)(53546011)(7696005)(71200400001)(33656002)(508600001)(82960400001)(38070700005)(122000001)(38100700002)(86362001)(8936002)(83380400001)(316002)(2906002)(52536014)(6916009)(66446008)(64756008)(66476007)(5660300002)(66556008)(76116006)(8676002)(66946007); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?YBG3LoDsYEwByFQaNsTfQ6DGB50nujB3edWyHXvWhKLkOHlOrgxQY/jA9JY7?= =?us-ascii?Q?c/hJfpg8cCRAgAurkmJ/xnDm8zmBlzoh2JhcIrX5FX1H2YOVOSPqLnMDPeDY?= =?us-ascii?Q?StVlARACmWZYGBqdLotOFqhzB5Q4zkv6WlI9FrDycSflv1HQweNNDgcdkDdq?= =?us-ascii?Q?AnQrD3nWCH+6v5YzsFn1s99St0J1XbQ3SNXy9RUtWSbKsr8sMlcGn9tibnpZ?= =?us-ascii?Q?IqlD72rinFLZ1N7PKCFPWahFoS4t/q8W9Y5SWhtymNQ5h4qdqV088F3oKNKW?= =?us-ascii?Q?1l+cJN4eyFxN3meM6IzNEH8prhg5/RDvoFzeAvXkvNtw9XJ0KJvFD7udF/SX?= =?us-ascii?Q?6KynFQpZA2RnSqVjAhEvB1zJxNyi+I/rSz42nzGGIxBgbZ2bEsvo7kE1+7wv?= =?us-ascii?Q?jaWrFFm3br5V1q2R/GC9kBv31cxvsVC91gDOuV9bhleCZe72w2pwlrLyenMo?= =?us-ascii?Q?ugznz47ayjyegGCH3rc/hOqv48byUkpkQFhpob4W4oN7x6/P6q+9g/XQpALl?= =?us-ascii?Q?E/ANV8MWdOcmJSFWJ+6687ubu+E6oNFW+tZDsSL1mDHQyoSBz7U3S+gf7D4d?= =?us-ascii?Q?QjV27iohshosiVtmYJlHesPdONtV7BqPUOwnmSbNqZrWHoCC88agz/gOC+Zh?= =?us-ascii?Q?HAoiCje7oIdIpOhIrpaFHJQ10kVS7aP3CbCP0SFQ4eYfSZsO1yGYHc1kRoKV?= =?us-ascii?Q?kt74Sb+1dlk08+VrbetokYtNT08ftdhoUc5SORPhVmuYrKVl2tLoP4VT7Rex?= =?us-ascii?Q?N5RlnpglgInAO7eoDCtWm149I3bcYhuRV9hWVMCA839+yWSkWNF3V0F8QONz?= =?us-ascii?Q?Hu1Pd+lnSEb1qb1sE1Yg51cjFG3okDuQmrbyMKrypk0wA6pGCjmFRelXhDX7?= =?us-ascii?Q?rEVJEUUnez81JjeuIZyx8krYVItO6BWoisHfBjYabr9KzzzMsMlw7scNhzlX?= =?us-ascii?Q?JXWMTeGKL73dytIjAyeri3z3WhU3G2Ad9f6EKQtLfW87k+LOETa6JQIBR+pc?= =?us-ascii?Q?/Gl6E4OxG8mLbiNNt20bM6UZNW4+B1z5oF9oN867w+WtdYQQCx8bx3BdXkSl?= =?us-ascii?Q?jmEG1FMRufLIqY5J9GPwrNdW7veSZgtH8cmKuzCcY8z8DBOwfouRB8/TXEhm?= =?us-ascii?Q?nROGOeYrCNn6BY8FwHFyg4HFqkoMPweZ1jv3D9IN8D9tsCeSqLnLvQ/D0+jO?= =?us-ascii?Q?CqIuszYGUGL0cMAiW9U+/dTyIvW3af1+k3aLMb8JABHZQ0z44yj5wUvsx9vG?= =?us-ascii?Q?CYFk4iqRBVZQQiz5Bpuz5j3WSWoITrSYdc0+VJzmjpVfzxplbHmVYDz+txM4?= =?us-ascii?Q?+EWeUbf9AAY1u2ePANlo5INJusizCmggpfMZ6KkqjxStfMGgWOHVRLpUPVn0?= =?us-ascii?Q?IxAytD3JWGz+SklTt/znyV5zggD7JSlTTfJWHTxyNI9LgpAFF5HIwNb7oEEZ?= =?us-ascii?Q?DFinBSfqYhjtu6y6ZCy+iVuYazxQ5C3ibi8MZCrwugNhmO734Ju5LAJf66HW?= =?us-ascii?Q?3qEFF8zk+DOKU6VX7+oVB/fO3t+4VyDalulTwJM1NdIGx6WbJEz/pmqMhBDd?= =?us-ascii?Q?Sbp0moP8bNnaBmmMGba1gEHYzC1S7d2BMdMBJyb5SfoYqz/xDJLUYV9B8Xsi?= =?us-ascii?Q?TsNjs+qUjUtWJvIaRo3DSoVHUtWuCQISBLYfTQRM0vpxlLm57lsZ4/iumfvC?= =?us-ascii?Q?pycrQg=3D=3D?= Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BYAPR11MB3590.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: d751f608-0983-4b58-6c12-08d9e62933de X-MS-Exchange-CrossTenant-originalarrivaltime: 02 Feb 2022 08:51:28.6335 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 5HRtIxAUC+hiQj1hENdi11uwmnGZPgrfMT17G+9zd1MBlN9VfYo41jdQMr9ifwGtqNo5CFDTclvw7kJh4YIZN3LIt9A2Vhem/DwRbO07atA= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR1101MB2297 X-OriginatorOrg: intel.com Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-11.2 required=5.0 tests=BAYES_00, DKIMWL_WL_HIGH, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, SPF_HELO_NONE, SPF_NONE, TXREP, T_SCC_BODY_TEXT_LINE, WEIRD_PORT autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org 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: , X-List-Received-Date: Wed, 02 Feb 2022 08:51:36 -0000 Kindly pinging. The changes made for V3 of this patch are described here: = https://sourceware.org/pipermail/gdb-patches/2021-December/184601.html Thanks, Christina > -----Original Message----- > From: Schimpe, Christina > Sent: Tuesday, January 18, 2022 8:11 PM > To: gdb-patches@sourceware.org > Subject: [PING] [PATCH v3 1/1] gdb: Use a typedef's scoped type name to > identify local typedefs > = > Kindly pinging for this patch. > = > Thanks, > Christina > = > -----Original Message----- > From: Schimpe, Christina > Sent: Monday, December 20, 2021 2:15 PM > To: gdb-patches@sourceware.org > Cc: Schimpe, Christina > Subject: [PATCH v3 1/1] gdb: Use a typedef's scoped type name to identify > local typedefs > = > GDB prints the wrong type for typedefs in case there is another typedef > available for the same raw type (gdb/16040). The reason is that the curr= ent > hashmap based substitution mechanism always compares the target type of > a typedef and not its scoped name. > = > The original output of GDB for a program like > = > ~~~~ > namespace ns > { > typedef double scoped_double; > } > = > typedef double global_double; > = > class TypedefHolder > { > public: > double a; > ns::scoped_double b; > global_double c; > = > private: > typedef double class_double; > class_double d; > = > double method1(ns::scoped_double) { return 24.0; } > double method2(global_double) { return 24.0; } }; > = > int main() > { > TypedefHolder th; > return 0; > } > ~~~~ > = > is > ~~~~ > = > (gdb) b 27 > Breakpoint 1 at 0x1131: file TypedefHolder.cc, line 27. > (gdb) r > Starting program: /tmp/typedefholder > = > Breakpoint 1, main () at TypedefHolder.cc:27 > 27 return 0; > (gdb) ptype th > type =3D class TypedefHolder { > public: > class_double a; > class_double b; > class_double c; > private: > class_double d; > = > class_double method1(class_double); > class_double method2(class_double); > = > typedef double class_double; > } > ~~~~ > = > Basically all attributes of a class which have the raw type "double" are > substituted by "class_double". > = > With the patch the output is the following > = > ~~~~ > type =3D class TypedefHolder { > public: > double a; > ns::scoped_double b; > global_double c; > private: > class_double d; > = > double method1(ns::scoped_double); > double method2(global_double); > = > typedef double class_double; > } > ~~~~ > --- > gdb/testsuite/gdb.cp/ptype-flags.cc | 23 ++++++++ > gdb/testsuite/gdb.cp/ptype-flags.exp | 88 ++++++++++++++++++++++------ > gdb/typeprint.c | 3 +- > 3 files changed, 95 insertions(+), 19 deletions(-) > = > diff --git a/gdb/testsuite/gdb.cp/ptype-flags.cc > b/gdb/testsuite/gdb.cp/ptype-flags.cc > index fc92d3950c..564d272e57 100644 > --- a/gdb/testsuite/gdb.cp/ptype-flags.cc > +++ b/gdb/testsuite/gdb.cp/ptype-flags.cc > @@ -38,7 +38,30 @@ public: > double method(void) { return 23.0; } > }; > = > +namespace ns > +{ > + typedef double scoped_double; > +} > + > +typedef double global_double; > + > +class TypedefHolder > +{ > +public: > + double a; > + ns::scoped_double b; > + global_double c; > + > +private: > + typedef double class_double; > + class_double d; > + > + double method1(ns::scoped_double) { return 24.0; } double > + method2(global_double) { return 24.0; } }; > + > Holder value; > +TypedefHolder value2; > = > int main() > { > diff --git a/gdb/testsuite/gdb.cp/ptype-flags.exp > b/gdb/testsuite/gdb.cp/ptype-flags.exp > index c368415793..9734a70ee2 100644 > --- a/gdb/testsuite/gdb.cp/ptype-flags.exp > +++ b/gdb/testsuite/gdb.cp/ptype-flags.exp > @@ -33,7 +33,9 @@ if ![runto_main] then { gdb_test_no_output "set > language c++" "" > gdb_test_no_output "set width 0" "" > = > -proc do_check {name {flags ""} {show_typedefs 1} {show_methods 1} {raw > 0}} { > +proc do_check_holder {name {flags ""} {show_typedefs 1} {show_methods > 1} > + {raw 0}} { > + > set contents { > { base "public Base" } > { field public "Simple t;" } > @@ -62,24 +64,76 @@ proc do_check {name {flags ""} {show_typedefs 1} > {show_methods 1} {raw 0}} { > "" {} $flags > } > = > -do_check "basic test" > -do_check "no methods" "/m" 1 0 > -do_check "no typedefs" "/t" 0 1 > -do_check "no methods or typedefs" "/mt" 0 0 > +proc do_check_typedef_holder {name {flags ""} {show_typedefs 1} > {show_methods 1} > + {raw 0}} { > + > + set contents { > + { field public "double a;" } > + { field public "ns::scoped_double b;" } > + { field public "global_double c;" } > + } > + > + if {$show_typedefs} { > + lappend contents { typedef private "typedef double class_double;" } > + } > + > + if {$show_methods} { > + lappend contents { method private "double > method1(ns::scoped_double);" } > + lappend contents { method private "double > method2(global_double);" } > + } > + > + if {$raw} { > + lappend contents { field private "TypedefHolder::class_double d;" } > + } else { > + lappend contents { field private "class_double d;" } > + } > + > + cp_test_ptype_class value2 $name "class" "TypedefHolder" $contents \ > + "" {} $flags > +} > = > -do_check "raw" "/r" 1 1 1 > -do_check "raw no methods" "/rm" 1 0 1 > -do_check "raw no typedefs" "/rt" 0 1 1 > -do_check "raw no methods or typedefs" "/rmt" 0 0 1 > +do_check_holder "basic test" > +do_check_holder "no methods" "/m" 1 0 > +do_check_holder "no typedefs" "/t" 0 1 > +do_check_holder "no methods or typedefs" "/mt" 0 0 > +do_check_typedef_holder "typdefs class: basic test" > +do_check_typedef_holder "typdefs class: no methods" "/m" 1 0 > +do_check_typedef_holder "typdefs class: no typedefs" "/t" 0 1 0 > +do_check_typedef_holder "typdefs class:no methods or typedefs" "/mt" 0 > +0 > + > +do_check_holder "raw" "/r" 1 1 1 > +do_check_holder "raw no methods" "/rm" 1 0 1 do_check_holder "raw no > +typedefs" "/rt" 0 1 1 do_check_holder "raw no methods or typedefs" > +"/rmt" 0 0 1 do_check_typedef_holder "typedef class: raw" "/r" 1 1 1 > +do_check_typedef_holder "typedef class: raw no methods" "/rm" 1 0 1 > +do_check_typedef_holder "typedef class: raw no typedefs" "/rt" 0 1 1 > +do_check_typedef_holder "typedef class: raw no methods or typedefs" > +"/rmt" 0 0 1 > = > gdb_test_no_output "set print type methods off" > -do_check "basic test, default methods off" "" 1 0 -do_check "methods, > default methods off" "/M" 1 1 -do_check "no typedefs, default methods off" > "/t" 0 0 -do_check "methods, no typedefs, default methods off" "/Mt" 0 1 > +do_check_holder "basic test, default methods off" "" 1 0 > +do_check_holder "methods, default methods off" "/M" 1 1 > do_check_holder > +"no typedefs, default methods off" "/t" 0 0 do_check_holder "methods, > +no typedefs, default methods off" "/Mt" 0 1 do_check_typedef_holder \ > + "typedef class: basic test, default methods off" "" 1 0 > +do_check_typedef_holder \ > + "typedef class: methods, default methods off" "/M" 1 1 > +do_check_typedef_holder \ > + "typedef class: no typedefs, default methods off" "/t" 0 0 > +do_check_typedef_holder \ > + "typedef class: methods, no typedefs, default methods off" "/Mt" 0 > +1 > = > gdb_test_no_output "set print type typedefs off" > -do_check "basic test, default methods+typedefs off" "" 0 0 -do_check > "methods, default methods+typedefs off" "/M" 0 1 -do_check "typedefs, > default methods+typedefs off" "/T" 1 0 -do_check "methods typedefs, > default methods+typedefs off" "/MT" 1 1 > +do_check_holder "basic test, default methods+typedefs off" "" 0 0 > +do_check_holder "methods, default methods+typedefs off" "/M" 0 1 > +do_check_holder "typedefs, default methods+typedefs off" "/T" 1 0 > +do_check_holder "methods typedefs, default methods+typedefs off" > "/MT" > +1 1 do_check_typedef_holder \ > + "typedef class: basic test, default methods+typedefs off" "" 0 0 > +do_check_typedef_holder \ > + "typedef class: methods, default methods+typedefs off" "/M" 0 1 > +do_check_typedef_holder \ > + "typedef class: typedefs, default methods+typedefs off" "/T" 1 0 > +do_check_typedef_holder \ > + "typedef class: methods typedefs, default methods+typedefs off" > +"/MT" 1 1 > diff --git a/gdb/typeprint.c b/gdb/typeprint.c index 1312111b60..98f6af41= 04 > 100644 > --- a/gdb/typeprint.c > +++ b/gdb/typeprint.c > @@ -201,9 +201,8 @@ static hashval_t > hash_typedef_field (const void *p) > { > const struct decl_field *tf =3D (const struct decl_field *) p; > - struct type *t =3D check_typedef (tf->type); > = > - return htab_hash_string (TYPE_SAFE_NAME (t)); > + return htab_hash_string (TYPE_SAFE_NAME (tf->type)); > } > = > /* An equality function for a typedef field. */ > -- > 2.25.1 Intel Deutschland GmbH Registered Address: Am Campeon 10, 85579 Neubiberg, Germany Tel: +49 89 99 8853-0, www.intel.de Managing Directors: Christin Eisenschmid, Sharon Heck, Tiffany Doon Silva = Chairperson of the Supervisory Board: Nicole Lau Registered Office: Munich Commercial Register: Amtsgericht Muenchen HRB 186928