From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 50395 invoked by alias); 24 Jan 2018 21:48:40 -0000 Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org Received: (qmail 42075 invoked by uid 89); 24 Jan 2018 21:48:29 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.6 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,KAM_NUMSUBJECT,RCVD_IN_DNSWL_NONE,SPF_PASS autolearn=no version=3.3.2 spammy=HTo:U*pault, dynamical, sk:dw_op_p, dw_at_allocated X-HELO: mail-qt0-f172.google.com Received: from mail-qt0-f172.google.com (HELO mail-qt0-f172.google.com) (209.85.216.172) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Wed, 24 Jan 2018 21:48:28 +0000 Received: by mail-qt0-f172.google.com with SMTP id o35so14253218qtj.13 for ; Wed, 24 Jan 2018 13:48:24 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=zS4Y6dEvORvcNSIXEG4Un7sGlz82y3UPbpReYPtsFBE=; b=OaSZXEa8DUsCQ0dfsMx1918u/2raFS7hVXzDE2t9VW3G2rvvB9MOCnUeqOaM90RmAf Ya7ZKAJJnrNSDRiNrjZ14trwQ1J0sMl6r9+THjH5v8i3IFa6EqD0Ae/PeY4NAdZr3NPb GGztHPrpRofjDVV2Zna8FmnKb8r58bi+kt6S24DwpS0U7QA1ufP0gejc88rdL7fLCus3 dJkMAgJ0a/UgKrbYoIsXDc4b5tKIRW8B8AbH/owe9W6sSomQTa579DNu8EMUdvuBAMnX iqWKskuoD09MsMu9TdjAf105d3XbUKcw1kdShQG8KJ8m20jGs/iofggnhXF4GNX+X95j IYYg== X-Gm-Message-State: AKwxytd6YdHsnHMakNevwueZisGrliH3vGBZzBnxuX0EnHlpShn5ZXVT RWLsTXlPwf2jTi33IgSS04o3tpu7xn2bJ4Y1jDhwrA== X-Google-Smtp-Source: AH8x224Ghv7E//zW0Kn0yhM6wWCkJcEQ6X6llWiZWeoY1ej9fcI0BOsp35pWjjIV/M7zfYJtnzDYknFaw7TpH9VWXIc= X-Received: by 10.55.104.1 with SMTP id d1mr12127913qkc.71.1516830503455; Wed, 24 Jan 2018 13:48:23 -0800 (PST) MIME-Version: 1.0 Received: by 10.12.153.232 with HTTP; Wed, 24 Jan 2018 13:48:23 -0800 (PST) In-Reply-To: <86d120ef6x.fsf@gmail.com> References: <86d120ef6x.fsf@gmail.com> From: Yao Qi Date: Wed, 24 Jan 2018 21:48:00 -0000 Message-ID: Subject: Re: Different dynamical array debug info 7.2 vs. 8.0 To: fortran@gcc.gnu.org, gcc@gcc.gnu.org, pault@gcc.gnu.org Cc: GDB Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-IsSubscribed: yes X-SW-Source: 2018-01/txt/msg00019.txt.bz2 On Tue, Jan 23, 2018 at 4:02 PM, Yao Qi wrote: > > Hi, > I observed that gfortran 7.2 and 8.0 generate different debug info for > dynamical array. > Attributes DW_AT_data_location and DW_AT_allocated are different. There > is an extra "DW_OP_plus_uconst: 8" generated by gcc 8.0. Is it > intended or expected? gfortran 8.0 causes many gdb.fotran vla-related > tests fail, but gfortran 7.2 doesn't. That is why I took a look at the > debug information. > I did 'git bisect', and find the following commit causes the change in the debug information. Paul, do you have any clue on the different debug information caused by your commit? commit c0dbf68e8b1cf24bd54de0c3b6ec056436f174ac Author: pault Date: Sun Sep 10 17:02:53 2017 +0000 2017-09-10 Paul Thomas PR fortran/34640 PR fortran/40737 PR fortran/55763 PR fortran/57019 PR fortran/57116 * expr.c (is_subref_array): Add class pointer array dummies to the list of expressions that return true. * trans-array.c: Add SPAN_FIELD and update indices for subsequent fields. (gfc_conv_descriptor_span, gfc_conv_descriptor_span_get, gfc_conv_descriptor_span_set, is_pointer_array, get_array_span): New functions. (gfc_get_descriptor_offsets_for_info): New function to preserve API for access to descriptor fields for trans-types.c. (gfc_conv_scalarized_array_ref): If the expression is a subref array, make sure that info->descriptor is a descriptor type. Otherwise, if info->descriptor is a pointer array, set 'decl' and fix it if it is a component reference. (build_array_ref): Simplify handling of class array refs by passing the vptr to gfc_build_array_ref rather than generating the pointer arithmetic in this function. (gfc_conv_array_ref): As in gfc_conv_scalarized_array_ref, set 'decl'. (gfc_array_allocate): Set the span field if this is a pointer array. Use the expr3 element size if it is available, so that the dynamic type element size is used. (gfc_conv_expr_descriptor): Set the span field for pointer assignments. --=20 Yao (=E9=BD=90=E5=B0=A7)