BEC.SHAPIN@USC-ECL.ARPA.UUCP (02/19/87)
How can I tell from within a command procedure whether or not a symbol has been defined in the proces global symbol table? -------
art@MITRE.ARPA.UUCP (02/20/87)
It appears that there is no easy way to solve your problem. Two possible solutions (SPELL THAT KLUDGES) are: 1) $ASSIGN TEMP.LIS SYS$OUTPUT $SHOW SYMBOL/LOCAL B $SHOW SYMBOL/GLOBAL B $DEASSIGN SYS$OUTPUT now read the temp.lis file. If globally defined will find an entry with "==". If locally defined the entry will have "=". 2) A more direct apporach is to use the ON WARNING to catch a failure. $ON WARNING THEN $GOTO UNDEFINED $C=A $ON WARNING THEN $GOTO GLOBAL $DELETE/SYMBOL/LOCAL A $WRITE SYS$OUTPUT "LOCAL SYMBOL" $A=C !RESTORE LOCAL SYMBOL $.... $GLOBAL: WRITE SYS$OUTPUT "GLOBAL SYMBOL" $.... $UNDEFINED: WRITE SYS$OUTPUT "UNDEFINDED SYMBOL" $... * *---Art * *Arthur T. McClinton Jr. ARPA: ART@MITRE.ARPA *Mitre Corporation MS-Z305 Phone: 703-883-6356 *1820 Dolley Madison Blvd Internal Mitre: ART@MWVMS or M10319@MWVM *McLean, Va. 22102 DECUS DCS: MCCLINTON * =-=- This note is in response to yours which follows -=-= How can I tell from within a command procedure whether or not a symbol has been defined in the proces global symbol table? -------