PP_DEFINE __LIB PROCEDURE Check() CALL Inner() ENDPROCEDURE PROCEDURE Inner() DECLARE A : ARRAY[1:1] OF INTEGER OUTPUT A[2] ENDPROCEDURE PROCEDURE Contract(A : ARRAY[1:2] OF INTEGER) ENDPROCEDURE PROCEDURE Bounds() DECLARE L : INTEGER L <- 3 DECLARE A : ARRAY[1:L] OF INTEGER CALL Contract(A) ENDPROCEDURE PROCEDURE FileError() CLOSEFILE "unopened" ENDPROCEDURE CLASS Broken PROCEDURE NEW() DECLARE X : INTEGER X <- 1 DIV 0 ENDPROCEDURE ENDCLASS