------- Comment #3 from pault at gcc dot gnu dot org  2008-03-29 07:27 -------
(In reply to comment #2)
Hah!  It's still worse than I thought.  Not only is a temporary not made but
the scalarizer is being blown out of the water by the likes of:

program main
  implicit none
  complex, dimension(2,2) :: a,b,c,d
  a(1,1) = (1.,1.)
  a(2,1) = (2.,2.)
  a(1,2) = (3.,3.)
  a(2,2) = (4.,4.)
  b = a
  c = (0.0,0.0)
  b = conjg(transpose(b + c))
  print *, "H(a) -        wrong:           ",b
  b = a
  b = transpose(conjg(b + c))
  print *, "H(a) -           OK:           ",b
  b = a
  d = conjg(transpose(b + c))
  b = d
  print *, "H(a) - really wrong:           ",b
 END program main

Paul


-- 


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

Reply via email to