From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mout.gmx.net (mout.gmx.net [212.227.17.20]) by sourceware.org (Postfix) with ESMTPS id 9FCBC3858D35; Fri, 15 Sep 2023 19:16:59 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 9FCBC3858D35 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gmx.de Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmx.de DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.de; s=s31663417; t=1694805417; x=1695410217; i=anlauf@gmx.de; bh=RmoiZYCw3RgAXdkWqswLaI52U+ze1yk1qe7zQT6FG+w=; h=X-UI-Sender-Class:Date:Subject:To:Cc:References:From:In-Reply-To; b=Gm1FGCdO+6GRlPVtsgLnZt5Mipw6L9eNhDAZlG5rkQMEAFYBza3AecI+xOdj7xLnG3kC6V2PJ5C FVS5u9HZwM+9qnzvvFzLqiWAN7042mGx1WWD6xxSIFKZ7ssKXuUcuivYoPNiHpY62ncT5NrG4/Wm2 PyaLgkY0wh857M6ruDVzWiPZc5MNePSOwxxZdMg0gBbYZkT4O1eurQERamLJ4G87fATkkqRGd4aw+ V3tCtZLF3SiKK49HnlS6CF8CMSSC26vGWeMoOKkemGKHclvMD6ZVsMjOFNfm/FcsPGn7nTVsNnB6N 6L4NweV5GAzxF3jOfNycsuZvr/PRYwhyHc8g== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.178.29] ([93.207.88.198]) by mail.gmx.net (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1Mel81-1rFSX6216T-00ajFG; Fri, 15 Sep 2023 21:16:57 +0200 Message-ID: <48c24c0b-5f3e-4858-bf0c-45180e5eb834@gmx.de> Date: Fri, 15 Sep 2023 21:16:56 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH] Fortran: improve bounds-checking for array sections [PR30802] To: Paul Richard Thomas Cc: fortran , gcc-patches Newsgroups: gmane.comp.gcc.patches,gmane.comp.gcc.fortran References: Content-Language: en-US From: Harald Anlauf In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: quoted-printable X-Provags-ID: V03:K1:cgDoDASwC4xSMAWpSSnaizRnoHC+Y0xfzI4T1DC52WBi5YdHMJP VWcCAhZlMlKtkXRFC2hn08SBXoAG8eAtRt7LhhuRUAT6OZTzd7mFrAHon4SvPGq8D8SY8mG 1/yCUo2k4fiuUNIt+0g+iN01NaMGwl/dE50991fFt0VZYy26WMJ4U/hJoYCl9kD4bmtcOwF 6QNBLuTFCQUEkQsSKfyGg== UI-OutboundReport: notjunk:1;M01:P0:8gRFULNdXB4=;OhJ+0eelGlxPw2Blk3mNeho7kAf nUSkw4aNc7jorXdu6v/+HpNSGOMZhADjvhS87X+8/li3GWHvXGHL6TWW+WIM/7AdjGlWBTO/s S0lEczsRHtcxwTHKOFOlTJUClBFY5atCbRQ4B+0aIKGPetMabOVep5gXPuds6S4cGuo8O8jgU nkfhkLRsoKQw9NJ3xj3kpUUPGi9RQuCIIbsQtCLp0bOJqv9JW8vKrxl3tFITBIL845YQkBHhR zJwNT4+0g3zKI8T2DdXJLZLms0gvnMbqs/DNnyC2Hl8UjYY8tKFxu0tH7aTR5Qu5Ijsz21uf3 3jdyqKKSGlTx1mxQ3WFpb53jXDKTqlS8thx4iIALrlyufxpSfjOOmfVDpaiXvJNZHbhSSczX4 PvY/dfiTL64OoRlTEhcZ44kQepvhzO2cMuhFLtOLjj5ZqzujgaygYSyUzAj0g9AW6JFbV4K9x Iq/+v/DMzblqTxOeeEMivNL/tnrljNkE3NnOeTXtQM+mU1qpvqGzZhmNSe4xxV20+wvCoMt+0 ybsQsNya/yHkbq6rriGlvzz6HL8pj2+ziQV8AFvSwvScLy37cqBHOoTbv0DOh31srWLimRMqI XWrBl3R6TDewPe65xSAKa9eWa2g7+/IdjKI46IhClX0sYUtghZe3esuZg146bUf2Ijk3dmZ1t wLnF+3yFX5n20iGFnZB6Ee/Vc8G4b640E1ltxgLHtpjXmF1tw1uzZhEcCjJmS2FA8OEbz7C3C RnMnWTYLY7DtiDcF2O8EDGk8fTTR5JbuUbwi2frBpoYBcsjh1wEO7rHdPw+vCBEQFL7iS3I3w ajeiPffyQF5GMD32fKM8SwE3uRukdDjtQhIGiJfR8xMtQatkQrIiTRzZeQQ4O95ynhOp4Cb69 Uhep5mjxOM8pvxO1+ikqCQ9TOta7WrXCHr1xAkYH7TcJhYuzsw4IEn1e+JII8sDhTHeoSndXL UKatOD23DHF46D/KCFXlVWiE6Vw= X-Spam-Status: No, score=-5.0 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,RCVD_IN_MSPIKE_H4,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,SPF_PASS,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: Hi Paul, On 9/15/23 11:13, Paul Richard Thomas via Gcc-patches wrote: > Hi Harald, > > The statement, > > in array_bound_check_elemental is redundant since the call is > determined by a more restrictive condition. > > + if (!(gfc_option.rtcheck & GFC_RTCHECK_BOUNDS)) > + return; yeah, this was left over from playing, since I thought the outlined function could be used more than once. I've removed those lines before pushing. Thanks for the review! Harald > Apart from that, it looks good to me. OK for mainline. > > Thanks for the patch. > > Paul > > On Thu, 14 Sept 2023 at 21:22, Harald Anlauf via Fortran > wrote: >> >> Dear all, >> >> array bounds checking was missing a few cases of array sections >> that are handled via gfc_conv_expr_descriptor. Bounds checking >> was done for the dimensions with ranges, but not for elemental >> dimensions. >> >> The attached patch implements that and fixes pr30802 and also >> pr97039, maybe a few more similar cases. >> >> Regtested on x86_64-pc-linux-gnu. OK for mainline? >> >> Thanks, >> Harald >> > From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ciao.gmane.io (ciao.gmane.io [116.202.254.214]) by sourceware.org (Postfix) with ESMTPS id 479E73857727 for ; Fri, 15 Sep 2023 19:17:06 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 479E73857727 Authentication-Results: sourceware.org; dmarc=fail (p=none dis=none) header.from=gmx.de Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=m.gmane-mx.org Received: from list by ciao.gmane.io with local (Exim 4.92) (envelope-from ) id 1qhEJL-0009tM-Ky for gcc-patches@gcc.gnu.org; Fri, 15 Sep 2023 21:17:03 +0200 X-Injected-Via-Gmane: http://gmane.org/ To: gcc-patches@gcc.gnu.org From: Harald Anlauf Subject: Re: [PATCH] Fortran: improve bounds-checking for array sections [PR30802] Date: Fri, 15 Sep 2023 21:16:56 +0200 Message-ID: <48c24c0b-5f3e-4858-bf0c-45180e5eb834@gmx.de> References: Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit User-Agent: Mozilla Thunderbird Content-Language: en-US In-Reply-To: Cc: fortran@gcc.gnu.org X-Spam-Status: No, score=-2.9 required=5.0 tests=BAYES_00,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM,HEADER_FROM_DIFFERENT_DOMAINS,KAM_DMARC_STATUS,SPF_HELO_NONE,SPF_PASS,TXREP autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: Message-ID: <20230915191656.eGZcxv1XgF5sDDCocJ4nUmmA7S95JMINQmRbmMdIZm0@z> Hi Paul, On 9/15/23 11:13, Paul Richard Thomas via Gcc-patches wrote: > Hi Harald, > > The statement, > > in array_bound_check_elemental is redundant since the call is > determined by a more restrictive condition. > > + if (!(gfc_option.rtcheck & GFC_RTCHECK_BOUNDS)) > + return; yeah, this was left over from playing, since I thought the outlined function could be used more than once. I've removed those lines before pushing. Thanks for the review! Harald > Apart from that, it looks good to me. OK for mainline. > > Thanks for the patch. > > Paul > > On Thu, 14 Sept 2023 at 21:22, Harald Anlauf via Fortran > wrote: >> >> Dear all, >> >> array bounds checking was missing a few cases of array sections >> that are handled via gfc_conv_expr_descriptor. Bounds checking >> was done for the dimensions with ranges, but not for elemental >> dimensions. >> >> The attached patch implements that and fixes pr30802 and also >> pr97039, maybe a few more similar cases. >> >> Regtested on x86_64-pc-linux-gnu. OK for mainline? >> >> Thanks, >> Harald >> >