FORTRAN Reference Manual
Program Compilation
FORTRAN Reference Manual—528615-001
9-22
Code Blocks and Data Blocks
sign (+) if it is in the user data segment or by an ampersand (&) if it is in the
extended data segment.
•
An executable program can have any number of COMMON data blocks shared by
the program units that declare them in one or more source program COMMON
statements. Each block name is the name that appears between slashes in
COMMON statements (FORTRAN uses BLANK^ for an unnamed common block),
preceded by a period (.) if it is in the user data segment or by a dollar sign ($) if it is
in the extended data segment.
•
The compiler also creates SPECIAL data blocks. These require special handling
by the Binder, such as allocating them to specific addresses or having their
contents merged from same-named blocks in multiple object files. Every SPECIAL
data block has a pound sign (#) in its name. FORTRAN creates some data blocks
only in the OLD environment, others only in the COMMON environment, and still
others in either environment. The SPECIAL data blocks are shown in Table 9-5.
Table 9-5. FORTRAN Data Blocks (page 1 of 2)
Block Name Environment Contents
COMMON#POINTERS Both The indirect addressing pointer word for
data items in user data segment common
blocks.
$EXTENDED#STACK Both The indirect addressing pointer word for
data items in extended segment common
blocks.
EXTENDED#STACK#FRAME
and
EXTENDED#STACK#POINTERS
Both Used for addressing the extended stack
area.
#FLUT OLD The FORTRAN Logical Unit Table. It
contains the address of each File Control
Block in the PUCB, indexed by
FORTRAN I/O unit number.
#G0 OLD The first three words of the user data
segment. It contains information about
the #RUCB block.
#HIGHBUF OLD The area reserved for file buffers in the
upper half of the user data segment.
#LOWBUF OLD The area reserved for saved messages,
$RECEIVE queues, and file buffers in the
lower half of the user data segment.
#PUCB OLD The Program Unit Control Block. It
contains language-specific information,
and includes a File Control Block for
each FORTRAN I/O unit defined for the
program.










