From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 6426 invoked by alias); 30 Mar 2019 12:40:35 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 6406 invoked by uid 89); 30 Mar 2019 12:40:34 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-3.7 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,GIT_PATCH_2,KAM_ASCII_DIVIDERS,RCVD_IN_DNSWL_NONE,SPF_PASS,URIBL_BLOCKED autolearn=ham version=3.3.1 spammy=FC29, fc29, ****, D*t-online.de X-HELO: mail-lf1-f42.google.com Received: from mail-lf1-f42.google.com (HELO mail-lf1-f42.google.com) (209.85.167.42) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Sat, 30 Mar 2019 12:40:32 +0000 Received: by mail-lf1-f42.google.com with SMTP id 10so3228824lfr.8; Sat, 30 Mar 2019 05:40:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to:cc; bh=OCrflEw5WcmRGIjSTwBpv+aZ3oC0u/0KV1dy26iKJKs=; b=LiV40gK7Xb/t9TyP0ffNQcOaLE4xJARY3VqB6rJNDZ048CF1l1pmroJ9DbwJWYGJNt 73xPnHvghoHdbW+hWHhE9HRvJEWuU2bAD2GoLMPVQRVza0WpE38XrtENy/8grYjZ04vn vyrFCpmfI8VNm8KRGoQfVRQ0I8suIIqyaDd1lA/Bo6n4i4YHwmI6AMTmhJppkN50hQ23 paTei1gDeLS/wmR82Jb1xcN/mcwvRHtVV1hdAQCJheYJ0Zqz7m3OGnLzVCN8oMyrBaZj dGNbQtYDq6UC0l+HieyBiDUW8etysLxHqJgHk2PHNlWdrwMFKOjZM4CNKJpUOYNwR7qR 9XkQ== MIME-Version: 1.0 From: Paul Richard Thomas Date: Sat, 30 Mar 2019 12:57:00 -0000 Message-ID: Subject: [Patch, fortran] PR87127 - External function not recognised from within an associate block To: "fortran@gcc.gnu.org" , gcc-patches Cc: gscfq@t-online.de Content-Type: multipart/mixed; boundary="000000000000b8a21205854f1766" X-SW-Source: 2019-03/txt/msg01462.txt.bz2 --000000000000b8a21205854f1766 Content-Type: text/plain; charset="UTF-8" Content-length: 596 This patch is pretty self-explanatory. I have checked that a sensible errors are given if 'exfunc' in the testcase is referenced if it is a variable. Bootstrapped and regtested on FC29/x86_64 - OK for trunk? Paul 2019-03-30 Paul Thomas PR fortran/87127 * resolve.c (check_host_association): If an external function is typed but not declared explicitly to be external, change the old symbol from a variable to an external function. 2019-03-30 Paul Thomas PR fortran/87127 * gfortran.dg/external_procedures_4.f90: New test. --000000000000b8a21205854f1766 Content-Type: text/x-patch; charset="UTF-8"; name="submit.diff" Content-Disposition: attachment; filename="submit.diff" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_jtvh6iwo0 Content-length: 4575 SW5kZXg6IGdjYy9mb3J0cmFuL3Jlc29sdmUuYwo9PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09CioqKiBnY2MvZm9ydHJhbi9yZXNvbHZlLmMJKHJldmlzaW9uIDI2 OTE2MCkKLS0tIGdjYy9mb3J0cmFuL3Jlc29sdmUuYwkod29ya2luZyBjb3B5 KQoqKioqKioqKioqKioqKiogcmVzb2x2ZV9wcm9jZWR1cmU6CioqKiA1NjE1 LDU2MjUgKioqKgoKCiAgLyogQ2hlY2tzIHRvIHNlZSB0aGF0IHRoZSBjb3Jy ZWN0IHN5bWJvbCBoYXMgYmVlbiBob3N0IGFzc29jaWF0ZWQuCiEgICAgVGhl IG9ubHkgc2l0dWF0aW9uIHdoZXJlIHRoaXMgYXJpc2VzIGlzIHRoYXQgaW4g d2hpY2ggYSB0d2ljZQohICAgIGNvbnRhaW5lZCBmdW5jdGlvbiBpcyBwYXJz ZWQgYWZ0ZXIgdGhlIGhvc3QgYXNzb2NpYXRpb24gaXMgbWFkZS4KISAgICBU aGVyZWZvcmUsIG9uIGRldGVjdGluZyB0aGlzLCBjaGFuZ2UgdGhlIHN5bWJv bCBpbiB0aGUgZXhwcmVzc2lvbgohICAgIGFuZCBjb252ZXJ0IHRoZSBhcnJh eSByZWZlcmVuY2UgaW50byBhbiBhY3R1YWwgYXJnbGlzdCBpZiB0aGUgb2xk CiEgICAgc3ltYm9sIGlzIGEgdmFyaWFibGUuICAqLwogIHN0YXRpYyBib29s CiAgY2hlY2tfaG9zdF9hc3NvY2lhdGlvbiAoZ2ZjX2V4cHIgKmUpCiAgewot LS0gNTYxNSw1NjI4IC0tLS0KCgogIC8qIENoZWNrcyB0byBzZWUgdGhhdCB0 aGUgY29ycmVjdCBzeW1ib2wgaGFzIGJlZW4gaG9zdCBhc3NvY2lhdGVkLgoh ICAgIFRoZSBvbmx5IHNpdHVhdGlvbnMgd2hlcmUgdGhpcyBhcmlzZXMgYXJl OgohIAkoaSkgIFRoYXQgaW4gd2hpY2ggYSB0d2ljZSBjb250YWluZWQgZnVu Y3Rpb24gaXMgcGFyc2VkIGFmdGVyCiEgCSAgICAgdGhlIGhvc3QgYXNzb2Np YXRpb24gaXMgbWFkZS4gT24gZGV0ZWN0aW5nIHRoaXMsIGNoYW5nZQohIAkg ICAgIHRoZSBzeW1ib2wgaW4gdGhlIGV4cHJlc3Npb24gYW5kIGNvbnZlcnQg dGhlIGFycmF5IHJlZmVyZW5jZQohIAkgICAgIGludG8gYW4gYWN0dWFsIGFy Z2xpc3QgaWYgdGhlIG9sZCBzeW1ib2wgaXMgYSB2YXJpYWJsZTsgb3IKISAJ KGlpKSBUaGF0IGluIHdoaWNoIGFuIGV4dGVybmFsIGZ1bmN0aW9uIGlzIHR5 cGVkIGJ1dCBub3QgZGVjbGFyZWQKISAJICAgICBleHBsaWNpdGx5IHRvIGJl IGV4dGVybmFsLiBIZXJlLCB0aGUgb2xkIHN5bWJvbCBpcyBjaGFuZ2VkCiEg CSAgICAgZnJvbSBhIHZhcmlhYmxlIHRvIGFuIGV4dGVybmFsIGZ1bmN0aW9u LiAgKi8KICBzdGF0aWMgYm9vbAogIGNoZWNrX2hvc3RfYXNzb2NpYXRpb24g KGdmY19leHByICplKQogIHsKKioqKioqKioqKioqKioqIGNoZWNrX2hvc3Rf YXNzb2NpYXRpb24gKGdmY19leHByICplKQoqKiogNTcwOSw1NzE0ICoqKioK LS0tIDU3MTIsNTczNyAtLS0tCiAgCSAgZ2ZjX3Jlc29sdmVfZXhwciAoZSk7 CiAgCSAgc3ltLT5yZWZzKys7CiAgCX0KKyAgICAgICAvKiBUaGlzIGNhc2Ug Y29ycmVzcG9uZHMgdG8gYSBjYWxsLCBmcm9tIGEgYmxvY2sgb3IgYSBjb250 YWluZWQKKyAJIHByb2NlZHVyZSwgdG8gYW4gZXh0ZXJuYWwgZnVuY3Rpb24s IHdoaWNoIGhhcyBub3QgYmVlbiBkZWNsYXJlZAorIAkgYXMgYmVpbmcgZXh0 ZXJuYWwgaW4gdGhlIG1haW4gcHJvZ3JhbSBidXQgaGFzIGJlZW4gdHlwZWQu ICAqLworICAgICAgIGVsc2UgaWYgKHN5bSAmJiBvbGRfc3ltICE9IHN5bQor IAkgICAgICAgJiYgIWUtPnJlZgorIAkgICAgICAgJiYgc3ltLT50cy50eXBl ID09IEJUX1VOS05PV04KKyAJICAgICAgICYmIG9sZF9zeW0tPnRzLnR5cGUg IT0gQlRfVU5LTk9XTgorIAkgICAgICAgJiYgc3ltLT5hdHRyLmZsYXZvciA9 PSBGTF9QUk9DRURVUkUKKyAJICAgICAgICYmIG9sZF9zeW0tPmF0dHIuZmxh dm9yID09IEZMX1ZBUklBQkxFCisgCSAgICAgICAmJiBzeW0tPm5zLT5wYXJl bnQgPT0gb2xkX3N5bS0+bnMKKyAJICAgICAgICYmIHN5bS0+bnMtPnByb2Nf bmFtZQorIAkgICAgICAgJiYgKHN5bS0+bnMtPnByb2NfbmFtZS0+YXR0ci5m bGF2b3IgPT0gRkxfTEFCRUwKKyAJCSAgIHx8IHN5bS0+bnMtPnByb2NfbmFt ZS0+YXR0ci5mbGF2b3IgPT0gRkxfUFJPQ0VEVVJFKSkKKyAJeworIAkgIG9s ZF9zeW0tPmF0dHIuZmxhdm9yID0gRkxfUFJPQ0VEVVJFOworIAkgIG9sZF9z eW0tPmF0dHIuZXh0ZXJuYWwgPSAxOworIAkgIG9sZF9zeW0tPmF0dHIuZnVu Y3Rpb24gPSAxOworIAkgIG9sZF9zeW0tPnJlc3VsdCA9IG9sZF9zeW07Cisg CSAgZ2ZjX3Jlc29sdmVfZXhwciAoZSk7CisgCX0KICAgICAgfQogICAgLyog VGhpcyBtaWdodCBoYXZlIGNoYW5nZWQhICAqLwogICAgcmV0dXJuIGUtPmV4 cHJfdHlwZSA9PSBFWFBSX0ZVTkNUSU9OOwpJbmRleDogZ2NjL3Rlc3RzdWl0 ZS9nZm9ydHJhbi5kZy9leHRlcm5hbF9wcm9jZWR1cmVzXzQuZjkwCj09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT0KKioqIGdjYy90ZXN0c3VpdGUvZ2ZvcnRyYW4u ZGcvZXh0ZXJuYWxfcHJvY2VkdXJlc180LmY5MAkobm9uZXhpc3RlbnQpCi0t LSBnY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2V4dGVybmFsX3Byb2NlZHVy ZXNfNC5mOTAJKHdvcmtpbmcgY29weSkKKioqKioqKioqKioqKioqCioqKiAw ICoqKioKLS0tIDEsMjggLS0tLQorICEgeyBkZy1kbyBydW4gfQorICEKKyAh IFRlc3QgdGhlIGZpeCBmb3IgUFI4NzEyNyBpbiB3aGljaCB0aGUgcmVmZXJl bmNlcyB0byBleGZ1bmMgY2F1c2UKKyAhIHRoZSBlcnJvciAi4oCYZXhmdW5j 4oCZIGF0ICgxKSBpcyBub3QgYSBmdW5jdGlvbiIuCisgIQorICEgQ29udHJp YnV0ZWQgYnkgR2VyaGFyZCBTdGVpbm1ldHogIDxnc2NmcUB0LW9ubGluZS5k ZT4KKyAhCisgZnVuY3Rpb24gZXhmdW5jKGkpCisgICBpbXBsaWNpdCBub25l CisgICBpbnRlZ2VyIDo6IGV4ZnVuYyxpCisgICBleGZ1bmMgPSAyKmkKKyBl bmQgZnVuY3Rpb24KKworICEgY29udGVudHMgb2YgdGVzdC5mOTAKKyBwcm9n cmFtIHRlc3QKKyAgIGltcGxpY2l0IG5vbmUKKyAgIGludGVnZXIgOjogZXhm dW5jLGkKKyAgIGludGVnZXIscGFyYW1ldGVyIDo6IGFycmF5KDIpPVs2LDdd CisgICBhc3NvY2lhdGUoaT0+YXJyYXkoMikpICAgICAgICAgICAgISBPcmln aW5hbCBidWcKKyAgICAgaWYgKGV4ZnVuYyhpKSAubmUuIDIqaSkgc3RvcCAx CisgICBlbmQgYXNzb2NpYXRlCisgICBpID0gOTkKKyAgIGNhbGwgZm9vCisg Y29udGFpbnMKKyAgIHN1YnJvdXRpbmUgZm9vKCkgICAgICAgICAgICAgICAg ICAhIENvbW1lbnQgIzMKKyAgICAgaWYgKGV4ZnVuYyhpKSAubmUuIDIqaSkg c3RvcCAyCisgICBlbmQgc3Vicm91dGluZSBmb28KKyBlbmQgcHJvZ3JhbQo= --000000000000b8a21205854f1766--