From patchwork Tue Jun 30 21:43:19 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Harald Anlauf X-Patchwork-Id: 1320138 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=aHRBcmN1; 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 49xHsq6kPnz9sPF for ; Wed, 1 Jul 2020 07:43:27 +1000 (AEST) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 937ED3857024; Tue, 30 Jun 2020 21:43:25 +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 140F2385701E; Tue, 30 Jun 2020 21:43:21 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 140F2385701E 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=1593553400; bh=1ywJooK3cHLwd4jkr8VP6QybuevXfSXGEpIPbuaKE00=; h=X-UI-Sender-Class:From:To:Subject:Date; b=aHRBcmN1FYSG8UKQsN6k9chHTcGDzHslUd+lQLOv1huN3mf6Kcag2WIcNo5qOMwCb 54fTJjl0xtPmkmnUGO0ep5S1lL1KlUlemQUEyF27eb+YghMdOAQCzLk8Sa+98osCF4 2+WEArHO/3R3SldHGPivn0x6XBvYidGdMr73mks0= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from [93.207.81.146] ([93.207.81.146]) by web-mail.gmx.net (3c-app-gmx-bs42.server.lan [172.19.170.94]) (via HTTP); Tue, 30 Jun 2020 23:43:19 +0200 MIME-Version: 1.0 Message-ID: From: Harald Anlauf To: fortran , gcc-patches Subject: [PATCH, committed] [8/9/10/11 Regression] ICE with allocatable coarray, class and associate in resolve_assoc_var, at fortran/resolve.c:8750 Date: Tue, 30 Jun 2020 23:43:19 +0200 Importance: normal Sensitivity: Normal X-Priority: 3 X-Provags-ID: V03:K1:wr1OFafx2xXvLue8hC4KljxXdrUyxNTrScINxg5e8iKa1RU19R17N67flOFkvp9dmLB2k OdADAWc0xyYGGlvulE/NpnimJG3Rkdvch6JM/Z56DhETaBAp+bthX0P/qXo5DowTZ9jzl1BBiXDc HaKwhySJ9Txz+ab4cwmR8LIYqMaOWHjlMIz8TT+icqWOYq6AT2qeLtLadxJ7YqaUUcSaezLIsq/U GOv08piXokU+ktcPRxLDzXEzUf7i86C6LIAeqt3qzlRJcmijCHF1C8BlCGsADdCv96Ovhc+vbf8w Q8= X-UI-Out-Filterresults: notjunk:1;V03:K0:tESlXsXAab0=:VkOwFez7KgbUukSVh5yqKB CeZA8GUhK19h3QdtO3Y4SDo9xs/6f0c57hj7VzxHHAdZYR+qVjnrgBajAB6+rVF47HtscOfRp y6aflkHPklnPdFx5t7stC5hLyM6ad7I95ZCso9Qrl9vX40Tk7Oin7dVCB6ALe/8PKj5KHNyPe CI4FuhfwN6gHZrqkw8qkMKBBKNOtijHHQ9/lQTHVlc80e5xYPdRN42uKvemH4ucJpEvNqHflz PSkpnfElnBPImg/YiPg/+ULhd/GEYeSvqeBBxIcg9Hp6jaG5epcjOBgo+8XMqZjTCQ+boG3Df zwRrtrk5d+5aaj+5o3IwZ684aUtjvRVde7HdaGRakrzxOeN5BmLR5DaN0ZGxlf/k3vlemBpnZ ICJ1dRjHYtnVe2Qob6yjOrRuEQqrrnUA5I4kZEQXYtZO0CC1mBkqmK7Kw287RXUpMnUrmLWIY uXJuelpjAthff2CfMbxmiJFu6EXDZZKxn1Vny0xhaW0nbhlZQtB2WJXIXjN5CzVUvxKpjmzyA nLDpxhSuS4FqZN/7g35cf1KKrPx0h6pZY6loXJMy4bZqHashzSW1x5KmeKfRXb8J6O4qktPXV zMM/5EyKqBl3rOh2X4z3fEuI4O1ZzmXvtm6OXQ2k3fRtaxGeYSPN3U31flsQeUtCjfVj2V/xq vdZ86fc27V5FEUj4OUQpN16eI4T+rsmDNpE0s+9+3Jw2BLg== X-Spam-Status: No, score=-11.2 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, FREEMAIL_FROM, GIT_PATCH_0, KAM_NUMSUBJECT, 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 to master. Will backport as seems fit. Thanks, Harald PR fortran/88379 - ICE with allocatable coarray, class and associate Catch NULL pointer dereference for ASSOCIATE on allocatable coarray variable. gcc/fortran/ PR fortran/88379 * resolve.c (resolve_assoc_var): Avoid NULL pointer dereference. diff --git a/gcc/fortran/resolve.c b/gcc/fortran/resolve.c index f3e8ffc204c..4a2abd00f4a 100644 --- a/gcc/fortran/resolve.c +++ b/gcc/fortran/resolve.c @@ -9045,7 +9045,7 @@ resolve_assoc_var (gfc_symbol* sym, bool resolve_target) as = NULL; sym->ts = *ts; sym->ts.type = BT_CLASS; - attr = CLASS_DATA (sym)->attr; + attr = CLASS_DATA (sym) ? CLASS_DATA (sym)->attr : sym->attr; attr.class_ok = 0; attr.associate_var = 1; attr.dimension = attr.codimension = 0; diff --git a/gcc/testsuite/gfortran.dg/pr88379.f90 b/gcc/testsuite/gfortran.dg/pr88379.f90 new file mode 100644 index 00000000000..48a23af50c5 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/pr88379.f90 @@ -0,0 +1,11 @@ +! { dg-do compile } +! { dg-options "-fcoarray=single" } +! PR fortran/88379 - ICE with allocatable coarray, class and associate + +program p + type t + end type t + class(t), allocatable :: x[:] + associate (y => x) + end associate +end