[comp.lang.pascal] Passing SYMBOLS to VMS Pascal?

renata@eos (Daniel Delgado) (06/21/89)

Hi,

     I was wondering if anybody out there knows how to pass symbols
to a VAX VMS Pascal Program?  I have looked at the VAX Pascal manuals
and have only seen reference to passing from Pascal programs, but not
in the other direction.  A code fragment would be _MOST_ appreciated.



                                    Thanks in advance,
                                    Daniel Delgado
 

dwayne@rover.bsd.uchicago.edu (06/21/89)

In article <4025@eos.UUCP>, renata@eos (Daniel Delgado) writes...

>     I was wondering if anybody out there knows how to pass symbols
>to a VAX VMS Pascal Program?  I have looked at the VAX Pascal manuals
>and have only seen reference to passing from Pascal programs, but not
>in the other direction.  A code fragment would be _MOST_ appreciated.
>                                    Daniel Delgado

Assuming you mean normal vms symbols, try:

PROGRAM TEST (INPUT,OUTPUT);
[EXTERNAL] FUNCTION LIB$SET_SYMBOL (SYMBOL: VARYING[L] OF CHAR;
                    VALUE_STRING: VARYING[M] OF CHAR):INTEGER; EXTERN;
[EXTERNAL] PROCEDURE LIB$STOP(VAL:INTEGER); EXTERN;
VAR RET_STATUS:	INTEGER;
BEGIN
    RET_STATUS:=LIB$SET_SYMBOL('TESTSYM','TESTVALUE');
    IF NOT ODD(RET_STATUS) THEN LIB$STOP(RET_STATUS);
END.

Dwayne Spradlin
dwayne@rover.uchicago.edu