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.

Reply via email to