TAL Reference Manual

Compiler Directives
TAL Reference Manual526371-001
16-91
Examples of SYMBOLS Directive
structure definition that was not saved, the compilation terminates with an error
message from SYMSERV.
Deleting Symbols
After debugging the program, you can use Binder to:
Create a new object file without symbols. The old object file remains intact, but you
drastically reduce what you can do with the Inspect product.
ADD * FROM oldobj
SET SYMBOLS OFF
BUILD newobj
Delete both symbol and Binder tables from the old object file and omit them from
the new object file. Before you do so, make sure you no longer need to examine or
modify the file. Once you strip these tables, you can no longer use the Inspect
product nor bind in new procedures into the object code.
STRIP oldobj
Examples of SYMBOLS Directive
1. This example requests the Inspect product and saves symbols for the entire
compilation unit:
!This is MYSOURCE file
?INSPECT, SYMBOLS
!Declare global data here
!Declare procedures and so forth
2. This example requests the Inspect product and saves symbols for a procedure and
a global data block. This use is not the common practice; usually you specify
SYMBOLS once at the beginning of the program:
!This is OURSOURCE file
?INSPECT
?SYMBOLS !Save symbols for implicit block
INT a;
STRING b;
?NOSYMBOLS !Stop saving symbols
BLOCK global_data;
FIXED c;
STRING d;
END BLOCK;
?SYMBOLS !Save symbols for procedure
PROC uxb;
BEGIN
!Lots of code