From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mout.gmx.net (mout.gmx.net [212.227.15.15]) by sourceware.org (Postfix) with ESMTPS id 14E273858C55; Sun, 18 Sep 2022 18:32:13 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 14E273858C55 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.net; s=badeba3b8450; t=1663525931; bh=RUUBozcerz2dMBSk7/PqPvDy3Pm+NHumFD2vH+dtfX0=; h=X-UI-Sender-Class:Date:Subject:To:Cc:References:From:In-Reply-To; b=RB1aQ8gFurGXL86gw7290BGti4Wkvl6i3S+x1FnfxmwxVRko74sGeZOlqWwkiIPzd 4Vh3Her/MnelgwD7IyBPqdLqNs6OZeXGAhfSDceGfI/0nyKfyUPtfzNM6lxARnZgT8 PNaQ1eNzWT0gPsL+UlrGpg22hxFgpxXCX5j96s60= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from [192.168.178.29] ([79.251.12.101]) by mail.gmx.net (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MmULr-1p0DDX3qKH-00iRNY; Sun, 18 Sep 2022 20:32:10 +0200 Message-ID: <3ef8c5c4-35a1-fa60-2a2d-a7bb3fbd35fc@gmx.de> Date: Sun, 18 Sep 2022 20:32:09 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.2.2 Subject: Re: [PATCH 09/10] fortran: Support clobbering of variable subreferences [PR88364] To: Thomas Koenig , Mikael Morin , Richard Biener Cc: Mikael Morin , gcc-patches@gcc.gnu.org, fortran@gcc.gnu.org Newsgroups: gmane.comp.gcc.patches,gmane.comp.gcc.fortran References: <20220916202439.549820-1-mikael@gcc.gnu.org> <20220916202439.549820-10-mikael@gcc.gnu.org> <3edab734-f5bb-5557-ff98-b0ce47d7c510@orange.fr> 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:MRhQkBhzx6SJ6308Zs9XZmfuJ2YTBhYBZhiofRf590DealNc9n5 Bv/lAfVjUfMfG28nwQ3ppZgMfr5v0Zw135kdEnlK3JhDYrJXlV2GNt+JbjmHAbFYnlrCQ86 D99WKqrri4488ZxWNm+CaB060Uhs9tv52sulfSrdq6zRdiGWhBuuCA5cFThByVbQM2/Gife rdciGtb+0w6TcCWvVYCZQ== X-UI-Out-Filterresults: notjunk:1;V03:K0:1yYqQJus9I0=:XpL3DcqxgKvq5TK5izr1a5 lGU+gQMIyppozVV7EkJHkiV/UnKot1Bjmh4I5MiB1GIFoWfw33SG1On7c6oPBFAGgq9slUnAB qO/0hxx6cC4KgxxsxGv5QJtEofc3noGkmPu8er8YmJDTd0M/18kne1LXWRv5x9fybXch8vZik FtDfdjjfFuLqNv+bFvkc0duGZ1+/IwJCpSH4t3KvhIM7UXPYT3jvyEuKiYLRbfktVKPZf8bP/ +0BFWv8XtMlOitDqm8wGha/tOLsSd50CpwQghwDvsjRDpxHqc0scrFgXpv+nOcw0uEL/4/PZA izmEtcEPGsKGx+Szb0KOOOHON8nuzY/QIXtXsV1E48Yem9M+fPBprfcWFb/124GUYEYw5b75T 2cw86lfuhPo793H6a4Mqzitymmzxe2pRcixX9+bhCVxVlV121E0nXNMSzjJrIlcaVVaVDt0NC dbHEWmR9pZ0o6wS3qB2ZDGGQH2hOKIH0OMZy/GZOHfAnpCTnVVzJjptDMeMahv/fQOvozQfPJ JTl8trLnLqiwK2qWBoTtDmWI4Kcj08pfP2rnBqqsAEyRCB9Ll3KxpsrOD1o8lHmLiztyJ8D7Q HGMtP7ZtzukQdHlLolJqHBGiAz22bUj2UA32VJYTrWqaPDXd1bFQ5ZwQPyE6kMyjBpekb2vIP YuyqDyzKxFKa3AU/SjFTr7RDOTLU1i3LMWC09Ad2b0TEvNm5gSnlM8nOLvpoOTm+e3e3Heyg2 285CRHo+EvH9VBqcDuOgvF88SWWYUcsmmaH8S7Lsn/THQ/AMI5wImRnrCwsjFm1L5CTyGxLDI JdchNJEcOMvfuXWIyC50lIpSz1Erd2drHIJ9NhLVtFpEpDRJqimZuxBPpHh0z5mALK0yA0m7B kMbRN3EIiZgVDemYENElaGXJOtOcQA+91jaPfttC6acmqUICS9S3GK6tVoMVOtax/8L+t4BUo KMkiu8qKi3h2JBiM0VUJ3M+bQ+pZqZV0eSvB4DhLMt6c0FWC7iWDpQoLxBmUz3ygsA0Ay4yx1 E/dCwTLhoprL5eyNMnihbNXFlQ/xVmJNpKqNKkXGYim+1stqgtcvopXwYqZ9yb2v8N2IqKjx/ QtobVjcnG9LQ4kztqpPB4Ts3BBKQNqwznlwmNAvK+DnNI6nyGt/hjTP/8d2BAvVwDV4f7lUy8 1MdhZ1gmaWGrxQ9j+JVCi2XWtL X-Spam-Status: No, score=-7.1 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,FREEMAIL_FROM,NICE_REPLY_A,RCVD_IN_DNSWL_LOW,RCVD_IN_MSPIKE_H2,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: On 18.09.22 12:23, Thomas Koenig via Gcc-patches wrote: > > On 18.09.22 11:10, Mikael Morin wrote: >> It is unfortunate as there is some desirable behavior within reach here= . > > I think some of the desired behavior can still be salvaged.=C2=A0 For > example, for > > =C2=A0 subroutine foo(a,n) > =C2=A0=C2=A0=C2=A0 integer :: n > =C2=A0=C2=A0=C2=A0 integer, dimension(n), intent(in) :: n integer, dimension(n), intent(out) :: a ! ? > ... > > =C2=A0 subroutine bar(a) > =C2=A0=C2=A0=C2=A0 integer, intent(out) :: a > > ... > > =C2=A0 integer :: a(3) > > =C2=A0 call foo(a,3) > =C2=A0 call foo(a(1),3) > > clobbers for the whole array can still be generated, but not for > > =C2=A0 call foo(a(2),2) > > so one would have to look at the lower bound. > > For this case, it would be helpful to clobber a range a(2:), but that > is a wishlist item for the future ;-) > > What is unsafe, currently, is > > =C2=A0 call bar(a(1)) We'll need a good coverage by testcases for the different handling required for assumed shape / assumed size / explicit size dummies to avoid new regressions. Assumed shape will be on the easy side, while assumed size likely needs to be excluded for clobbering. Harald