MODULE testalloa ; FROM libc IMPORT printf, exit ; FROM Builtins IMPORT alloca ; FROM SYSTEM IMPORT ADR, ADDRESS ; (* assert - *) PROCEDURE assert (value: BOOLEAN; message: ARRAY OF CHAR) ; BEGIN IF NOT value THEN printf ("test failed: %s\n", ADR (message)) ; code := 1 END END assert ; (* test - *) PROCEDURE test ; VAR ptr: ADDRESS ; BEGIN ptr := alloca (10) ; assert (ptr # NIL, "alloca (10) # NIL") END test ; VAR code: INTEGER ; BEGIN code := 0 ; test ; IF code = 0 THEN printf ("all tests pass\n") ELSE printf ("some tests failed\n") END ; exit (code) END testalloa.