From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 26548 invoked by alias); 14 May 2014 10:17:29 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Received: (qmail 26480 invoked by uid 48); 14 May 2014 10:17:25 -0000 From: "quantheory at gmail dot com" To: gcc-bugs@gcc.gnu.org Subject: [Bug fortran/60928] gfortran issue with allocatable components and OpenMP Date: Wed, 14 May 2014 10:17:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: fortran X-Bugzilla-Version: 4.8.3 X-Bugzilla-Keywords: wrong-code X-Bugzilla-Severity: normal X-Bugzilla-Who: quantheory at gmail dot com X-Bugzilla-Status: NEW X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2014-05/txt/msg01275.txt.bz2 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60928 --- Comment #5 from Sean Santos --- Well, I thought I understood this, but maybe not. I was thinking that "subobject" in this context meant "component". A "list item" here is just any variable or common block listed in a clause, in this case the private clause. And "allocatable" would have to apply to the component, not the variable, because otherwise it would make no sense to say that the subobject has an allocation status. So in this interpretation, the third and fourth examples you list would be perfectly valid cases. The problem with that is that Fortran 2003 defines "subobject" in a way that can include array sections, and OpenMP 4.0 also allows "list item" to refer to an array section. So there's an alternative interpretation here, which is that all this "subobject" stuff is just a very poorly worded way of referring to the fact that you can have a section of an array be thread private. (But then it is still kind of strange to talk about the "allocation status" of an array section.) Anyway, I retract what I said before. It's not clear to me what the standard is trying to say, and just as plausible that this is trying to refer to array sections as to derived type components.