From patchwork Mon May 11 19:30:49 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Harald Anlauf X-Patchwork-Id: 1288029 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org (client-ip=2620:52:3:1:0:246e:9693:128c; helo=sourceware.org; envelope-from=gcc-patches-bounces@gcc.gnu.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=gmx.de Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; secure) header.d=gmx.net header.i=@gmx.net header.a=rsa-sha256 header.s=badeba3b8450 header.b=XmDo7FRu; dkim-atps=neutral Received: from sourceware.org (server2.sourceware.org [IPv6:2620:52:3:1:0:246e:9693:128c]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 49LWJ45Jbdz9sPF for ; Tue, 12 May 2020 05:30:58 +1000 (AEST) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 8FC78389443E; Mon, 11 May 2020 19:30:53 +0000 (GMT) X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from mout.gmx.net (mout.gmx.net [212.227.15.19]) by sourceware.org (Postfix) with ESMTPS id E4BF8389441A; Mon, 11 May 2020 19:30:50 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org E4BF8389441A Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=gmx.de Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=anlauf@gmx.de DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1589225449; bh=JBFSobax1VNXBKsY+p3aUxShPRl4s3RHmwSnkAZJIqw=; h=X-UI-Sender-Class:From:To:Subject:Date; b=XmDo7FRufkG+7x6/oY3bp0cQVjK1gCUY+YQt27nn9dGy7Ufdz7/cXf9uh41E1exGE 6A7hGuPYdo79apk8ZgMRu0RNZskf9j9O6pg+a+R1ODbPtFGNlafbF/+cOlMePvt7lV Zj4wz6qjRfp1PNJ9Ia33FipaExYQR+Y+mFtuBEk4= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from [93.207.84.132] ([93.207.84.132]) by web-mail.gmx.net (3c-app-gmx-bs77.server.lan [172.19.170.225]) (via HTTP); Mon, 11 May 2020 21:30:49 +0200 MIME-Version: 1.0 Message-ID: From: "Harald Anlauf" To: fortran , gcc-patches Subject: [Patch, committed] PR fortran/95053 - ICE in gfc_divide(): Bad basic type Date: Mon, 11 May 2020 21:30:49 +0200 Importance: normal Sensitivity: Normal X-Priority: 3 X-Provags-ID: V03:K1:cIinKLHT8sf1ag2WIUaEJp9S3LeEutW3HCGBuUl80e3VEGtErnJMQsqAHkojYyvZksGrO gCnKR6ouxfc2gUZtWWL+tNjMDF7Z9pwnI7O798Ga44/llfdFXooQV7KeOppF2uvefhkDm3V1Dw3O L2QCU/QUMI8qquEM76uHBQ+THNrDOBtNgxEM2kx2997LjWuDQ4pv6IhoXLcy51BK5ZtPZoyoPqUN ZubPGn0M8W0oPo/WTfGyQhJipAlzV+Pic1zVw5l/O9UlU1O7kCYjCqGiNTMH/wKA4Y4P/0uYyANP 6g= X-UI-Out-Filterresults: notjunk:1;V03:K0:vf+VJEQZVFU=:IGE+LKssSlrWa6FmJIeFGa ZLSkXYftZerGQqUay1bgp/LonTT4p29lGcrgVkhCaDio0yQk4uvM7hWbXKARLaHmRhHPUx78G 1MvlVblktjJS1zaoC/Coapw/jo9P3mqGixXzHN+r+znmI6L64nNG6G96Z6tEE7b2ngoIGvi9q mhvaoGzMUnJWpgnXWKwL/R5CPHCLxFgVv97g93DLGMyZk/uJfi35T0OirEgDR4abuDvNqECgi +nhLNJQOMZzdw1N5TqRzKPJJWcba8W/Mc1UwzupTdapmwmvE4q7GCwDF3NCfs8pRRL9/ku+AQ C92E2zkkTg33sQPh6zRr6/nVgFkhkC+LCMjkhnLrEcQ5zBde5fJql0iPFLXs/214sQfSl8bc/ 9j6QbQiOv5wRZ0xHFIFamT4W9nogtH0TpoWxSltR4RoRZoeFQx9ubpcz7nvYQbezGB+1D7Z1A RksFpUln+O8XbqIqF4xMrNT/E+opx9o8nXb1lDiJ5mozwlW1eNDCijjQm3BdZzmf1oAowPyc1 wO0OjTo5YshZzWPFY12uj+zrbEqlp0w6isabtn+zUtaTeo/gKoVXo7qgkv2Xma5iLlS0lYJkN RfMz0INIxnDMO5WWaQIjoCIWoTRaOliAx7SurqlXPVtO/gF9mgoC6Z3MrLI7wjVPGrLwUuUqo Y0MPyPjeOCl7BKBl7c+9gWLYN24R3PDEv7Msb9ho/Ub+3WBqt/IhHDQJFefNO9O7TFLQ= X-Spam-Status: No, score=-13.5 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, FREEMAIL_FROM, GIT_PATCH_0, RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H2, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gcc-patches-bounces@gcc.gnu.org Sender: "Gcc-patches" Committed as obvious. Sorry for the breakage. PR fortran/95053 - ICE in gfc_divide(): Bad basic type The fix for PR 93499 introduced a too strict check in gfc_divide that could trigger errors in the early parsing phase. Relax the check and defer to a later stage. gcc/fortran/ 2020-05-11 Harald Anlauf PR fortran/95053 * arith.c (gfc_divide): Do not error out if operand 2 is non-numeric. Defer checks to later stage. gcc/testsuite/ 2020-05-11 Harald Anlauf PR fortran/95053 * gfortran.dg/pr95053.f: New test. diff --git a/gcc/fortran/arith.c b/gcc/fortran/arith.c index 1cd0867a941..dd72f44d377 100644 --- a/gcc/fortran/arith.c +++ b/gcc/fortran/arith.c @@ -1828,7 +1828,8 @@ gfc_divide (gfc_expr *op1, gfc_expr *op2) rc = ARITH_DIV0; break; default: - gfc_internal_error ("gfc_divide(): Bad basic type"); + /* basic type is non-numeric, handle this elsewhere. */ + break; } if (rc == ARITH_DIV0) { diff --git a/gcc/testsuite/gfortran.dg/pr95053.f b/gcc/testsuite/gfortran.dg/pr95053.f new file mode 100644 index 00000000000..1d15c669467 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/pr95053.f @@ -0,0 +1,7 @@ +! { dg-do compile } +! PR fortran/95053 - ICE in gfc_divide(): Bad basic type +! + 123 FORMAT ('A'/'B') + 132 FORMAT (A/ + + ' B') + END