Skip to main content

Problem:

Is there a compiler directive that will display information regarding data-items?

Resolution:

The DATAMAP directive causes the Compiler to output information on the data items; both those that you have specified, and those automatically generated by the Compiler, such as the data area for the RETURN-CODE special register.

The information is output at the end of the list file. The information on the data items is output in the same order as they are encountered in your program by the Compiler. The first line is the program-id of the program to which the data items belong. This enables you to see the relevant data items for nested programs, or for the various areas of OO class programs (classes, object methods, and so on). For each data item, the following information is listed:

The line number

The data name

The address of the data item, that is the offset from the beginning of the program's data area

The size of the data item in bytes

The attributes of the data item. This consists of a string in the following format:

ss xxxx cccccccccc R E G

where the variables are:

ss Location of data item. This can be: IO Input-Output Section

FD File Description  

WS Working-Storage Section

TL Thread-Local-Storage Section

OS Object-Storage Section

LC Local-Storage Section

LS Linkage Section

RD Report Section

SS Screen Section

PG Variables, such as special registers, generated by the Compiler check phase

PD Temporary variables, such as those used in search statements, generated by the Procedure Division

xxxx Can be: G Group item

GO Group occurs item

GSO Group sub occurs item

E Elementary item

EO Elementary occurs item

ESO Elementary sub occurs item

ESOO Elementary sub occurs occurs item

cccccccccc A description of the data type; for example, Display, Comp, Comp-3, Numeric E (for Numeric Edited), AlphNum J (for AlphaNumeric Justified), and so on

R The item is a Redefinition of some other data item

E The data item is an External data item

G The data item is a Global data item

Old KB# 4084