From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mout.gmx.net (mout.gmx.net [212.227.15.19]) by sourceware.org (Postfix) with ESMTPS id 539BE3858D35; Mon, 6 Nov 2023 20:03:56 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 539BE3858D35 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gmx.de Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmx.de ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 539BE3858D35 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=212.227.15.19 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1699301040; cv=none; b=JYdb6XDoZWK3MrFl5IwpBUUBrDkp1YYPEo5GH1xDj/3LPqQTgkzn7tPIsGY3r1XdD8XEOOTNgaIYZpo5RieYEZPRypPYOa/kLYZ+Xp2Azp2WP7fWcfkBHIbqGdk5Uz+0zXsJyIvMaf9QaVC9m/oayeeRUMgMnzOwx5BkzgvxcAo= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1699301040; c=relaxed/simple; bh=DjCxZq2jZbeyIO66tAcawV0HU9tYV3sS3CVQhwnD78U=; h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:To:From; b=QyLWV+iq3Wxxb1Xprrjb0oHrSFFJOEulA+TKiM8tQIet9jnmfVTosm7Zeh+kqViZOV9GpyYivHsqaV+sRfb7kq9Ka850EGobQw3ZSaLOI+qmxbTv1i5g/BByk/rHmj4LOJwfF9H5VfROEHDMBmkx+Y6Aqj2kXCsBCQKEr2Q2h88= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.de; s=s31663417; t=1699301034; x=1699905834; i=anlauf@gmx.de; bh=DjCxZq2jZbeyIO66tAcawV0HU9tYV3sS3CVQhwnD78U=; h=X-UI-Sender-Class:Date:Subject:To:References:From:In-Reply-To; b=C1O8eYtC0l9JWPkx3QwAjZ/yBEHLeeKzQfvCjXBBWkVALkFO89WpJ+UNRIRVCNXF LUJakkNwQuqFW1AHmGdTH+VCGtxQX/mJPDrjwYjxekJz+Q+yJTJCRpTnKEWA1EAn9 NypZNxKHtEurmp0aCmkbKEO2b+rntsmjUlOqzZJxeqo+ACmUtTNqqrQInGIRloIVU RpVT51jN+u0o38mlRJQMjIU0qmdN2hgCoyqsQd7T8Xe72xGgK6MXP5FbuqMgxqdBf 6D/9OicDBdO9wqm/xpLoXfZQGxGKCvlHRDsm/sXrjOTRNhuSllfuSkjkh0FoC8aou ZS4rYPkOFY5f5fviyA== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.178.29] ([79.232.146.236]) by mail.gmx.net (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1McH5a-1rYKe61mii-00ckpX; Mon, 06 Nov 2023 21:03:54 +0100 Message-ID: <2256d5e2-a704-4c56-92e3-c6fbff923748@gmx.de> Date: Mon, 6 Nov 2023 21:03:53 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH 2/2] libgfortran: Remove empty array descriptor first dimension overwrite [PR112371] To: Mikael Morin , Mikael Morin , gcc-patches@gcc.gnu.org, fortran@gcc.gnu.org Newsgroups: gmane.comp.gcc.patches,gmane.comp.gcc.fortran References: <20231106114325.828968-1-mikael@gcc.gnu.org> <20231106114325.828968-3-mikael@gcc.gnu.org> <5562f6b7-1b0d-4ff7-9797-8f1f58edc1f5@gmx.de> <9fd8d832-51b6-4967-abad-510860ddafd0@orange.fr> Content-Language: en-US From: Harald Anlauf In-Reply-To: <9fd8d832-51b6-4967-abad-510860ddafd0@orange.fr> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: quoted-printable X-Provags-ID: V03:K1:kWDtmBtN2WcALE//a86tsHbmkFg1m0LZ8T46ChtlMECcKcJCBn3 ZmxevvRhIkgHk9boWDv5e535YAwlfS61hi3zA53ta1EjjUyoFKUYHGsBecmEB1yNLTkp9fH kOgHonduZnGz7uS5K/OL1gLHpAI4mJ8t2GHZ+y04lKP4qS92Wo4wZ1Y28myDf6gt1eulEY7 7P4y16UrLXnUAjOuFLW3Q== UI-OutboundReport: notjunk:1;M01:P0:Uff4jABp7L4=;by4k5uqvV0jIEgwMtPB3bd7EWB9 EW3AMckmbsCrF5Rc7/5IDt5CPKzKu5IJpmEqT9rimJgzbXqFMBdvWAYfZZwRIvGPzjqjue4ab cnKrpnMFLef11Cw8+xOv60B9YY/rNnlbzBzMCgFUW1i0EBf9deho9MYf1Mppz4jZYRBoWEaXp jRpMs2T0PE/C5ZUE4p8MxgvxjFKgC6AKGHiwgZreP0MXxwMsNEH7W722SXZWOVoWhrxc2p35z aXt/lrJkhWwgnTo30pIAMgXpMYkF0uHSfJc4NWlKGkcohOCHDqq+q3s+XooqRt6YwuZ8laoMd 3x36tfq8CVhIU+/CCGZESKaNkcBsXPlTKGCl7z16u6jV4sPfX67ed5RXBVZ7RGPjZ/ykQBYgf uQr985fAIXckrAy2UeH8NPrnngbWvh4zVD7JB2rcjqO1geaWp4VvHKNIc8IYlxyUGiHNyZJ4Y iT3tSw9KhxaeUiIGCY2jhnzDzLnmDY/8d27VfurBQZRAXn5EyelifncA3HdnS4pUNPtm/cjSw Q1jq3bYzX61WnWEl9D1gwvOcPOm/LqQ3o4Mz4qFBip1On/pBAP5fHEXWWiilWlMS1q4Otaa00 o1VX6ocKFoLJyv9NRWihMASGsdEv67ZxxfFRemqFdS/hLuyPXTCoOzfJK1ELCffjdgeh4j2r8 mcnbxm9OXhvIqMDRetaHK0XJ81RhNZ6jElaFpnDtd14nZORjRZpiBomTLlwp8FvOYgObaLmJx ING2OUVbbvKL8frWXIrp6AC6mix60fcNsl43iGBsGo/Zo9MWvkC0chljeoWvREeGyqv5ZbFny syzvofql9xH9SdHXI4iib/QS8AeaVNrCxCTC0I5dHP9aCYSw6HbOg6+eiFaDF2FxdC9TExCl9 eQaynDLa4sBlAy4ZcObQXlVf+ZBMUrodH66E0tb/6u4l/42bWrEFfWOZKoob1A78tZzoHl1XF OKIIRg== X-Spam-Status: No, score=-10.9 required=5.0 tests=BAYES_00,BODY_8BITS,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,GIT_PATCH_0,RCVD_IN_DNSWL_LOW,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,SPF_PASS,TXREP,T_SCC_BODY_TEXT_LINE 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 Mikael, Am 06.11.23 um 20:19 schrieb Mikael Morin: > > This change to the testcase: > > diff --git a/gcc/testsuite/gfortran.dg/bound_11.f90 > b/gcc/testsuite/gfortran.dg/bound_11.f90 > index 170eba4ddfd..2e96f843476 100644 > --- a/gcc/testsuite/gfortran.dg/bound_11.f90 > +++ b/gcc/testsuite/gfortran.dg/bound_11.f90 > @@ -88,6 +88,7 @@ contains > =C2=A0=C2=A0=C2=A0=C2=A0 m4 =3D .false. > =C2=A0=C2=A0=C2=A0=C2=A0 i =3D 1 > =C2=A0=C2=A0=C2=A0=C2=A0 r =3D sum(a, dim=3Di) > +=C2=A0=C2=A0=C2=A0 if (.not. allocated(r)) stop 210 > =C2=A0=C2=A0=C2=A0=C2=A0 if (any(shape(r) /=3D (/ 3, 0, 7 /))) stop 211 > =C2=A0=C2=A0=C2=A0=C2=A0 if (any(ubound(r) /=3D (/ 3, 0, 7 /))) stop 21= 2 > =C2=A0=C2=A0=C2=A0=C2=A0 i =3D 2 > @@ -104,6 +105,7 @@ contains > =C2=A0=C2=A0=C2=A0=C2=A0 if (any(ubound(r) /=3D (/ 9, 3, 0 /))) stop 21= 8 > =C2=A0=C2=A0=C2=A0=C2=A0 i =3D 1 > =C2=A0=C2=A0=C2=A0=C2=A0 r =3D sum(a, dim=3Di, mask=3Dm1) > +=C2=A0=C2=A0=C2=A0 if (.not. allocated(r)) stop 220 > =C2=A0=C2=A0=C2=A0=C2=A0 if (any(shape(r) /=3D (/ 3, 0, 7 /))) stop 221 > =C2=A0=C2=A0=C2=A0=C2=A0 if (any(ubound(r) /=3D (/ 3, 0, 7 /))) stop 22= 2 > =C2=A0=C2=A0=C2=A0=C2=A0 i =3D 2 > @@ -120,6 +122,7 @@ contains > =C2=A0=C2=A0=C2=A0=C2=A0 if (any(ubound(r) /=3D (/ 9, 3, 0 /))) stop 22= 8 > =C2=A0=C2=A0=C2=A0=C2=A0 i =3D 1 > =C2=A0=C2=A0=C2=A0=C2=A0 r =3D sum(a, dim=3Di, mask=3Dm4) > +=C2=A0=C2=A0=C2=A0 if (.not. allocated(r)) stop 230 > =C2=A0=C2=A0=C2=A0=C2=A0 if (any(shape(r) /=3D (/ 3, 0, 7 /))) stop 231 > =C2=A0=C2=A0=C2=A0=C2=A0 if (any(ubound(r) /=3D (/ 3, 0, 7 /))) stop 23= 2 > =C2=A0=C2=A0=C2=A0=C2=A0 i =3D 2 > > gives me a FAIL with STOP 220 (or STOP 230 if the STOP 220 line is > commented); the first one with STOP 210 passes. > So it is the first snippet with the xmallocarray (which supports zero > values see memory.c) call that is the correct one. > Good catch, I will open a separate PR. ah, now I see that the case of allocation of zero elements always allocates one byte, which is needed for r.data to be non-null. Go ahead! Harald > Mikael >