From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id BaE5FIiycV/3HgAAWB0awg (envelope-from ) for ; Mon, 28 Sep 2020 05:53:12 -0400 Received: by simark.ca (Postfix, from userid 112) id 420F51E590; Mon, 28 Sep 2020 05:53:12 -0400 (EDT) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on simark.ca X-Spam-Level: X-Spam-Status: No, score=-1.1 required=5.0 tests=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 7F23D1E58E for ; Mon, 28 Sep 2020 05:53:11 -0400 (EDT) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id EF202385040F; Mon, 28 Sep 2020 09:53:10 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org EF202385040F DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1601286791; bh=1ScUnVmSGI+yvKeAu3+Nsarcogxulvp0uQb8yiNwVEc=; h=Date:To:In-Reply-To:Subject:References:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc: From; b=yHsdYYOlwChuvMRsQP2ZsVA22+AhHrsSrdVZlKi+qRFieulTsfyatn9Y1G0xlWbio h52dxdKt8o699Ahjc6W8gRxvqyyHUJyF95uewZGtuXQTqSBT9zVe2OpRC/CatEPRjz QhnG7BrlNS9VtH9Xm4HZxL/AqMcDVqngJ9Q34wNs= Received: from eggs.gnu.org (eggs.gnu.org [IPv6:2001:470:142:3::10]) by sourceware.org (Postfix) with ESMTPS id 9A2C8385040F for ; Mon, 28 Sep 2020 09:53:08 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 9A2C8385040F Received: from fencepost.gnu.org ([2001:470:142:3::e]:40362) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kMpqF-00077k-Nw; Mon, 28 Sep 2020 05:53:07 -0400 Received: from [176.228.60.248] (port=4164 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1kMpqE-0007Ge-5F; Mon, 28 Sep 2020 05:53:06 -0400 Date: Mon, 28 Sep 2020 12:52:54 +0300 Message-Id: <83d026mdmx.fsf@gnu.org> To: Andrew Burgess In-Reply-To: <413075264b219cae56dd52333a8ba1dacdc6ea84.1601285823.git.andrew.burgess@embecosm.com> (message from Andrew Burgess on Mon, 28 Sep 2020 10:40:49 +0100) Subject: Re: [PATCHv4 3/3] gdb/fortran: Add support for Fortran array slices at the GDB prompt References: <413075264b219cae56dd52333a8ba1dacdc6ea84.1601285823.git.andrew.burgess@embecosm.com> 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: Eli Zaretskii via Gdb-patches Reply-To: Eli Zaretskii Cc: gdb-patches@sourceware.org Errors-To: gdb-patches-bounces@sourceware.org Sender: "Gdb-patches" > From: Andrew Burgess > Date: Mon, 28 Sep 2020 10:40:49 +0100 > > gdb/ChangeLog: > > * Makefile.in (HFILES_NO_SRCDIR): Add f-array-walker.h. > * NEWS: Mention new options. > * expprint.c (dump_subexp_body_standard): Print RANGE_HAS_STRIDE. > * expression.h (enum range_type): Add RANGE_HAS_STRIDE. > * f-array-walker.h: New file. > * f-exp.y (arglist): Allow for a series of subranges. > (subrange): Add cases for subranges with strides. > * f-lang.c: Include 'gdbcmd.h' and 'f-array-walker.h'. > (repack_array_slices): New static global. > (show_repack_array_slices): New function. > (fortran_array_slicing_debug): New static global. > (show_fortran_array_slicing_debug): New function. > (value_f90_subarray): Delete. > (skip_undetermined_arglist): Delete. > (class fortran_array_repacker_base_impl): New class. > (class fortran_lazy_array_repacker_impl): New class. > (class fortran_array_repacker_impl): New class. > (fortran_value_subarray): Complete rewrite. > (set_fortran_list): New static global. > (show_fortran_list): Likewise. > (_initialize_f_language): Register new commands. > (fortran_adjust_dynamic_array_base_address_hack): New function. > * f-lang.h (fortran_adjust_dynamic_array_base_address_hack): > Declare. > * f-valprint.c: Include 'f-array-walker.h'. > (class fortran_array_printer_impl): New class. > (f77_print_array_1): Delete. > (f77_print_array): Delete. > (fortran_print_array): New. > (f_value_print_inner): Update to call fortran_print_array. > * gdbtypes.c: Include 'f-lang.h'. > (resolve_dynamic_type_internal): Call > fortran_adjust_dynamic_array_base_address_hack. > * parse.c (operator_length_standard): Handle RANGE_HAS_STRIDE. > > gdb/testsuite/ChangeLog: > > * gdb.fortran/array-slices-bad.exp: New file. > * gdb.fortran/array-slices-bad.f90: New file. > * gdb.fortran/array-slices-sub-slices.exp: New file. > * gdb.fortran/array-slices-sub-slices.f90: New file. > * gdb.fortran/array-slices.exp: Rewrite tests. > * gdb.fortran/array-slices.f90: Rewrite tests. > * gdb.fortran/vla-sizeof.exp: Correct expected results. > > gdb/doc/ChangeLog: > > * gdb.texinfo (Debugging Output): Document 'set/show debug > fotran-array-slicing'. > (Special Fortran Commands): Document 'set/show fortran > repack-array-slices'. OK for the documentation parts. Thanks.