[Bug fortran/92123] [F2018/array-descriptor] Scalar allocatable/pointer with array descriptor (via bind(C)): ICE with select rank or error scalar variable with POINTER or ALLOCATABLE in procedure wit

2019-11-03 Thread pault at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92123 Paul Thomas changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed|

[Bug fortran/92123] [F2018/array-descriptor] Scalar allocatable/pointer with array descriptor (via bind(C)): ICE with select rank or error scalar variable with POINTER or ALLOCATABLE in procedure wit

2019-11-07 Thread burnus at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92123 --- Comment #2 from Tobias Burnus --- Submitted and approved patch: https://gcc.gnu.org/ml/gcc-patches/2019-11/msg00072.html – still to be committed by the author.

[Bug fortran/92123] [F2018/array-descriptor] Scalar allocatable/pointer with array descriptor (via bind(C)): ICE with select rank or error scalar variable with POINTER or ALLOCATABLE in procedure wit

2019-11-10 Thread pault at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92123 --- Comment #3 from Paul Thomas --- Author: pault Date: Sun Nov 10 18:33:00 2019 New Revision: 278025 URL: https://gcc.gnu.org/viewcvs?rev=278025&root=gcc&view=rev Log: 2019-11-10 Paul Thomas PR fortran/92123 *decl.c (gfc_ver

[Bug fortran/92123] [F2018/array-descriptor] Scalar allocatable/pointer with array descriptor (via bind(C)): ICE with select rank or error scalar variable with POINTER or ALLOCATABLE in procedure wit

2019-11-11 Thread tschwinge at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92123 Thomas Schwinge changed: What|Removed |Added CC||tschwinge at gcc dot gnu.org --- Comme

[Bug fortran/92123] [F2018/array-descriptor] Scalar allocatable/pointer with array descriptor (via bind(C)): ICE with select rank or error scalar variable with POINTER or ALLOCATABLE in procedure wit

2019-11-12 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92123 Jakub Jelinek changed: What|Removed |Added CC||jakub at gcc dot gnu.org --- Comment #5

[Bug fortran/92123] [F2018/array-descriptor] Scalar allocatable/pointer with array descriptor (via bind(C)): ICE with select rank or error scalar variable with POINTER or ALLOCATABLE in procedure wit

2019-11-12 Thread burnus at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92123 --- Comment #6 from Tobias Burnus --- Some side remarks: (In reply to Jakub Jelinek from comment #5) > The type used on the C side is: This type is described in the Fortran standard; for Fortran 2018, it is described in "18.5.3 The CFI_cdesc_t

[Bug fortran/92123] [F2018/array-descriptor] Scalar allocatable/pointer with array descriptor (via bind(C)): ICE with select rank or error scalar variable with POINTER or ALLOCATABLE in procedure wit

2019-11-12 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92123 --- Comment #7 from Jakub Jelinek --- I don't see any conversion function to be called: fsub (struct array15_integer(kind=4) & restrict dat) { { integer(kind=4) * __tmp_INTEGER_4_rank_0; { signed char D.3928; integer(kind=8

[Bug fortran/92123] [F2018/array-descriptor] Scalar allocatable/pointer with array descriptor (via bind(C)): ICE with select rank or error scalar variable with POINTER or ALLOCATABLE in procedure wit

2019-11-12 Thread paul.richard.thomas at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92123 --- Comment #8 from paul.richard.thomas at gmail dot com --- Hi Jakub, Thanks for spotting that. For whatever reason, * trans-decl.c (gfc_get_symbol_decl): Assumed shape and assumed rank dummies of bind C procs require deferred initialization.

[Bug fortran/92123] [F2018/array-descriptor] Scalar allocatable/pointer with array descriptor (via bind(C)): ICE with select rank or error scalar variable with POINTER or ALLOCATABLE in procedure wit

2019-11-14 Thread pault at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92123 --- Comment #9 from Paul Thomas --- Created attachment 47258 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=47258&action=edit Patch to fix problem with ISO_Fortran_binding_15.* Hi Jakub and Tobias, Restoring the call to trans-decl.c(conve

