------- Comment #7 from pault at gcc dot gnu dot org  2010-02-24 06:46 -------
(In reply to comment #6)
> Just to make sure it won't get forgotten: REOPEN.
> 
> (In reply to comment #4)
> > Paul, for the test case in comment 0 we still create a temporary:
> > 
> >   b(a)=1
> > 

Tobias,

Not if 'a' has the right KIND.  Try

SUBROUTINE S(a, b)
INTEGER(8), POINTER, DIMENSION(:) :: a
INTEGER, DIMENSION(:) :: b
b(a)=1
END SUBROUTINE S

See trans-array.c:5099 - that's where the temporary is generated, when a is
default kind.

This could be fixed but, right now, I am not sure how :-(

Paul


-- 


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

Reply via email to