Allows you to call the C RTL from other languages or to use the C RTL when your main function is not in C. It initializes the run-time environment and establishes both an exit and condition handler. VAXC$CRTL_INIT is a synonym for DECC$CRTL_ INIT. Either name invokes the same routine. Format #include <signal.h> void DECC$CRTL_INIT(void);
1 – Description
The following example shows a Pascal program that calls the C RTL using the DECC$CRTL_INIT function: $ PASCAL EXAMPLE1 $ LINK EXAMPLE1 $ TY EXAMPLE1.PAS PROGRAM TESTC(input, output); PROCEDURE DECC$CRTL_INIT; extern; BEGIN DECC$CRTL_INIT; END A shareable image need only call this function if it contains an VSI C function for signal handling, environment variables, I/O, exit handling, a default file protection mask, or if it is a child process that should inherit context. Although many of the initialization activities are performed only once, DECC$CRTL_INIT can safely be called multiple times. At least one frame in the current call stack must have that handler established for OpenVMS exceptions to get mapped to UNIX signals.