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 D63E83858D37; Sun, 19 Mar 2023 19:38:05 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org D63E83858D37 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=1679254684; i=anlauf@gmx.de; bh=hqzSRJjEpSyY0h3E9DyBYRa9p/bqEXzHkOB4vIwdixU=; h=X-UI-Sender-Class:Date:Subject:To:References:From:In-Reply-To; b=hIu6lDbwHV5lsv6IZ+v1N0RW78UDf1iaFHx5CsTh0+k7pj3T+gHW0/gxQcbSKUPmT uqaZ4EqY/cTAOdblF0rFx7q8D5ex8DGpnaVjcPNd7SdnfhAqXF9IrrLgEnYPrW+RvX mklwVhmqW4CtT3sFRHpOi27MA1PIY5lSiHywrKzQveK792O7JZooddCj2abUB9MBOj ykNCXwb5ulZXuEfjVxhTtL+AoHQlWcx0suwWtzMgYQMfEf4tWRVJ6BHrEVgDrmBl9k 1/FwMmyRle5LTwvxmYiU3LKRLw6flrs4lNWzreQsIcOpB1IBIafOkjtcAL3p6FM4wU AnrW+LzcTH6Uw== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.178.29] ([93.207.90.211]) by mail.gmx.net (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MnJhO-1qKyaN2xaG-00jIKP; Sun, 19 Mar 2023 20:38:03 +0100 Message-ID: Date: Sun, 19 Mar 2023 20:38:02 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.8.0 Subject: Re: [PATCH] Fortran: procedures with BIND(C) attribute require explicit interface [PR85877] To: Thomas Koenig , fortran , gcc-patches Newsgroups: gmane.comp.gcc.patches,gmane.comp.gcc.fortran References: <3496724e-5ebd-d133-c6f6-807068b175f4@netcologne.de> <56697d6e-7fe1-cb94-125e-7f9828be5d15@netcologne.de> Content-Language: en-US From: Harald Anlauf In-Reply-To: <56697d6e-7fe1-cb94-125e-7f9828be5d15@netcologne.de> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: quoted-printable X-Provags-ID: V03:K1:Mk0CaP3c7l2u1pQbRd8OBQTjH+qBf4KIGpTg78B1vKS3NhNHLV4 T86T8uf937EOVzzEu2so8UKI0GplZYizkRUl+YkBcWiVNHd0c0FYox1bWoQTn1DhfIYkQWL kYaNgy2waOnT9RYdob6RCD/S2k4xAT2DDMqIIDJBb9Pyo5hNFtUHTeP5BwSwc/jiDgOKSqR rzhI97u6dFfyi+PgV+mZQ== UI-OutboundReport: notjunk:1;M01:P0:7KznIqaAXa0=;N2NoWlR/B0+F2ZyV11IXX+Ehz7h su2aGJSVfUTz6V4XBqZKCqQZPXx0b7kXFLZIqwgngKHyajFnImjQkrmIu5UpSHoNJ5sAgQLzw hNz4N9XiLnu8uK3mR1YyyBOBSaNp89RtuVYKlNduUOymQgrgJoMgn8ldYIXJ+D98ebA8mPWXJ oGpJZZffOy6k+LAs9V3y302PT+vCQRY4IIacAq/CkYDadCcxiH66VLLE6kHimMDyqQ/0tQJEV mkEhj8DjoBnlkNwfQEh8BrDl7oggKcfGBIg5cS/HWA4rbM4L6GJKQO+L2pWQt2Sbn7PmXvAjm CCUAsDE1ewzCMMXUqZkBAYE26+m7MV1xDUmY72CmeOEKwUzaYvHkppBycKccsZJL9i9Kf9rb2 bdq2hjqD8dzv4JW0VJ4NS9gEuxtHX8WDwgi1k3SAhWEQKbIkzJLa1FxMn6pYvDyPJ/ASGGzqK xcUohfPedTHgvGI8nmNPkUiCe7OpvHMFZjOiT4Vv2k49QJVFTfFRR6vA5OzBAXwPVLEijsspg /rfWbmEm7XopFnvH0oZIE3l/WMtXRgmDKx2becAPXKlm9Ujs7PplRMlWFOO6IdyhSuTN7vgDG LFUeImlOQqSSztVYRfw0Zec2yOrxKdgAPTVdp2XYggs6qukrnl7R9AG8dSYy4FafWL4uvatX2 KLy8NqZfxISmkuzRTmk+7NfvxOyS7HEzID+83WflRhahvc0Fsv21FzRQ6JIEyms7SO3rkUhbA IbWdKp3Ohz1ONgH3J8zgFnKN2i6ddUDL05Z9mBwMgJ4XPliD94GPWIAcDy2U+gI9CUbxPpO5r 3ULXldYZ2O8Y5ltVhxRKHJgKThajLFz/JftyG21JqYX6hp2ynoACkfwHI7LgctxRbZGdn7Fpx FGj4XZn4nneavCAgRR9gnKkh+bDPd6mL3gl6eMYkOz1KbuikLsXtIIQh+RCdKjTb7jdkjACwW JBzO5g== X-Spam-Status: No, score=-3.7 required=5.0 tests=BAYES_00,BODY_8BITS,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,KAM_SHORT,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: Hi Thomas, Am 19.03.23 um 08:34 schrieb Thomas Koenig via Gcc-patches: > Hi Harald, > >> Am 18.03.23 um 19:52 schrieb Thomas Koenig via Gcc-patches: >>> Hi Harald, >>> >>>> the Fortran standard requires an explicit procedure interface in >>>> certain >>>> situations, such as when they have a BIND(C) attribute >>>> (F2018:15.4.2.2). >>>> The attached patch adds a check for this. >>>> >>>> Regtested on x86_64-pc-linux-gnu.=C2=A0 OK for mainline? >>> >>> While this fixes the ICE, it misses >>> >>> function f() bind(c) >>> =C2=A0=C2=A0 f =3D 42. >>> end >>> >>> subroutine p >>> =C2=A0=C2=A0 bind(c) f=C2=A0=C2=A0=C2=A0=C2=A0 ! { dg-error "must be e= xplicit" } >>> =C2=A0=C2=A0 x =3D f() >>> end >> >> what do you mean by "it misses"? > > Sorry, that was caused by confusion on my part (and it is better > to test an assumption of what the compiler actually does :-) > > Patch is OK, also for backport.=C2=A0 Maybe you can also include the > test above, just to make sure. I've added your suggestion to the testcase. Pushed as: https://gcc.gnu.org/g:5426ab34643d9e6502f3ee572891a03471fa33ed > Best regards > > =C2=A0=C2=A0=C2=A0=C2=A0Thomas > > 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 B5B253858C53 for ; Sun, 19 Mar 2023 19:38:07 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org B5B253858C53 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 1pdyr0-0003cd-La for gcc-patches@gcc.gnu.org; Sun, 19 Mar 2023 20:38:06 +0100 X-Injected-Via-Gmane: http://gmane.org/ To: gcc-patches@gcc.gnu.org From: Harald Anlauf Subject: Re: [PATCH] Fortran: procedures with BIND(C) attribute require explicit interface [PR85877] Date: Sun, 19 Mar 2023 20:38:02 +0100 Message-ID: References: <3496724e-5ebd-d133-c6f6-807068b175f4@netcologne.de> <56697d6e-7fe1-cb94-125e-7f9828be5d15@netcologne.de> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.8.0 Content-Language: en-US In-Reply-To: <56697d6e-7fe1-cb94-125e-7f9828be5d15@netcologne.de> Cc: fortran@gcc.gnu.org X-Spam-Status: No, score=-1.5 required=5.0 tests=BAYES_00,BODY_8BITS,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM,HEADER_FROM_DIFFERENT_DOMAINS,KAM_DMARC_STATUS,KAM_SHORT,NICE_REPLY_A,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: <20230319193802.I3_AIFTCy_BtK_qPf8G_cN_IvOH2xjw2hlv_jDRWhiQ@z> Hi Thomas, Am 19.03.23 um 08:34 schrieb Thomas Koenig via Gcc-patches: > Hi Harald, > >> Am 18.03.23 um 19:52 schrieb Thomas Koenig via Gcc-patches: >>> Hi Harald, >>> >>>> the Fortran standard requires an explicit procedure interface in >>>> certain >>>> situations, such as when they have a BIND(C) attribute >>>> (F2018:15.4.2.2). >>>> The attached patch adds a check for this. >>>> >>>> Regtested on x86_64-pc-linux-gnu.  OK for mainline? >>> >>> While this fixes the ICE, it misses >>> >>> function f() bind(c) >>>    f = 42. >>> end >>> >>> subroutine p >>>    bind(c) f     ! { dg-error "must be explicit" } >>>    x = f() >>> end >> >> what do you mean by "it misses"? > > Sorry, that was caused by confusion on my part (and it is better > to test an assumption of what the compiler actually does :-) > > Patch is OK, also for backport.  Maybe you can also include the > test above, just to make sure. I've added your suggestion to the testcase. Pushed as: https://gcc.gnu.org/g:5426ab34643d9e6502f3ee572891a03471fa33ed > Best regards > >     Thomas > > Thanks, Harald