From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 4234 invoked by alias); 5 Oct 2016 10:07:46 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 4216 invoked by uid 89); 5 Oct 2016 10:07:45 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-4.3 required=5.0 tests=AWL,BAYES_00,MIME_BASE64_BLANKS,RP_MATCHES_RCVD,SPF_PASS autolearn=ham version=3.3.2 spammy=H*r:10.7.209, H*RU:HELO, Hx-spam-relays-external:HELO, H*r:ip*10.7.209.27 X-HELO: mga11.intel.com Received: from mga11.intel.com (HELO mga11.intel.com) (192.55.52.93) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Wed, 05 Oct 2016 10:07:34 +0000 Received: from orsmga003.jf.intel.com ([10.7.209.27]) by fmsmga102.fm.intel.com with ESMTP; 05 Oct 2016 03:07:33 -0700 X-ExtLoop1: 1 Received: from heckel-mobl3.ger.corp.intel.com (HELO [172.28.205.41]) ([172.28.205.41]) by orsmga003.jf.intel.com with ESMTP; 05 Oct 2016 03:07:32 -0700 Subject: Re: [PATCH V4 2/6] Fortran: Resolve dynamic properties of pointer types. To: Yao Qi References: <1473230295-809-1-git-send-email-bernhard.heckel@intel.com> <1473230295-809-3-git-send-email-bernhard.heckel@intel.com> <8660p7b2xc.fsf@gmail.com> Cc: Joel Brobecker , "gdb-patches@sourceware.org" From: Bernhard Heckel Message-ID: <57F4D0E3.8050702@intel.com> Date: Wed, 05 Oct 2016 10:07:00 -0000 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.6.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset="utf-8"; format="flowed" Content-Transfer-Encoding: base64 X-IsSubscribed: yes X-SW-Source: 2016-10/txt/msg00082.txt.bz2 T24gMDUvMTAvMjAxNiAxMTozNSwgWWFvIFFpIHdyb3RlOgo+IE9uIFdlZCwg T2N0IDUsIDIwMTYgYXQgOTo0NCBBTSwgWWFvIFFpIDxxaXlhb2x0Y0BnbWFp bC5jb20+IHdyb3RlOgo+PiBCZXJuaGFyZCBIZWNrZWwgPGJlcm5oYXJkLmhl Y2tlbEBpbnRlbC5jb20+IHdyaXRlczoKPj4KPj4+IDIwMTYtMDctMDggIEJl cm5oYXJkIEhlY2tlbCAgPGJlcm5oYXJkLmhlY2tlbEBpbnRlbC5jb20+Cj4+ Pgo+Pj4gZ2RiL0NoYW5nZWxvZzoKPj4+ICAgICAgICAqIGdkYnR5cGVzLmMg KHJlc29sdmVfZHluYW1pY190eXBlc19pbnRlcm5hbCk6IFJlc29sdmUgcG9p bnRlciB0eXBlcy4KPj4gVGhpcyBsaW5lIGRvZXNuJ3QgbWF0Y2ggdGhlIGNo YW5nZSwgd2hpY2ggaXMgaW4gaXNfZHluYW1pY190eXBlX2ludGVybmFsLgo+ Pgo+Pj4gICAgICAgICAgKHJlc29sdmVfZHluYW1pY19wb2ludGVyKTogTmV3 Lgo+PiBPdGhlcndpc2UsIHBhdGNoIGlzIGdvb2QgdG8gbWUuCj4+Cj4gRG8g d2UgYWxyZWFkeSBoYXZlIGEgdGVzdCBjYXNlIHdoaWNoIGhhcyBhIEZvcnRy YW4gcG9pbnRlciB3aGljaCBoYXMKPiBhIGR5bmFtaWMgYXNzb2NpYXRlZCBw cm9wZXJ0eT8gIElmIG5vLCB3ZSBuZWVkIHRvIGFkZCBvbmUuClllcywgd2Ug aGF2ZSBhIHRlc3RjYXNlIGFscmVhZHkuCnZsYS1wdHlwZS5leHAgKyB2bGEu ZjkwClRoaXMgdGVzdGNhc2Ugd2FzIGFscmVhZHkgcGFzc2luZyBhcyBnZm9y dHJhbiBkZXNjcmliZXMgYSBwb2ludGVyIHRvIGFuIAphcnJheSBhcyBhbiBh cnJheSArICBhc3NvY2lhdGVkIHByb3BlcnR5LgpGb3IgSWZvcnQsIGEgcG9p bnRlciBpbiB0aGUgcHJvZ3JhbSBpcyBzdGlsbCBhIHBvaW50ZXIgdHlwZSBp biB0aGUgZGVidWcgCmluZm8uCgo+Cj4gUGF0Y2ggMy82IHJlc29sdmVzIGR5 bmFtaWMgdGFyZ2V0IHR5cGUgb2YgYSBwb2ludGVyLCBhIHBvaW50ZXIgcG9p bnRzCj4gdG8gYSBkeW5hbWljIHR5cGUsIGJ1dCB3aGF0IGRvZXMgdGhpcyBw YXRjaCBkbz8KPgoKVGhlIHBhdGNoIG9ubHkgcmVzb2x2ZXMgdGhlICJhc3Nv Y2lhdGVkIHByb3BlcnR5IiBvZiBhIHBvaW50ZXIuCkFjY29yZGluZyB0byBK b2VsIHJldmlldyAoc29tZSB0aW1lIGFnbyksIEkgb25seSByZXNvbHZlIHRh cmdldCB0eXBlcyBvZiAKcG9pbnRlciB3aGVuIHdlIGFjdHVhbGx5IGhhdmUg dG8gKHNlZSBmb2xsb3dpbmcgcGF0Y2hlcyBpbiB0aGlzIHNlcmllcykuCkkg d2FudGVkIHRvIGtlZXAgdGhpcyBwYXRjaCBzZXBhcmF0ZSBmcm9tIHJlc29s dmluZyBkeW5hbWljIHRhcmdldCAKdHlwZXMsIGFzIHRoaXMgcGF0Y2ggaXMg aW5kZXBlbmRlbnQgZnJvbSB0aG9zZSBidXQgbm90IHZpY2UgdmVyc2UuCgpJ bnRlbCBEZXV0c2NobGFuZCBHbWJIClJlZ2lzdGVyZWQgQWRkcmVzczogQW0g Q2FtcGVvbiAxMC0xMiwgODU1NzkgTmV1YmliZXJnLCBHZXJtYW55ClRlbDog KzQ5IDg5IDk5IDg4NTMtMCwgd3d3LmludGVsLmRlCk1hbmFnaW5nIERpcmVj dG9yczogQ2hyaXN0aW4gRWlzZW5zY2htaWQsIENocmlzdGlhbiBMYW1wcmVj aHRlcgpDaGFpcnBlcnNvbiBvZiB0aGUgU3VwZXJ2aXNvcnkgQm9hcmQ6IE5p Y29sZSBMYXUKUmVnaXN0ZXJlZCBPZmZpY2U6IE11bmljaApDb21tZXJjaWFs IFJlZ2lzdGVyOiBBbXRzZ2VyaWNodCBNdWVuY2hlbiBIUkIgMTg2OTI4Cg== >From gdb-patches-return-133672-listarch-gdb-patches=sources.redhat.com@sourceware.org Wed Oct 05 10:10:01 2016 Return-Path: Delivered-To: listarch-gdb-patches@sources.redhat.com Received: (qmail 7520 invoked by alias); 5 Oct 2016 10:10:01 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Delivered-To: mailing list gdb-patches@sourceware.org Received: (qmail 7501 invoked by uid 89); 5 Oct 2016 10:10:00 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.6 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,SPF_PASS autolearn=ham version=3.3.2 spammy=stddefh, stddef.h, UD:stddef.h, Hx-languages-length:1251 X-HELO: mail-pf0-f196.google.com Received: from mail-pf0-f196.google.com (HELO mail-pf0-f196.google.com) (209.85.192.196) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Wed, 05 Oct 2016 10:09:50 +0000 Received: by mail-pf0-f196.google.com with SMTP id i85so4899293pfa.0 for ; Wed, 05 Oct 2016 03:09:50 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version:content-transfer-encoding; bh=IxuhFUV4rdONrjiOsQ9YkshVipVDfH7s5tOUCz9j5sQ=; b=mL+XKzNyzd9FGGQ1CMbxExTTKpcacdk+68pvp7BXjbRbLRtS0ivSWlx2nSEyUz2PFh S4/dKZuiWrMiLWXhfKXk48RE5jaHDs4BQ2v8T9BMIF3xwP6hZ4WUJFncVm21Bg9RssfS gpyQcN/T9cFq2XQa3i9YjBd/eQYf0TJFGJnXKJfMwl0QbK0IyqksvpgY5GJJRJtQfgfN UafnouG2Wnt2Q+2n3jN08zl2kBprHrYLE3/fcqJeGVd9AzFXNyxi9kW2KRlDffI4/FBo fSkZOd9Wgug9k4osGGT8FWLfTTScXH8OLPQzz2NMzcF6MVq1g+En7RRan6SWbTiWNwz5 diUg== X-Gm-Message-State: AA6/9RmX+i2j4WOeMyozvRNyRiDO1stqCPN90dCXW2JMPxAYatnW7b0eYmSyat2a3SU8mw== X-Received: by 10.98.68.143 with SMTP id m15mr5637665pfi.159.1475662188800; Wed, 05 Oct 2016 03:09:48 -0700 (PDT) Received: from E107787-LIN (gcc1-power7.osuosl.org. [140.211.15.137]) by smtp.gmail.com with ESMTPSA id k17sm8895380pfg.65.2016.10.05.03.09.44 (version=TLS1_2 cipher=AES128-SHA bits=128/128); Wed, 05 Oct 2016 03:09:46 -0700 (PDT) From: Yao Qi To: Bernhard Heckel Cc: qiyaoltc@gmail.com, brobecker@adacore.com, gdb-patches@sourceware.org Subject: Re: [PATCH V4 3/6] Typeprint: Resolve any dynamic target type of a pointer. References: <1473230295-809-1-git-send-email-bernhard.heckel@intel.com> <1473230295-809-4-git-send-email-bernhard.heckel@intel.com> Date: Wed, 05 Oct 2016 10:10:00 -0000 In-Reply-To: <1473230295-809-4-git-send-email-bernhard.heckel@intel.com> (Bernhard Heckel's message of "Wed, 7 Sep 2016 08:38:12 +0200") Message-ID: <861szvayzg.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-IsSubscribed: yes X-SW-Source: 2016-10/txt/msg00083.txt.bz2 Content-length: 1298 Bernhard Heckel writes: > +extern "C" { > +#include > +} > + Why do you include stddef.h? > diff --git a/gdb/typeprint.c b/gdb/typeprint.c > index e77513e..e3d84c7 100644 > --- a/gdb/typeprint.c > +++ b/gdb/typeprint.c > @@ -485,6 +485,25 @@ whatis_exp (char *exp, int show) > printf_filtered (" */\n");=20=20=20=20 > } >=20=20 > + /* Resolve any dynamic target type, as we might print > + additional information about the target. > + For example, in Fortran and C we are printing the dimension of the > + dynamic array the pointer is pointing to. */ > + if (TYPE_CODE (type) =3D=3D TYPE_CODE_PTR > + && is_dynamic_type (type) =3D=3D 1) is_dynamic_type returns bool-like value, so don't check it with 1. Looks we need to check is_dynamic_type (TYPE_TARGET_TYPE (type)), no? > + { > + CORE_ADDR addr; > + if (NULL !=3D TYPE_DATA_LOCATION (TYPE_TARGET_TYPE(type))) > + addr =3D value_address (val); > + else > + addr =3D value_as_address (val); > + > + if (addr !=3D 0 > + && type_not_associated (type) =3D=3D 0) likewise, !type_not_associated (type) > + TYPE_TARGET_TYPE (type) =3D resolve_dynamic_type (TYPE_TARGET_TYPE (typ= e), > + NULL, addr); > + } --=20 Yao (=E9=BD=90=E5=B0=A7)