It is completely unclear what value "n" has after:
integer :: n = 4
dimension :: n(3)
similarly invalid is:
integer :: n = 5
parameter (n = 7)
This patch adds checks to reject this.
Please try to come up with things which should be rejected; I think
there are none, but I still might have missed something. ;-)
Build and regtested on x86-64. OK for the trunk?
Tobias
PS: I did not check the standard, but ifort and NAG f95 reject it. As it
makes sense, I believe these compilers. If needed be, I can still try to
find it in the standard.