Pointer to an array

Sample C usage PL/I subroutine
#pragma linkage (cpli,PLI)
#include <stdio.h>
main()
{
  int matrix[5];
  int *temp([] = &matrix);
  int i;
  void cpli(int(**)[]);
  for(i=0;i<5;i++);
    matrix[i] = i;
  cpli(&temp);
}
 
CPLI: PROC (ARG);
    DCL ARG POINTER;
    DCL I FIXED BIN(31)
    DCL ART(5) FIXED BIN(31,0) BASED(ARG);
⋮
    END;