------- Comment #3 from burnus at gcc dot gnu dot org  2010-08-17 17:06 -------
(In reply to comment #2)
> Note that the -O option changes the original tree dump. 
> I thought it only impacted later dumps.

OK, with -O I also only get

(MEM[(c_char * {ref-all})&b] = MEM[(c_char * {ref-all})"abcd"];, (void *) &b;);
__builtin_memmove ((void *) &a, (void *) &b, 3);
__builtin_memmove ((void *) &c, (void *) &a, 3);

Though, it does not explain the failures which I saw:

FAIL: gfortran.dg/trim_optimize_1.f90  -O0  scan-tree-dump-times original
"memmove" 2
FAIL: gfortran.dg/trim_optimize_1.f90  -O0  scan-tree-dump-times original
"string_trim" 0

(Ditto for "-O1" etc., but the "-O" in dg-options overrides the -O... options
from dg.exp thus one runs the program 8 times with the same options.)

However, currently,
  make check-gfortran RUNTESTFLAGS='dg.exp=trim_optimize_1.f90
shows no failures. Thus, I close it as INVALID. Hopefully, it will continue to
work.

Mikael, thanks for the analysis!


-- 

burnus at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |INVALID


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45309

Reply via email to