--- Comment #6 from dfranke at gcc dot gnu dot org 2008-01-04 10:10 ---
*** Bug 34664 has been marked as a duplicate of this bug. ***
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25095
--- Comment #3 from dfranke at gcc dot gnu dot org 2007-05-21 20:07 ---
Confirmed by majority vote.
$> ifort -warn all pr25095.f90
fortcom: Error: pr25095.f90, line 2: This expression cannot be evaluated.
[MODULO]
DATA (i(MODULO(j,5)),j=1,4) /4*0/
^
fortcom: Info: pr25095.f90,
--- Comment #4 from tobi at gcc dot gnu dot org 2007-10-07 19:43 ---
E.g. the following is legal:
INTEGER :: I(350)
INTEGER, PARAMETER :: K(500) = (/ i, i=1,500 /)
REAL :: X
DATA I(4+K(PRECISION(X))) / 1 /
whereas
DATA I(PRECISION(X)) / 1 /
isn't.
--
tobi at gcc dot gn
--- Comment #5 from tobi at gcc dot gnu dot org 2007-10-07 19:49 ---
(In reply to comment #4)
> E.g. the following is legal:
iff PRECISION(X) <= 350 :-)
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25095
--- Comment #1 from fxcoudert at gcc dot gnu dot org 2006-06-04 09:52
---
By F2003: "C561 (R528) In an array-element or a scalar-structure-component that
is a data-i-do-object , any subscript shall be an expression whose primaries
are either constants, subobjects of constants, or
DO va
--- Comment #2 from jv244 at cam dot ac dot uk 2006-06-04 10:42 ---
(In reply to comment #1)
> .. and
> each operation shall be intrinsic
> Now, MODULO is found under 13.5 (Standard generic intrinsic procedures)
But MODULO is not an intrinsic operation (these are defined in 7.1.2)
-
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=25095
--- Comment #7 from Jürgen Reuter ---
Indeed, ifort and PGI fortran flag this as an error in the implied DO
expression. Nagfor flags it just as an extension.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=25095
anlauf at gcc dot gnu.org changed:
What|Removed |Added
Status|NEW |WAITING
CC|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=25095
anlauf at gcc dot gnu.org changed:
What|Removed |Added
Priority|P3 |P5
Severity|normal