From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id LdzwC66vcV+bHgAAWB0awg (envelope-from ) for ; Mon, 28 Sep 2020 05:41:02 -0400 Received: by simark.ca (Postfix, from userid 112) id 19B581E590; Mon, 28 Sep 2020 05:41:02 -0400 (EDT) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on simark.ca X-Spam-Level: X-Spam-Status: No, score=-0.9 required=5.0 tests=DKIM_SIGNED, MAILING_LIST_MULTI,T_DKIM_INVALID,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 E9F201E58E for ; Mon, 28 Sep 2020 05:41:00 -0400 (EDT) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 464683850432; Mon, 28 Sep 2020 09:41:00 +0000 (GMT) Received: from mail-wr1-x42b.google.com (mail-wr1-x42b.google.com [IPv6:2a00:1450:4864:20::42b]) by sourceware.org (Postfix) with ESMTPS id CF666385040F for ; Mon, 28 Sep 2020 09:40:57 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org CF666385040F Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=embecosm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=andrew.burgess@embecosm.com Received: by mail-wr1-x42b.google.com with SMTP id x14so476806wrl.12 for ; Mon, 28 Sep 2020 02:40:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=embecosm.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=kXIsALaoUytks7D46AAtwYa5HxXIMLprLdXSTWpZw4w=; b=NsbXNcSE9qhvTX3kWZ2TD+opuGEtk5bAIu8j/z3g3jK43hegRArUmAmPqktHySuM81 NknzZev2D4Wnn0xB//+UtJ2bXAkBeTHBSq3mZsUu3zqOGBadYKZLSrBc1I4razA1FL4l kWlV18AHd8DN56GWVK3p30xqWne9f+yGrCaD6gey3Jrhhsw2MsRExXVq2Qdj+t2bhJuH r1H1c3W275U51AZcwIV/TcxyrvPgMhtpc5HShoqRy8669FhuNepkteUYqkErFR6zi7f+ OoBGaiRYTKz/uqVb4c7SLRrT1OpTmqpIuaBOZVVpuJ+2lxZsm14IjOgwDpK3+/mEs1yI eXMg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=kXIsALaoUytks7D46AAtwYa5HxXIMLprLdXSTWpZw4w=; b=fw9IoNSpbBLZUqMBOI/d6wMfkaJ5axpl/M0K0ja+ylvY+ZGppsm4xjgzaZivpcdXsq +Yo1VwBNnbXW/3wdDj+f7mFoVgWzEkEf6jRAt8nk5y/8agVK5RfWTTvmazLVFlt535GO iiI+zVuDSQA/c52HWMUO585cT6AsxKSej0RX2H6vXoKHTgy+TUN2RFUdJOMIkceK9dcL kW3wI7fBFvFyuF2PkpmsOb5Sr79m1Zn46HO5YJfBfVtBstfIUrMtRCkb25IU3wixpfEW eaTfym4GxfRNoACBCE9OQg5X4xMx7n8tuzOHoFswojfQIBs61cksvsC4od6i/KIt2ZUn 1I0Q== X-Gm-Message-State: AOAM532PUmw1QcUIjvbMEHSE5vdARTPoLrG0sjRt2T2k58f0yjbfr2Kg 8oaTaxJYR+4Vuf/fEzKV+lqdpCKQGu8fWw== X-Google-Smtp-Source: ABdhPJzIFfAVpuE4yLfW3ACPe+7UrNAgZ8DDcwbX+eVn09Qn8AmKzpExW7EhhKE1QbQS4Eql28dS3Q== X-Received: by 2002:adf:ec45:: with SMTP id w5mr691009wrn.357.1601286056620; Mon, 28 Sep 2020 02:40:56 -0700 (PDT) Received: from localhost (host109-151-23-62.range109-151.btcentralplus.com. [109.151.23.62]) by smtp.gmail.com with ESMTPSA id i6sm703979wra.1.2020.09.28.02.40.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 28 Sep 2020 02:40:55 -0700 (PDT) From: Andrew Burgess To: gdb-patches@sourceware.org Subject: [PATCHv4 0/3] Fortran Array Slicing and Striding Support Date: Mon, 28 Sep 2020 10:40:46 +0100 Message-Id: X-Mailer: git-send-email 2.25.4 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit 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: , Errors-To: gdb-patches-bounces@sourceware.org Sender: "Gdb-patches" Changes since v3: - Addressed Simon's feedback for patch #1. - Added new patch #2 to address the enum rename suggestion from Simon. - Addressed Eli's feedback for what was patch #2, but is now patch #3. - Other than adapting to the enum rename in patch #2, the code content of patch #3 is unchanged from v3. I'm still super keen to get some more eyes on the changes in patch #3, if nothing else then the changes in gdbtypes.c could really benefit from a review. All feedback welcome, Thanks, Andrew Andrew Burgess (3): gdb: Convert enum range_type to a bit field enum gdb: rename 'enum range_type' to 'enum range_flag' gdb/fortran: Add support for Fortran array slices at the GDB prompt gdb/ChangeLog | 72 ++ gdb/Makefile.in | 1 + gdb/NEWS | 13 + gdb/doc/ChangeLog | 7 + gdb/doc/gdb.texinfo | 30 + gdb/expprint.c | 61 +- gdb/expression.h | 33 +- gdb/f-array-walker.h | 255 +++++++ gdb/f-exp.y | 52 +- gdb/f-lang.c | 704 ++++++++++++++++-- gdb/f-lang.h | 19 +- gdb/f-valprint.c | 190 ++--- gdb/gdbtypes.c | 12 +- gdb/parse.c | 28 +- gdb/rust-exp.y | 21 +- gdb/rust-lang.c | 29 +- gdb/testsuite/ChangeLog | 10 + .../gdb.fortran/array-slices-bad.exp | 69 ++ .../gdb.fortran/array-slices-bad.f90 | 42 ++ .../gdb.fortran/array-slices-sub-slices.exp | 111 +++ .../gdb.fortran/array-slices-sub-slices.f90 | 96 +++ gdb/testsuite/gdb.fortran/array-slices.exp | 267 ++++++- gdb/testsuite/gdb.fortran/array-slices.f90 | 364 ++++++++- gdb/testsuite/gdb.fortran/vla-sizeof.exp | 4 +- 24 files changed, 2160 insertions(+), 330 deletions(-) create mode 100644 gdb/f-array-walker.h create mode 100644 gdb/testsuite/gdb.fortran/array-slices-bad.exp create mode 100644 gdb/testsuite/gdb.fortran/array-slices-bad.f90 create mode 100644 gdb/testsuite/gdb.fortran/array-slices-sub-slices.exp create mode 100644 gdb/testsuite/gdb.fortran/array-slices-sub-slices.f90 -- 2.25.4