This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

New test for g77 test suite


Jeff, could you add this as:

  egcs/gcc/testsuite/g77.f-torture/execute/980628-0.f

(Aside from typos, it'd be nice if the final name was as shown, so
it'd be coordinate with my old-style test suite.)

I'd ask Dave Love, but I don't know about his availability on weekends,
and I'm guessing this would take you a moment.  Three more tests
to come right away.  Maybe more later.

        tq vm, (burley)


* g77 0.5.23 and previous had bugs involving too little space
* allocated for EQUIVALENCE and COMMON areas needing initial
* padding to meet alignment requirements of the system.

      call subr
      end

      subroutine subr
      implicit none

      real r1(5), r2(5), r3(5)
      double precision d1, d2, d3
      integer i1, i2, i3
      equivalence (r1(2), d1)
      equivalence (r2(2), d2)
      equivalence (r3(2), d3)

      r1(1) = 1.
      d1 = 10.
      r1(4) = 1.
      r1(5) = 1.
      i1 = 1
      r2(1) = 2.
      d2 = 20.
      r2(4) = 2.
      r2(5) = 2.
      i2 = 2
      r3(1) = 3.
      d3 = 30.
      r3(4) = 3.
      r3(5) = 3.
      i3 = 3

      call x (r1, d1, i1, r2, d2, i2, r3, d3, i3)

      end

      subroutine x (r1, d1, i1, r2, d2, i2, r3, d3, i3)
      implicit none

      real r1(5), r2(5), r3(5)
      double precision d1, d2, d3
      integer i1, i2, i3

      if (r1(1) .ne. 1.) call abort
      if (d1 .ne. 10.) call abort
      if (r1(4) .ne. 1.) call abort
      if (r1(5) .ne. 1.) call abort
      if (i1 .ne. 1) call abort
      if (r2(1) .ne. 2.) call abort
      if (d2 .ne. 20.) call abort
      if (r2(4) .ne. 2.) call abort
      if (r2(5) .ne. 2.) call abort
      if (i2 .ne. 2) call abort
      if (r3(1) .ne. 3.) call abort
      if (d3 .ne. 30.) call abort
      if (r3(4) .ne. 3.) call abort
      if (r3(5) .ne. 3.) call abort
      if (i3 .ne. 3) call abort

      end


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]