pgfortran doesn't accept "contiguous" with "i

The following code gives an error in version 14.1:

subroutine test_contiguous(x)
  integer, contiguous, intent(in) :: x(:)

end subroutine test_contiguous

The error is:

PGF90-S-0134-Illegal attribute - conflict with intent (test_contiguous.F90: 2)
0 inform, 0 warnings, 1 severes, 0 fatal for test_contiguous

Is this just a matter of the contiguous attribute not being fully implemented yet? I know it’s an F2008 feature.

Hi Sean,

“contiguous” is supported but it looks like we’re parsing this case incorrectly. I’ve add a problem report, TPR#20663, and sent if off to engineering.

Note that reversing the order of the attributes seems to be ok, ex. “integer, intent(in), contiguous :: x(:)”


TPR 20663 - Using “contiguous” with “intent(in)” get erroneous error
has been fixed in the 14.7 release.