https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61831
--- Comment #34 from paul.richard.thomas at gmail dot com <paul.richard.thomas at gmail dot com> --- Hi Dominique, Should one be getting false? It seems to me that the code looks right. within the do loop: new_prt_spec ([string_t's]) produces an array of string_t's whose char.data is null. It does nothing with the input array. This output string is fed to process configuration, which does nothing to it. This is surprising in itself :-) Finally, your patch comes into play. This should do nothing if the char.data's are null, which they should be. Mystified Paul On 21 July 2014 21:56, dominiq at lps dot ens.fr <gcc-bugzi...@gcc.gnu.org> wrote: > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61831 > > --- Comment #33 from Dominique d'Humieres <dominiq at lps dot ens.fr> --- > Dear Paul, > >> I cannot see yet, where it comes in nor when it was introduced. > > Unfortunately I has been introduced by me, see comment 5. The code is > > + if (expr->ts.type == BT_DERIVED && expr->rank > + && !gfc_is_finalizable (expr->ts.u.derived, NULL) > + && expr->ts.u.derived->attr.alloc_comp > + && expr->expr_type != EXPR_VARIABLE) > + { > + tree tmp; > + > + tmp = build_fold_indirect_ref_loc (input_location, se->expr); > + tmp = gfc_deallocate_alloc_comp (expr->ts.u.derived, tmp, expr->rank); > + > + /* The components shall be deallocated before > + their containing entity. */ > + gfc_prepend_expr_to_block (&se->post, tmp); > + } > > Question: what condition should be added to the 'if' to get a false for > 'expr->expr_type == EXPR_ARRAY' and an elemental function? > > -- > You are receiving this mail because: > You are on the CC list for the bug.