(root)/
gcc-13.2.0/
gcc/
testsuite/
gfortran.fortran-torture/
execute/
cmplx.f90
! Test complex munbers
program testcmplx
   implicit none
   complex(kind=4) c, d
   complex(kind=8) z
   real(kind=4) x, y
   real(kind=8) q

   ! cmplx intrinsic
   x = 3
   y = 4
   c = cmplx(x,y)
   if (c .ne. (3.0, 4.0)) STOP 1
   x = 4
   y = 3
   z = cmplx(x, y, 8)
   if (z .ne. (4.0, 3.0)) STOP 2
   z = c
   if (z .ne. (3.0, 4.0)) STOP 3

   ! dcmplx intrinsic
   x = 3
   y = 4
   z = dcmplx (x, y)
   if (z .ne. (3.0, 4.0)) STOP 4

   ! conjucates and aimag
   c = (1.0, 2.0)
   c = conjg (c)
   x = aimag (c)
   if (abs (c - (1.0, -2.0)) .gt. 0.001) STOP 5
   if (x .ne. -2.0) STOP 6
   z = (2.0, 1.0)
   z = conjg (z)
   q = aimag (z)
   if (z .ne. (2.0, -1.0)) STOP 7
   if (q .ne. -1.0) STOP 8

   ! addition, subtraction and multiplication
   c = (1, 3)
   d = (5, 2)
   if (c + d .ne. ( 6, 5)) STOP 9
   if (c - d .ne. (-4, 1)) STOP 10
   if (c * d .ne. (-1, 17)) STOP 11

   ! test for constant folding
   if ((35.,-10.)**0.NE.(1.,0.)) STOP 12
end program