It turns out that the following is illegal in fortran 77:
c
program main
real a
parameter(a=(10.)**(.5))
c
...
The reason is because the parameter statement takes a constant arithmetic expression and exponentiation is illegal except when the exponent is an integer. (Section 6.1.3 and 8.6 http://www.fortran.com/F77_std/rjcnf0001-sh-8.html#sh-8.6 ). Does anybody know if this restriction has be relaxed in newer revisions of the standard? Why would this be illegal in the first place?
Yes, this has been relaxed. In Fortran 2003 you can even use intrinsic functions like
sinorexp.