Probably cipr
is an array, and somehow the compiler doesn't know that. In that case, the line is interpreted as being a statement function.
For example,
program dummy
dimension c(10)
c(i) = c(i) + d
end program
this will compile (besides warnings about unitialized variable usage), as c
is an array and the line updates an element in the array, similar to what c[i] += d
would do in C.
If c is not an array, then the line will be interpreted as a one-line function, similar to a macro. So, e.g.:
program dummy
c(i) = 2*i
...
myvar = c(2)
end program
here c is a function that returns twice the argument, so myvar
would be 4.
So, in your case, I would guess from the usage that cipr
is intended to be an array and there is something wrong with declaration of cipr
or with some include files that declare the dimension of cipr
. Because the compiler then interprets it as a statement function, it fails.
Can you give the entire file where this line occurs?