public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug fortran/33686]  New: FORALL loop gives wrong result
@ 2007-10-08  7:17 enok at lysator dot liu dot se
  2007-10-08  9:13 ` [Bug fortran/33686] " pinskia at gcc dot gnu dot org
                   ` (13 more replies)
  0 siblings, 14 replies; 15+ messages in thread
From: enok at lysator dot liu dot se @ 2007-10-08  7:17 UTC (permalink / raw)
  To: gcc-bugs

A simple program that is supposed to invert a permutation P gives wrong result
with gfortran 4.2.1. A quite recent trunk 4.3 gfortran also gave wrong result.
See also discussion in comp.lang.fortran subject "Most elegant syntax for
inverting a permutation?". The concensus seems to be that this forall construct
should work according to the standard.

PROGRAM TST
  IMPLICIT NONE

  INTEGER :: P(4),I
  P = (/2,4,1,3/)
  FORALL(I=1:4)
    P(P(I)) = I
  END FORALL
  PRINT *, P

END PROGRAM TST

enok@home:~/> gfortran421 -o tst tst.f90 -static && ./tst
           3           1           4           3
enok@home:~/> ifort -o tst tst.f90 && ./tst
tst.f90(5): (col. 3) remark: LOOP WAS VECTORIZED.
           3           1           4           2
enok@home:~/>


-- 
           Summary: FORALL loop gives wrong result
           Product: gcc
           Version: 4.2.1
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: fortran
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: enok at lysator dot liu dot se
 GCC build triplet: x86_64-unknown-linux-gnu
  GCC host triplet: x86_64-unknown-linux-gnu
GCC target triplet: x86_64-unknown-linux-gnu


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


^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2007-10-29 14:15 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-10-08  7:17 [Bug fortran/33686] New: FORALL loop gives wrong result enok at lysator dot liu dot se
2007-10-08  9:13 ` [Bug fortran/33686] " pinskia at gcc dot gnu dot org
2007-10-08  9:42 ` enok at lysator dot liu dot se
2007-10-08 11:28 ` burnus at gcc dot gnu dot org
2007-10-08 12:05 ` dominiq at lps dot ens dot fr
2007-10-08 12:16 ` burnus at gcc dot gnu dot org
2007-10-08 19:03 ` pault at gcc dot gnu dot org
2007-10-08 20:03 ` pault at gcc dot gnu dot org
2007-10-10  6:50 ` pault at gcc dot gnu dot org
2007-10-10  9:35 ` dominiq at lps dot ens dot fr
2007-10-12 13:26 ` pault at gcc dot gnu dot org
2007-10-12 13:47 ` dominiq at lps dot ens dot fr
2007-10-24 10:00 ` pault at gcc dot gnu dot org
2007-10-29 14:14 ` burnus at gcc dot gnu dot org
2007-10-29 14:15 ` burnus at gcc dot gnu dot org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).