From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id JOXzNg1wA2JgewAAWB0awg (envelope-from ) for ; Wed, 09 Feb 2022 02:41:01 -0500 Received: by simark.ca (Postfix, from userid 112) id CFBEB1F3C6; Wed, 9 Feb 2022 02:41:01 -0500 (EST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on simark.ca X-Spam-Level: X-Spam-Status: No, score=-3.0 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,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 951DF1EDF0 for ; Wed, 9 Feb 2022 02:41:00 -0500 (EST) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id BB06A385842E for ; Wed, 9 Feb 2022 07:40:59 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org BB06A385842E DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1644392459; bh=s4ZPsnQlujnQDmGWYqcW6ikkRm5W5wTGaVdoJT/TXWY=; h=To:Subject:Date:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:From; b=wGsnOoEaEJi72L0KddtIRRDcNTuTkfcTwCnTnS0pphKH5QtLAQ2UTRGBykHs+aEbX rQq5TGTO3BQTm1oZ9nea4JbS38e8QBZHvNVNp/j9/Add5Phah7f9RzXEHPO6J9ApXH sO2Mz+nRu25QtyeKLUsu00orKPcyEte+OnWt9ac0= Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by sourceware.org (Postfix) with ESMTPS id DC863385842B for ; Wed, 9 Feb 2022 07:40:36 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org DC863385842B X-IronPort-AV: E=McAfee;i="6200,9189,10252"; a="335548684" X-IronPort-AV: E=Sophos;i="5.88,355,1635231600"; d="scan'208";a="335548684" Received: from orsmga002.jf.intel.com ([10.7.209.21]) by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Feb 2022 23:40:35 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.88,355,1635231600"; d="scan'208";a="499876576" Received: from orsmsx602.amr.corp.intel.com ([10.22.229.15]) by orsmga002.jf.intel.com with ESMTP; 08 Feb 2022 23:40:35 -0800 Received: from orsmsx611.amr.corp.intel.com (10.22.229.24) by ORSMSX602.amr.corp.intel.com (10.22.229.15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.20; Tue, 8 Feb 2022 23:40:35 -0800 Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by orsmsx611.amr.corp.intel.com (10.22.229.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.20 via Frontend Transport; Tue, 8 Feb 2022 23:40:35 -0800 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (104.47.56.172) 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; Tue, 8 Feb 2022 23:40:34 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XjJ3m9vXCteZs4qCRVW1GTyc0D1CX0YDV21IbvDBWhHH5lbZGH2V8a9U89iDn7LcIvqIwbUFkuSPJQ0e0cdvDXfSFFXSTSuHVG/P4icFufzi1Heminx6t3eR/puuyT28oTGQYoy1771LovR67+C1N74r5kbZyxmRpd0EDTYPJjV/6P/QhiMdrbL5zU7dDUpD57kXNN10jd1Gd90U7x5NvheO0DGN0CQh+qmqtELFbCYYlezy3rXxcLR36LUk6RbGtF3vq+LOp1GvD/HF7hCEKbBQGXqUHiKaRBaRXN7lOetvSvOkA147gM/duv2A+eqas6QrA5HADLDgFcH4raK4GA== 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=yHSH26N6wmhTJIhiRt6TghKidIe9TrHZUAqvlU/aDtE=; b=GB7S2KSypXAerN4wPxjyVnoror77Mtp7HcUf2xNmPG7q5q8qaAibmJ/DjgWOkmUa2LcXmVapVdWA5InEcmyIjchFZ2AIkkeSvaAv+AgISHVjX00+L/gM5G0/rqXU+wCK4sRm56lZOM1ubAxk1+gSVHYKmIQyASY9YDBbu2taGbAw66JnqH+HjOh1WnAoAlQ+MyjXfB6j8FU8JP73XVxyoA1X9s8j0n0Bf7O3cMW6tE8uCtYAr0lFikUw5HiHT3quRE9FbkjDysiMFQp8DUDXFlrAvo6oevM7DOrcbUkXabDMELsS32VCHBWh5mwFjJ6nhJVQdFzAAyz0RSANYcLuLQ== 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 CY4PR11MB1352.namprd11.prod.outlook.com (2603:10b6:903:2a::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4951.18; Wed, 9 Feb 2022 07:40:33 +0000 Received: from BYAPR11MB3590.namprd11.prod.outlook.com ([fe80::71b1:4e55:f610:988f]) by BYAPR11MB3590.namprd11.prod.outlook.com ([fe80::71b1:4e55:f610:988f%3]) with mapi id 15.20.4975.011; Wed, 9 Feb 2022 07:40:33 +0000 To: "gdb-patches@sourceware.org" Subject: RE: [PING 3] [PATCH v3 1/1] gdb: Use a typedef's scoped type name to identify local typedefs Thread-Topic: [PING 3] [PATCH v3 1/1] gdb: Use a typedef's scoped type name to identify local typedefs Thread-Index: AdgdiBBAgYAFMnQXTU+VVU/IVZnyyA== Date: Wed, 9 Feb 2022 07:40:33 +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: b163c7d7-3768-4e5c-8a05-08d9eb9f7436 x-ms-traffictypediagnostic: CY4PR11MB1352:EE_ x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:5797; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: FNL9uFYKmFhPHl579w/BSulRO+p4tTc4jurfbHvmJUmH9mQ3XarR5esykiN0+ytDpjd+9zFKK0ChqYS/aCG7u9302JSyR0Hcn6frMrnHwJHiYABG2tUIQXWQqO0U6IY5cBwJPDezFKJ+oKfozwlY5YrKjlnvp1M28I59dH9RjI4apuZy6t7tKbb/X6QFbDpZBF5Ut3xhbpDfHq+fILG8zGWjjMwwqA9Ta+R+/c5MwEQxA6Fzo2p9uGjaXnqNhpnjP4EVMmr/PGysUUu5mbhfAsh5IoAvJGl+a3j518pAyWlgQKjvvcQ25JZ/pR+Q1x2swIbdy4ChTOChrt4VL4DbJGqiywwKV0KHSUwiPU0ZDfipKrBYcAOkr97xKfAgJ9exmRpR8f4JkjNq2NBtqMhY2thLwTl5qNbSFR6veejH/HjHBIONAIc61J5Uj3B9IkJWOPs4HUUmgLfug7Yrj2RRmMVFNMH9Om3PVrYweJVUQujY+dtBRd/fJaddY769qJB+kDdT55Y7Yq1LvZdDUz3lJK84aPL4n7LUMlGi1+O9F2Qy5oeCrBwISAvQjsy3Kysx2dxRVOsp1NNCvUjLNPx22ESsskKaAkU1pc2XCLxctBMhZ6TUuNFvNecbv4rPjgy7MobT21v4OmLkXbCHh45R1TPrzgFRQkpxLm/gpSea6PD86AO/6YqGs++yDkh5Z637IqxyMSuQWg8XFMA2iFoZZXvGR8zOrWYiKnuN7Ox87kPNjbSGOIvgZnJilmwUo11f25lERNxj3mEG3l8BXi/G0KLq3f7nqEgq7334qFuTs9M= 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)(6916009)(316002)(38070700005)(66556008)(86362001)(508600001)(53546011)(2906002)(38100700002)(82960400001)(966005)(71200400001)(83380400001)(6506007)(26005)(55016003)(186003)(5660300002)(66946007)(52536014)(33656002)(66446008)(122000001)(64756008)(8676002)(8936002)(76116006)(66476007)(7696005)(9686003); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?pwq2wTUgf6/I2ansg4ASlQNp65XH49ADPVKqA9zbNkaV/fBCJNeo1y96oPkT?= =?us-ascii?Q?qBw0U1VGSRjHXZcw07Sbg2eSjkEG0Bl9BPCXB2jHu//3jGiZYvHp+YlA8cPe?= =?us-ascii?Q?5DnqBzDbLfSMTgEPMvHJN0uaU8ZybLmVkvZDQ/w4FPkPxy6IdbcjdrkaTiM8?= =?us-ascii?Q?Hn+e7IfQ20nv0S9oWzcPWdFcDcFgfN8/NBSdooFxSqoQA530VX7+L30wm4sj?= =?us-ascii?Q?ysWzExhMpbsbWvmKCUXsSP36TQCNe3FP1GfrZ8u9egow3t/aZBDj+ANjELZc?= =?us-ascii?Q?Gs8fS54ZpY1sFXlLU6vwTiYDogtyPa7R7I2hlAy7dVG9dPAP18k+fPi0Stoz?= =?us-ascii?Q?JkaFa09Xg894hHxnVYN49UIOyF/81JaWQbWx+/1DGKphlE3YUHSiQspVlVTV?= =?us-ascii?Q?HSc+7zJu/pP0ZGFi6dNV7f7FNMPgt5MyXQIB2+KJgsWty7hdLy+L1xgV5gsC?= =?us-ascii?Q?vAlQB5B/dFtdmfQhg3jaHWb7P2CTtCgdW9M2UdUBofcNSvhW6aFUSVK+N94r?= =?us-ascii?Q?te6QQCRQHcHv6BJolk5YxyZTHHG4pvA42WVyhtOOZU5fH/HgPSGSbd8FrS8V?= =?us-ascii?Q?Bpm5I/jK+PQKrhdRoXqZ0lf2A7E7Ieu8wgU7CsmrvsHvsfmhL9vLryk6QV8h?= =?us-ascii?Q?iRcLfY0vIktAgYcvSDvtLI8lxgYhRx1lAW5BZvxRGADNB4xh+rIHL5pXiwKO?= =?us-ascii?Q?jCt9JeHit8bpoD0MEsI7PJZWgvP9Q3h8T8iPGWmyHpWUHvyv41IfIfPYsKKo?= =?us-ascii?Q?7VhHENH01vxMgq68rrkYP4XJpW046pK6Eh6QFbK3DalELoxpZ8yk4TMdRyCB?= =?us-ascii?Q?Sf4egSPKemfeRPlgYWOGTiEmhB+UXSWZD1VHMpcq3IX3PaTuaCdyHa+l0RQ7?= =?us-ascii?Q?3gW8If6WyW89xUEdbCSkHC5AwIuw02E5ODqldCJwZ87J7G6Y0quD/YvMjtqS?= =?us-ascii?Q?SohkX3rSrLUBzz0Y5Z0wDUvz8samynITi48Bx7uJwEVDdavLuM/BOM85oRk0?= =?us-ascii?Q?gOFymmzYPcwO+GnsMu+nAiLku9IE/YSJz7hvXrYJlgI5xzAQ3fRdMZpvhl84?= =?us-ascii?Q?DbcnT3ix9E3p/K/s8v7kY2z9jzxwJAm2AEWWNsAVE4DZJN1n3uRDDfjGi6SM?= =?us-ascii?Q?Ls2T7DRVu2fNQfRrrhcPKDUqgm6Sxt2RqNYbBXlO0sOrp12JkoSmP67rSqYX?= =?us-ascii?Q?J0/wf050wzitbFcJHxaWICT08Qg63aNyxip6zE0eUsAqwmlxRjnypoX1HQzt?= =?us-ascii?Q?q2E3Dz685Pl83PSeWZt69Sp/3px0O4BzGGAlkqXqCCOulLrdwjdNkXsqKmUr?= =?us-ascii?Q?0slm8CUUVWf57kygFnnEBS1LNK+HfTBn5FEr6T919c3x4vb5BjvBa2uL/HJU?= =?us-ascii?Q?SsimkpwSMYTI84kE+NKscuLzhsweT0p/yF0Q1/X90kkG0I7dhxGFOSDQ3fBV?= =?us-ascii?Q?mGfadK1LGbR+cY3Shw211i79WNO5SIBv4kq04talq2d1MHaSpGtWG2YNOu71?= =?us-ascii?Q?NvRIdsJlxWOosOnbUOQCoDXBIARbWJfcdgStfIwfl2u4RW2kM+JnAKDsObJ0?= =?us-ascii?Q?wCrnun2mx53OnlpqwFoP82P/KSHsEvwxTzdHsiAGQWKVZHml+iJD1S5Swehf?= =?us-ascii?Q?rmABykEaZijEuKtbTo/e3BF3RC6fwlFV/WX90oRsRD6PXhlOXf3BD+lPMQaK?= =?us-ascii?Q?c/7Y6Q=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: b163c7d7-3768-4e5c-8a05-08d9eb9f7436 X-MS-Exchange-CrossTenant-originalarrivaltime: 09 Feb 2022 07:40:33.0600 (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: wrnp7pXJVGl2MzQEJINe1F8EmU+iLWOx4swYmx1It95odHG77+d8MCn+/MnmvsyVmyRQNYzTfgs3jiMx6LkwDew3zpBk3naA1UQk87estT8= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR11MB1352 X-OriginatorOrg: intel.com Content-Transfer-Encoding: quoted-printable 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: , From: "Schimpe, Christina via Gdb-patches" Reply-To: "Schimpe, Christina" Errors-To: gdb-patches-bounces+public-inbox=simark.ca@sourceware.org Sender: "Gdb-patches" Ping. > -----Original Message----- > From: Schimpe, Christina > Sent: Wednesday, February 2, 2022 9:51 AM > 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 > = > 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 current 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..98f6af4104 > > 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