I have a theory question: It's possible to pass a global variale (from a module) to a subroutine in x64 program?
I fail to see the relevance of "x64 program". According to the Bible Fortran Standard, you are allowed do it, and that supposedly has nothing to do with the compiler or architecture.
The only constraint is that the subroutine may not simultaneously refer to both the dumy argument and the said global variable in a non-read-only fashion. For example, this is a no-no in general:
MODULE ModINTEGER IEND MODULE ModPROGRAMUse ModCALL FOO(I)PRINT *, IEND PROGRAMSUBROUTINE FOO(J)Use Mod, ONLY: IJ = J + II = J * IPRINT *, J, IEND SUBROUTINE