From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 30153 invoked by alias); 15 Sep 2019 18:19:56 -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 30138 invoked by uid 89); 15 Sep 2019 18:19:55 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-1.8 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,SPF_PASS autolearn=ham version=3.3.1 spammy=tougher, sometime, HX-HELO:sk:mail-lj, sk:sourcer X-HELO: mail-lj1-f193.google.com Received: from mail-lj1-f193.google.com (HELO mail-lj1-f193.google.com) (209.85.208.193) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Sun, 15 Sep 2019 18:19:54 +0000 Received: by mail-lj1-f193.google.com with SMTP id f1so152494ljc.2; Sun, 15 Sep 2019 11:19:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=hKGGS13tY5qJFjz4pIRM3tSEUcqLT2OEK+Z+kU4pexQ=; b=tw/oY+uXf5waVkaJt+5e77yoj44ygTT1FBLPWkA7vbLts5c5WQ4o4mSwTqzm7T4bSI YsgZZmgKxKlYyQEn/NhLlgaqlmt7Gzv8N9s6+Q/ownmdGEFYcXhFHbldUvUqKW4NdK1C FD1uLnuKmWpBphHQMMMoVLHphBZp8uTWcbUoBbxuixGPv/cOSujYBP6IO/K3VTYH5J1t OK6hg/DB6NNO1udxfQz+H4E37vAkXWbbfkD1bUJpozbAUKhrX2VgM0nuITMuuOEr5mG5 BTXWsx5H6478wRl7CMWpKi8c/ha82nmo6iingyOsFG6raoRRBYkWKoohUmsZLiHMzAfY NHbw== MIME-Version: 1.0 References: In-Reply-To: From: Paul Richard Thomas Date: Sun, 15 Sep 2019 18:19:00 -0000 Message-ID: Subject: Re: [Patch, Fortran] CO_BROADCAST for derived types with allocatable components To: Alessandro Fanfarillo Cc: gfortran , gcc-patches , Damian Rouson Content-Type: text/plain; charset="UTF-8" X-SW-Source: 2019-09/txt/msg00914.txt.bz2 Hi Sandro, This patch looks fine to me. I have a question about the comment: "This code is obviously added because the finalizer is not trusted to free all memory." 'obviously'? Not to me :-( Maybe you can expand on this? As to the stat and errmsg: Leave them for the time being. However, an attempt will have to be made to implement F2018 "16.6 Collective subroutines". I don't know enough about the coarrays implementation to be able to help you about detecting these conditions. Maybe Tobias Burnus can help? OK to commit. Paul PS Sometime before very long, something will have to be done about the exponential code bloat that structure_alloc_comps. The more users that there are for it the tougher it is going to get! On Thu, 22 Aug 2019 at 18:41, Alessandro Fanfarillo wrote: > > Dear all, > please find in attachment a preliminary patch that adds support to > co_broadcast for allocatable components of derived types. > The patch is currently ignoring the stat and errmsg arguments, mostly > because I am not sure how to handle them properly. I have created a > new data structure called used to pass those argument to the > preexisting structure_alloc_comps. > Suggestions on how to handle them are more than welcome :-) > > The patch builds correctly on x86_64 and it has been tested with > OpenCoarrays and the following test cases: > > https://github.com/sourceryinstitute/OpenCoarrays/blob/co_broadcast-derived-type/src/tests/unit/collectives/co_broadcast_allocatable_components.f90 > > https://github.com/sourceryinstitute/OpenCoarrays/blob/co_broadcast-derived-type/src/tests/unit/collectives/co_broadcast_allocatable_components_array.f90 > > Regards, -- "If you can't explain it simply, you don't understand it well enough" - Albert Einstein