[Bug fortran/92123] [F2018/array-descriptor] Scalar allocatable/pointer with array descriptor (via bind(C)): ICE with select rank or error scalar variable with POINTER or ALLOCATABLE in procedure wit

2019-11-14 Thread pault at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92123 --- Comment #10 from Paul Thomas --- Created attachment 47261 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=47261&action=edit A better fix Hi Jakub and Tobias, It turns out that the TREE_STATIC is only required for the gfc descriptor and

[Bug fortran/92123] [F2018/array-descriptor] Scalar allocatable/pointer with array descriptor (via bind(C)): ICE with select rank or error scalar variable with POINTER or ALLOCATABLE in procedure wit

2019-11-14 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92123 --- Comment #11 from Jakub Jelinek --- The TREE_STATIC looks wrong to me, it will misbehave if the function is called recursively, or if the function is called several times concurrently (say in OpenMP). If the reason for TREE_STATIC is that the

[Bug fortran/92123] [F2018/array-descriptor] Scalar allocatable/pointer with array descriptor (via bind(C)): ICE with select rank or error scalar variable with POINTER or ALLOCATABLE in procedure wit

2019-11-14 Thread burnus at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92123 --- Comment #12 from Tobias Burnus --- (all related to gcc/testsuite/gfortran.dg/ISO_Fortran_binding_15.f90) I tried - with Paul's attached patch (attachment 47261) DECL_CONTEXT (gfc_desc) = current_function_decl; instead of TREE_STATIC - but

[Bug fortran/92123] [F2018/array-descriptor] Scalar allocatable/pointer with array descriptor (via bind(C)): ICE with select rank or error scalar variable with POINTER or ALLOCATABLE in procedure wit

2019-11-25 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92123 Jakub Jelinek changed: What|Removed |Added CC||rguenth at gcc dot gnu.org --- Comment #

[Bug fortran/92123] [F2018/array-descriptor] Scalar allocatable/pointer with array descriptor (via bind(C)): ICE with select rank or error scalar variable with POINTER or ALLOCATABLE in procedure wit

2019-11-25 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92123 --- Comment #14 from Richard Biener --- Well, lying means that for non-escaped desctiptors A and B doing A.data = malloc(); gfc_desc_to_cfi_desc (&B, &A) B.data and A.data are not considered aliasing. So I'd recommend to not lie here. Yes

[Bug fortran/92123] [F2018/array-descriptor] Scalar allocatable/pointer with array descriptor (via bind(C)): ICE with select rank or error scalar variable with POINTER or ALLOCATABLE in procedure wit

2019-11-25 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92123 --- Comment #15 from Jakub Jelinek --- I think other fn spec attributes in trans-decl.c should be checked. E.g. for internal_pack, I see ".r", when the function sometimes returns a pointer to a field pointed by the first argument. The address of

[Bug fortran/92123] [F2018/array-descriptor] Scalar allocatable/pointer with array descriptor (via bind(C)): ICE with select rank or error scalar variable with POINTER or ALLOCATABLE in procedure wit

2019-11-26 Thread tkoenig at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92123 Thomas Koenig changed: What|Removed |Added CC||tkoenig at gcc dot gnu.org --- Comment #

[Bug fortran/92123] [F2018/array-descriptor] Scalar allocatable/pointer with array descriptor (via bind(C)): ICE with select rank or error scalar variable with POINTER or ALLOCATABLE in procedure wit

2019-11-26 Thread burnus at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92123 --- Comment #17 from Tobias Burnus --- (In reply to Thomas Koenig from comment #16) > Is there a specification (or even description) for fn spec somewhere? > I can't say I understand exactly what it does. Maybe gimple.c's gimple_call_arg_flags:

[Bug fortran/92123] [F2018/array-descriptor] Scalar allocatable/pointer with array descriptor (via bind(C)): ICE with select rank or error scalar variable with POINTER or ALLOCATABLE in procedure wit

