pgfortran compiler cannot find intrinsic routine

Hi,

I just ran into a bug with your pgfortran 12.5 compiler. I was adding a section to get a command line argument, but the compiler claims it cannot find the intrinsic to do so. I therefore took the example from your Fortran manual, and it compiles just fine. However, when I add a line to get the entire command line, then it cannot find the argument intrinsic.

Error:

ILM file: can’t find intrinsic get_command_argument
ILM file line 165: unknown symbol operand 507
PGF90-F-0000-Internal compiler error. Errors in ILM file 2 (ttt.f: 23)


The simple test code is below:


program test_get_command_argument
INTEGER :: i
CHARACTER(len=32) :: arg
i = 0

c works with the next 2 lines commented out

CALL get_command(arg)
WRITE (,) TRIM(arg)

c when those lines are present, the following error occurs:

c ILM file: can’t find intrinsic get_command_argument
c ILM file line 165: unknown symbol operand 507
c PGF90-F-0000-Internal compiler error. Errors in ILM file 2 (ttt.f: 23)

DO
CALL get_command_argument(i, arg)
IF (LEN_TRIM(arg) == 0) EXIT
WRITE (,) TRIM(arg)
i = i+1
END DO
END PROGRAM


I am running v12.5 on a Windows7-64bit system and just doing a command line compile. No options are needed to get the error.

-alan

Thanks for the test case. This is certainly a bug and will be fixed in the next release of the compiler.