From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 84854 invoked by alias); 15 Sep 2019 11:40:19 -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 84838 invoked by uid 89); 15 Sep 2019 11:40:19 -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,KAM_NUMSUBJECT,RCVD_IN_DNSWL_NONE,SPF_PASS autolearn=ham version=3.3.1 spammy=associate, 48, 275695, 4.8 X-HELO: mail-lf1-f46.google.com Received: from mail-lf1-f46.google.com (HELO mail-lf1-f46.google.com) (209.85.167.46) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Sun, 15 Sep 2019 11:40:17 +0000 Received: by mail-lf1-f46.google.com with SMTP id r22so13971918lfm.1; Sun, 15 Sep 2019 04:40:16 -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; bh=iwYN6/8bjKCou0XV1Zu+iL3Q4kNNeeECM0hZBZ5L7uE=; b=oGOPfIKV0UI9BKAroXlBYaj9Hc56LWWWlTZcU7jFoN89qyjwpditgDcyLK43usgwh6 itMFfOvZVPB2+UQ74hexNN4myFr//D7cqlHC6VAxosCrr5f4X6CgjIJuA7B+/DJf1NeZ 860i8fLhQRuCQMl4MRQU8PCIE0JInpFXaeUYK4xk6KtQCWr3yR6uP4cnPRr8YqHcjUoG q+7xWq75bXp0TWElsFpreGvZSaeSGfSZLfF3lIRzyzDc6naHdfmHXVDMzkAANXd9Rsrl 9H0vfCf0SL/N5TjboC7KhOsIRp1iJIYX6d1CxhkbjE5aJ0DIWhBKhUDpuafqvSj4WuJn wc2g== MIME-Version: 1.0 From: Paul Richard Thomas Date: Sun, 15 Sep 2019 11:40:00 -0000 Message-ID: Subject: [Patch, fortran] PR91588 - ICE in check_inquiry, at fortran/expr.c:2673 To: "fortran@gcc.gnu.org" , gcc-patches Content-Type: multipart/mixed; boundary="0000000000005cc085059295f382" X-SW-Source: 2019-09/txt/msg00903.txt.bz2 --0000000000005cc085059295f382 Content-Type: text/plain; charset="UTF-8" Content-length: 799 The attached bootstraps and regtests on FC30/x86_64 - OK for trunk? It strikes me that this should be backported since the bug is rather fundamental and ispresent all the way back to version 4.8. An obvious question is how far back? To 8-branch? Cheers Paul 2019-09-15 Paul Thomas PR fortran/91588 * expr.c (check_inquiry): Remove extended component refs by using symbol pointers. If a function argument is an associate variable with a constant target, copy the target expression in place of the argument expression. Check that the charlen is not NULL before using the string length. (gfc_check_assign): Remove extraneous space. 2019-09-15 Paul Thomas PR fortran/91588 * gfortran.dg/associate_49.f90 : New test. --0000000000005cc085059295f382 Content-Type: text/x-patch; charset="US-ASCII"; name="submit.diff" Content-Disposition: attachment; filename="submit.diff" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_k0kwpsbt0 Content-length: 8394 SW5kZXg6IGdjYy9mb3J0cmFuL2V4cHIuYwo9PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09CioqKiBnY2MvZm9ydHJhbi9leHByLmMJKHJldmlzaW9uIDI3NTY5NSkK LS0tIGdjYy9mb3J0cmFuL2V4cHIuYwkod29ya2luZyBjb3B5KQoqKioqKioq KioqKioqKiogY2hlY2tfaW5xdWlyeSAoZ2ZjX2V4cHIgKmUsIGludCBub3Rf cmVzdAoqKiogMjYxMCwyNjE1ICoqKioKLS0tIDI2MTAsMjYxNyAtLS0tCiAg CiAgICBpbnQgaSA9IDA7CiAgICBnZmNfYWN0dWFsX2FyZ2xpc3QgKmFwOwor ICAgZ2ZjX3N5bWJvbCAqc3ltOworICAgZ2ZjX3N5bWJvbCAqYXN5bTsKICAK ICAgIGlmICghZS0+dmFsdWUuZnVuY3Rpb24uaXN5bQogICAgICAgIHx8ICFl LT52YWx1ZS5mdW5jdGlvbi5pc3ltLT5pbnF1aXJ5KQoqKioqKioqKioqKioq KiogY2hlY2tfaW5xdWlyeSAoZ2ZjX2V4cHIgKmUsIGludCBub3RfcmVzdAoq KiogMjYxOSwyNjM4ICoqKioKICAgIGlmIChlLT5zeW10cmVlID09IE5VTEwp CiAgICAgIHJldHVybiBNQVRDSF9OTzsKICAKISAgIGlmIChlLT5zeW10cmVl LT5uLnN5bS0+ZnJvbV9pbnRtb2QpCiAgICAgIHsKISAgICAgICBpZiAoZS0+ c3ltdHJlZS0+bi5zeW0tPmZyb21faW50bW9kID09IElOVE1PRF9JU09fRk9S VFJBTl9FTlYKISAJICAmJiBlLT5zeW10cmVlLT5uLnN5bS0+aW50bW9kX3N5 bV9pZCAhPSBJU09GT1JUUkFOX0NPTVBJTEVSX09QVElPTlMKISAJICAmJiBl LT5zeW10cmVlLT5uLnN5bS0+aW50bW9kX3N5bV9pZCAhPSBJU09GT1JUUkFO X0NPTVBJTEVSX1ZFUlNJT04pCiAgCXJldHVybiBNQVRDSF9OTzsKICAKISAg ICAgICBpZiAoZS0+c3ltdHJlZS0+bi5zeW0tPmZyb21faW50bW9kID09IElO VE1PRF9JU09fQ19CSU5ESU5HCiEgCSAgJiYgZS0+c3ltdHJlZS0+bi5zeW0t PmludG1vZF9zeW1faWQgIT0gSVNPQ0JJTkRJTkdfQ19TSVpFT0YpCiAgCXJl dHVybiBNQVRDSF9OTzsKICAgICAgfQogICAgZWxzZQogICAgICB7CiEgICAg ICAgbmFtZSA9IGUtPnN5bXRyZWUtPm4uc3ltLT5uYW1lOwogIAogICAgICAg IGZ1bmN0aW9ucyA9IGlucXVpcnlfZnVuY19nbnU7CiAgICAgICAgaWYgKGdm Y19vcHRpb24ud2Fybl9zdGQgJiBHRkNfU1REX0YyMDAzKQotLS0gMjYyMSwy NjQyIC0tLS0KICAgIGlmIChlLT5zeW10cmVlID09IE5VTEwpCiAgICAgIHJl dHVybiBNQVRDSF9OTzsKICAKISAgIHN5bSA9IGUtPnN5bXRyZWUtPm4uc3lt OwohIAohICAgaWYgKHN5bS0+ZnJvbV9pbnRtb2QpCiAgICAgIHsKISAgICAg ICBpZiAoc3ltLT5mcm9tX2ludG1vZCA9PSBJTlRNT0RfSVNPX0ZPUlRSQU5f RU5WCiEgCSAgJiYgc3ltLT5pbnRtb2Rfc3ltX2lkICE9IElTT0ZPUlRSQU5f Q09NUElMRVJfT1BUSU9OUwohIAkgICYmIHN5bS0+aW50bW9kX3N5bV9pZCAh PSBJU09GT1JUUkFOX0NPTVBJTEVSX1ZFUlNJT04pCiAgCXJldHVybiBNQVRD SF9OTzsKICAKISAgICAgICBpZiAoc3ltLT5mcm9tX2ludG1vZCA9PSBJTlRN T0RfSVNPX0NfQklORElORwohIAkgICYmIHN5bS0+aW50bW9kX3N5bV9pZCAh PSBJU09DQklORElOR19DX1NJWkVPRikKICAJcmV0dXJuIE1BVENIX05POwog ICAgICB9CiAgICBlbHNlCiAgICAgIHsKISAgICAgICBuYW1lID0gc3ltLT5u YW1lOwogIAogICAgICAgIGZ1bmN0aW9ucyA9IGlucXVpcnlfZnVuY19nbnU7 CiAgICAgICAgaWYgKGdmY19vcHRpb24ud2Fybl9zdGQgJiBHRkNfU1REX0Yy MDAzKQoqKioqKioqKioqKioqKiogY2hlY2tfaW5xdWlyeSAoZ2ZjX2V4cHIg KmUsIGludCBub3RfcmVzdAoqKiogMjY1NywyNjk3ICoqKioKICAgICAgICBp ZiAoIWFwLT5leHByKQogIAljb250aW51ZTsKICAKICAgICAgICBpZiAoYXAt PmV4cHItPnRzLnR5cGUgPT0gQlRfVU5LTk9XTikKICAJewohIAkgIGlmIChh cC0+ZXhwci0+c3ltdHJlZS0+bi5zeW0tPnRzLnR5cGUgPT0gQlRfVU5LTk9X TgohIAkgICAgICAmJiAhZ2ZjX3NldF9kZWZhdWx0X3R5cGUgKGFwLT5leHBy LT5zeW10cmVlLT5uLnN5bSwgMCwgZ2ZjX2N1cnJlbnRfbnMpKQogIAkgICAg cmV0dXJuIE1BVENIX05POwogIAohIAkgIGFwLT5leHByLT50cyA9IGFwLT5l eHByLT5zeW10cmVlLT5uLnN5bS0+dHM7CiAgCX0KICAKISAJLyogQXNzdW1l ZCBjaGFyYWN0ZXIgbGVuZ3RoIHdpbGwgbm90IHJlZHVjZSB0byBhIGNvbnN0 YW50IGV4cHJlc3Npb24KISAJICAgd2l0aCBMRU4sIGFzIHJlcXVpcmVkIGJ5 IHRoZSBzdGFuZGFyZC4gICovCiEgCWlmIChpID09IDUgJiYgbm90X3Jlc3Ry aWN0ZWQgJiYgYXAtPmV4cHItPnN5bXRyZWUKISAJICAgICYmIGFwLT5leHBy LT5zeW10cmVlLT5uLnN5bS0+dHMudHlwZSA9PSBCVF9DSEFSQUNURVIKISAJ ICAgICYmIChhcC0+ZXhwci0+c3ltdHJlZS0+bi5zeW0tPnRzLnUuY2wtPmxl bmd0aCA9PSBOVUxMCiEgCQl8fCBhcC0+ZXhwci0+c3ltdHJlZS0+bi5zeW0t PnRzLmRlZmVycmVkKSkKISAJICB7CiEgCSAgICBnZmNfZXJyb3IgKCJBc3N1 bWVkIG9yIGRlZmVycmVkIGNoYXJhY3RlciBsZW5ndGggdmFyaWFibGUgJXFz ICIKISAJCQkiaW4gY29uc3RhbnQgZXhwcmVzc2lvbiBhdCAlTCIsCiEgCQkJ YXAtPmV4cHItPnN5bXRyZWUtPm4uc3ltLT5uYW1lLAohIAkJCSZhcC0+ZXhw ci0+d2hlcmUpOwohIAkgICAgICByZXR1cm4gTUFUQ0hfRVJST1I7CiEgCSAg fQohIAllbHNlIGlmIChub3RfcmVzdHJpY3RlZCAmJiAhZ2ZjX2NoZWNrX2lu aXRfZXhwciAoYXAtPmV4cHIpKQohIAkgIHJldHVybiBNQVRDSF9FUlJPUjsK ICAKISAJaWYgKG5vdF9yZXN0cmljdGVkID09IDAKISAJICAgICAgJiYgYXAt PmV4cHItPmV4cHJfdHlwZSAhPSBFWFBSX1ZBUklBQkxFCiEgCSAgICAgICYm ICFjaGVja19yZXN0cmljdGVkIChhcC0+ZXhwcikpCiAgCSAgcmV0dXJuIE1B VENIX0VSUk9SOwogIAohIAlpZiAobm90X3Jlc3RyaWN0ZWQgPT0gMAohIAkg ICAgJiYgYXAtPmV4cHItPmV4cHJfdHlwZSA9PSBFWFBSX1ZBUklBQkxFCiEg CSAgICAmJiBhcC0+ZXhwci0+c3ltdHJlZS0+bi5zeW0tPmF0dHIuZHVtbXkK ISAJICAgICYmIGFwLT5leHByLT5zeW10cmVlLT5uLnN5bS0+YXR0ci5vcHRp b25hbCkKISAJICByZXR1cm4gTUFUQ0hfTk87CiAgICAgIH0KICAKICAgIHJl dHVybiBNQVRDSF9ZRVM7Ci0tLSAyNjYxLDI3MDggLS0tLQogICAgICAgIGlm ICghYXAtPmV4cHIpCiAgCWNvbnRpbnVlOwogIAorICAgICAgIGFzeW0gPSBh cC0+ZXhwci0+c3ltdHJlZSA/IGFwLT5leHByLT5zeW10cmVlLT5uLnN5bSA6 IE5VTEw7CisgCiAgICAgICAgaWYgKGFwLT5leHByLT50cy50eXBlID09IEJU X1VOS05PV04pCiAgCXsKISAJICBpZiAoYXN5bSAmJiBhc3ltLT50cy50eXBl ID09IEJUX1VOS05PV04KISAJICAgICAgJiYgIWdmY19zZXRfZGVmYXVsdF90 eXBlIChhc3ltLCAwLCBnZmNfY3VycmVudF9ucykpCiAgCSAgICByZXR1cm4g TUFUQ0hfTk87CiAgCiEgCSAgYXAtPmV4cHItPnRzID0gYXN5bS0+dHM7CiAg CX0KICAKISAgICAgICBpZiAoYXN5bSAmJiBhc3ltLT5hc3NvYyAmJiBhc3lt LT5hc3NvYy0+dGFyZ2V0CiEgCSAgJiYgYXN5bS0+YXNzb2MtPnRhcmdldC0+ ZXhwcl90eXBlID09IEVYUFJfQ09OU1RBTlQpCiEgCXsKISAJICBnZmNfZnJl ZV9leHByIChhcC0+ZXhwcik7CiEgCSAgYXAtPmV4cHIgPSBnZmNfY29weV9l eHByIChhc3ltLT5hc3NvYy0+dGFyZ2V0KTsKISAJfQogIAohICAgICAgIC8q IEFzc3VtZWQgY2hhcmFjdGVyIGxlbmd0aCB3aWxsIG5vdCByZWR1Y2UgdG8g YSBjb25zdGFudCBleHByZXNzaW9uCiEgCSB3aXRoIExFTiwgYXMgcmVxdWly ZWQgYnkgdGhlIHN0YW5kYXJkLiAgKi8KISAgICAgICBpZiAoaSA9PSA1ICYm IG5vdF9yZXN0cmljdGVkICYmIGFzeW0KISAJICAmJiBhc3ltLT50cy50eXBl ID09IEJUX0NIQVJBQ1RFUgohIAkgICYmICgoYXN5bS0+dHMudS5jbCAmJiBh c3ltLT50cy51LmNsLT5sZW5ndGggPT0gTlVMTCkKISAJICAgICAgfHwgYXN5 bS0+dHMuZGVmZXJyZWQpKQohIAl7CiEgCSAgZ2ZjX2Vycm9yICgiQXNzdW1l ZCBvciBkZWZlcnJlZCBjaGFyYWN0ZXIgbGVuZ3RoIHZhcmlhYmxlICVxcyAi CiEgCQkgICAgICJpbiBjb25zdGFudCBleHByZXNzaW9uIGF0ICVMIiwKISAJ CSAgICAgIGFzeW0tPm5hbWUsICZhcC0+ZXhwci0+d2hlcmUpOwogIAkgIHJl dHVybiBNQVRDSF9FUlJPUjsKKyAJfQorICAgICAgIGVsc2UgaWYgKG5vdF9y ZXN0cmljdGVkICYmICFnZmNfY2hlY2tfaW5pdF9leHByIChhcC0+ZXhwcikp CisgCXJldHVybiBNQVRDSF9FUlJPUjsKICAKISAgICAgICBpZiAobm90X3Jl c3RyaWN0ZWQgPT0gMAohIAkgICYmIGFwLT5leHByLT5leHByX3R5cGUgIT0g RVhQUl9WQVJJQUJMRQohIAkgICYmICFjaGVja19yZXN0cmljdGVkIChhcC0+ ZXhwcikpCiEgCXJldHVybiBNQVRDSF9FUlJPUjsKISAKISAgICAgICBpZiAo bm90X3Jlc3RyaWN0ZWQgPT0gMAohIAkgICYmIGFwLT5leHByLT5leHByX3R5 cGUgPT0gRVhQUl9WQVJJQUJMRQohIAkgICYmIGFzeW0tPmF0dHIuZHVtbXkg JiYgYXN5bS0+YXR0ci5vcHRpb25hbCkKISAJcmV0dXJuIE1BVENIX05POwog ICAgICB9CiAgCiAgICByZXR1cm4gTUFUQ0hfWUVTOwoqKioqKioqKioqKioq KiogZ2ZjX2NoZWNrX2Fzc2lnbiAoZ2ZjX2V4cHIgKmx2YWx1ZSwgZ2ZjXwoq KiogMzY4MywzNjg5ICoqKioKICAKICAgICAgICBnZmNfZXJyb3IgKCJCT1og bGl0ZXJhbCBjb25zdGFudCBuZWFyICVMIGNhbm5vdCBiZSBhc3NpZ25lZCB0 byBhICIKICAJCSAiJXFzIHZhcmlhYmxlIiwgJnJ2YWx1ZS0+d2hlcmUsIGdm Y190eXBlbmFtZSAoJmx2YWx1ZS0+dHMpKTsKISAgCiAgICAgICAgcmV0dXJu IGZhbHNlOwogICAgICB9CiAgCi0tLSAzNjk0LDM3MDAgLS0tLQogIAogICAg ICAgIGdmY19lcnJvciAoIkJPWiBsaXRlcmFsIGNvbnN0YW50IG5lYXIgJUwg Y2Fubm90IGJlIGFzc2lnbmVkIHRvIGEgIgogIAkJICIlcXMgdmFyaWFibGUi LCAmcnZhbHVlLT53aGVyZSwgZ2ZjX3R5cGVuYW1lICgmbHZhbHVlLT50cykp OwohIAogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogIApJbmRleDog Z2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9hc3NvY2lhdGVfNDkuZjkwCj09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT0KKioqIGdjYy90ZXN0c3VpdGUvZ2ZvcnRy YW4uZGcvYXNzb2NpYXRlXzQ5LmY5MAkobm9uZXhpc3RlbnQpCi0tLSBnY2Mv dGVzdHN1aXRlL2dmb3J0cmFuLmRnL2Fzc29jaWF0ZV80OS5mOTAJKHdvcmtp bmcgY29weSkKKioqKioqKioqKioqKioqCioqKiAwICoqKioKLS0tIDEsMzQg LS0tLQorICEgeyBkZy1kbyBydW4gfQorICEKKyAhIFRlc3QgdGhlIGZpeCBm b3IgUFI5MTU4OCwgaW4gd2hpY2ggdGhlIGRlY2xhcmF0aW9uIG9mICdhJyBj YXVzZWQKKyAhIGFuIElDRS4KKyAhCisgISBDb250cmlidXRlZCBieSBHZXJo YXJkdCBTdGVpbm1ldHogIDxnc2NmcUB0LW9ubGluZS5kZT4KKyAhCisgcHJv Z3JhbSBwCisgICAgY2hhcmFjdGVyKDQpLCBwYXJhbWV0ZXIgOjogcGFybSA9 ICc3ODkwJworICAgIGFzc29jaWF0ZSAoeiA9PiAnMTIzNCcpCisgICAgICAg YmxvY2sKKyAgICAgICAgICBpbnRlZ2VyKGxlbih6KSkgOjogYQorICAgICAg ICAgIGlmIChraW5kKGEpIC5uZS4gNCkgc3RvcCAxCisgICAgICAgZW5kIGJs b2NrCisgICAgZW5kIGFzc29jaWF0ZQorICAgIGFzc29jaWF0ZSAoeiA9PiAn MTIzJykKKyAgICAgICBibG9jaworICAgICAgICAgIGludGVnZXIobGVuKHop KzEpIDo6IGEKKyAgICAgICAgICBpZiAoa2luZChhKSAubmUuIDQpIHN0b3Ag MgorICAgICAgIGVuZCBibG9jaworICAgIGVuZCBhc3NvY2lhdGUKKyAgICBh c3NvY2lhdGUgKHogPT4gMV84KQorICAgICAgIGJsb2NrCisgICAgICAgICAg aW50ZWdlcihraW5kKHopKSA6OiBhCisgICAgICAgICAgaWYgKGtpbmQoYSkg Lm5lLiA4KSBzdG9wIDMKKyAgICAgICBlbmQgYmxvY2sKKyAgICBlbmQgYXNz b2NpYXRlCisgICAgYXNzb2NpYXRlICh6ID0+IHBhcm0pCisgICAgICAgYmxv Y2sKKyAgICAgICAgICBpbnRlZ2VyKGxlbih6KSkgOjogYQorICAgICAgICAg IGlmIChraW5kKGEpIC5uZS4gNCkgc3RvcCA0CisgICAgICAgZW5kIGJsb2Nr CisgICAgZW5kIGFzc29jaWF0ZQorIGVuZAo= --0000000000005cc085059295f382--