Minor addition: program foo implicit none real(8) :: i integer, parameter :: q(*) = [(kind(i), integer :: i = 1, 3)] print *, q end program foo
This prints 8 8 8 although it should be all 4's. So we really need to create a local namespace or even block to shadow the host's variable. Crayftn and NAG accept this too, Intel has a problem report on this. Harald