Address of an array

Sample Fortran usage PL/I subroutine
POINTER*4 (P, I)
INTEGER*4 I(3)
INTEGER*4 J(3) / 1, 2, 3 /
P = LOC(J)
CALL F2PPAOA (P)
PRINT *,
1  'UPDATED VALUES IN FORTRAN:', I
END
F2PPAOA: PROC (X) OPTIONS(FORTRAN);
  DCL X       POINTER;
  DCL Y(3)    FIXED BIN(31)  BASED(X);
  PUT SKIP
      LIST('PL/I ARG VALUES:', Y);
  DO IX = 1  TO 3  BY 1;
      Y(IX) = Y(IX) - 1;
  END;
  RETURN;
END F2PPAOA;