Bug 1376017

Summary: DWARF regression: fortran: Missing DW_AT_byte_stride for an array record array selection
Product: Red Hat Developer Toolset Reporter: Jan Kratochvil <jan.kratochvil>
Component: gccAssignee: Jakub Jelinek <jakub>
Status: CLOSED ERRATA QA Contact: Michael Petlan <mpetlan>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: DTS 6.0 RHEL 7CC: jan.kratochvil, law, mcermak, mnewsome, mpetlan, mpolacek, palves
Target Milestone: rcKeywords: Regression
Target Release: 6.0   
Hardware: Unspecified   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: No Doc Update
Doc Text:
undefined
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-05-03 05:13:47 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
dwarf-stridex.f90 none

Description Jan Kratochvil 2016-09-14 12:57:00 UTC
FAIL: gcc-6.2.1-1.fc26.x86_64
PASS: gcc-4.8.5-4.el7.x86_64

Fedora testcase: gdb.fortran/dwarf-stride.exp
! File written by Alan Matsuoka.

gfortran -o dwarf-stridex dwarf-stridex.f90 -Wall -g;../gdb ./dwarf-stridex -batch -ex 'b 14' -ex r -ex 'p c40pt(2)'

p c40pt(2)^M
$2 = '\001\000\000\000\061-hello', ' ' <repeats 29 times>^M
(gdb) FAIL: gdb.fortran/dwarf-stride.exp: p c40pt(2)

p c40pt(2)^M
$2 = '1-hello', ' ' <repeats 33 times>^M
(gdb) PASS: gdb.fortran/dwarf-stride.exp: p c40pt(2)

FAIL:
 <2><174>: Abbrev Number: 18 (DW_TAG_subrange_type)
    <175>   DW_AT_lower_bound : (DW_OP_push_object_address; DW_OP_plus_uconst: 32; DW_OP_deref)
    <17a>   DW_AT_upper_bound : (DW_OP_push_object_address; DW_OP_plus_uconst: 40; DW_OP_deref)

PASS:
 <2><127>: Abbrev Number: 14 (DW_TAG_subrange_type)
    <128>   DW_AT_lower_bound : (DW_OP_push_object_address; DW_OP_plus_uconst: 32; DW_OP_deref)
    <12d>   DW_AT_upper_bound : (DW_OP_push_object_address; DW_OP_plus_uconst: 40; DW_OP_deref)
    <132>   DW_AT_byte_stride : (DW_OP_push_object_address; DW_OP_plus_uconst: 24; DW_OP_deref; DW_OP_fbreg: -80; DW_OP_deref; DW_OP_mul)

Comment 1 Jan Kratochvil 2016-09-14 12:58:22 UTC
Created attachment 1200823 [details]
dwarf-stridex.f90

Comment 12 Michael Petlan 2018-04-26 16:54:52 UTC
Passes with devtoolset-7-gcc-7.3.1-5.4, in the way that DW_AT_byte_stride is present in the dwarf dump. However, the string '1-hello' is not printed since GDB does not know the proper tags yet.
VERIFIED.

Comment 15 errata-xmlrpc 2018-05-03 05:13:47 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2018:1293