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

Tobias Burnus <burnus at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |burnus at gcc dot gnu.org

--- Comment #12 from Tobias Burnus <burnus at gcc dot gnu.org> 2010-10-24 
19:56:08 UTC ---
(In reply to comment #4)
> Ok, I could reduce this quite a bit:
>   allocate(acsr%irp(4)) 
>   allocate(a,source=acsr)

If one looks at the dump, one sees a similar problem to PR 43018. For the first
allocate, one has:
              D.1530 = (void * restrict) __builtin_malloc (16);
which makes sense: 4 * integer(4) = 16 byte. However, for the second allocate
one sees:
              D.1532 = (void * restrict) __builtin_malloc (48);
which might be OK. However, the following is definitely invalid - and causes
here a segfault
      (void) __builtin_memcpy ((void *) a.$data, (void *) &acsr, 48);

Reply via email to