2019-11-26 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92123 --- Comment #18 from Jakub Jelinek --- https://gcc.gnu.org/ml/gcc-patches/2010-04/msg00895.html contained documentation but in the end we went with an internal "fn spec" attribute rather than user visible fnspec: https://gcc.gnu.org/ml/gcc-patche

[Bug fortran/92123] [F2018/array-descriptor] Scalar allocatable/pointer with array descriptor (via bind(C)): ICE with select rank or error scalar variable with POINTER or ALLOCATABLE in procedure wit

2019-11-26 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92123 --- Comment #19 from Richard Biener --- There is also tree-core.h: /* Call argument flags. */ /* Nonzero if the argument is not dereferenced recursively, thus only directly reachable memory is read or written. */ #define EAF_DIRECT

[Bug fortran/92123] [F2018/array-descriptor] Scalar allocatable/pointer with array descriptor (via bind(C)): ICE with select rank or error scalar variable with POINTER or ALLOCATABLE in procedure wit

2019-11-27 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92123 --- Comment #20 from Jakub Jelinek --- Created attachment 47377 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=47377&action=edit gcc10-fnspec-test.patch Just for archival purposes, here is a short gcc plugin that allows testing "fn spec" a

[Bug fortran/92123] [F2018/array-descriptor] Scalar allocatable/pointer with array descriptor (via bind(C)): ICE with select rank or error scalar variable with POINTER or ALLOCATABLE in procedure wit

2019-11-27 Thread paul.richard.thomas at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92123 --- Comment #21 from paul.richard.thomas at gmail dot com --- Hi All, I took one of the other fn_spec's as a template - it might well have been internal_pack. Thanks for looking at this. Cheers Paul On Mon, 25 Nov 2019 at 13:04, jakub at gcc

[Bug fortran/92123] [F2018/array-descriptor] Scalar allocatable/pointer with array descriptor (via bind(C)): ICE with select rank or error scalar variable with POINTER or ALLOCATABLE in procedure wit

2019-11-28 Thread rguenther at suse dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92123 --- Comment #22 from rguenther at suse dot de --- On Wed, 27 Nov 2019, jakub at gcc dot gnu.org wrote: > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92123 > > --- Comment #20 from Jakub Jelinek --- > Created attachment 47377 > --> https://g

[Bug fortran/92123] [F2018/array-descriptor] Scalar allocatable/pointer with array descriptor (via bind(C)): ICE with select rank or error scalar variable with POINTER or ALLOCATABLE in procedure wit

2019-11-28 Thread burnus at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92123 --- Comment #23 from Tobias Burnus --- I have the feeling that some other use also disagrees between ME and FE/Fortran semantics assumptions. I just run into PR 92703: if one comments the unrelated 'foo', with -O0 one gets the expected 'stop 2'

[Bug fortran/92123] [F2018/array-descriptor] Scalar allocatable/pointer with array descriptor (via bind(C)): ICE with select rank or error scalar variable with POINTER or ALLOCATABLE in procedure wit

2019-11-28 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92123 --- Comment #24 from Richard Biener --- (In reply to Tobias Burnus from comment #23) > I have the feeling that some other use also disagrees between ME and > FE/Fortran semantics assumptions. > > I just run into PR 92703: if one comments the unr

[Bug fortran/92123] [F2018/array-descriptor] Scalar allocatable/pointer with array descriptor (via bind(C)): ICE with select rank or error scalar variable with POINTER or ALLOCATABLE in procedure wit

2020-01-30 Thread cvs-commit at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92123 --- Comment #25 from CVS Commits --- The master branch has been updated by Jakub Jelinek : https://gcc.gnu.org/g:2595f25cdaf4f16d04a1078a487b2ecc126cae29 commit r10-6344-g2595f25cdaf4f16d04a1078a487b2ecc126cae29 Author: Jakub Jelinek Date: T

[Bug fortran/92123] [F2018/array-descriptor] Scalar allocatable/pointer with array descriptor (via bind(C)): ICE with select rank or error scalar variable with POINTER or ALLOCATABLE in procedure wit

2020-01-31 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92123 Jakub Jelinek changed: What|Removed |Added Status|NEW |RESOLVED Resolution|---