------- Comment #14 from dominiq at lps dot ens dot fr 2007-10-21 20:05 -------
Now I understand the strange result I reported in comment #5. What is happening
is that there is a second nonprintable character. If I redirect the output to a
file I see it (in general ^@).
>From what I understand of the code the substring x(1:len(trim(x))) is not
computed correctly by:
if (ref->u.ss.start->expr_type != EXPR_CONSTANT
|| ref->u.ss.end->expr_type != EXPR_CONSTANT)
break;
probably not computed at all, as noticed by Tobias Schlüter in the patch in
http://gcc.gnu.org/ml/fortran/2007-10/msg00212.html
However get_array_ctor_all_strlen (block, expr, len); leads to ICE's. I assume
that there is somewhere a piece of code able to compute the length of
x(1:len(trim(x))), but I did not find it.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33254