In This Book

annotation margin

An area next to the Source File Area that contains line numbers, breakpoint symbols, and an arrow that indicates the current program counter location.

archive library

A library that contains one or more object ￿les and is created with the ar command. When linking an object ￿le with an archive library, ld searches the library for global de￿nitions that match up with external references in the object ￿le. If a match is found, ld copies the object ￿le containing the global de￿nition from the library into the executable ￿le. See shared

library.

basic block

A sequence of statements (or their corresponding instructions) that contains no branches. A branch is a change in the ￿ow of control, such as an if, for, or do statement. A branch begins a new basic block.

block

A program unit, such as a module, a main program, a subroutine, or a function. What constitutes a block depends on the language in which the program is written. A block de￿nes and encloses a scope. The debugger also de￿nes blocks called `declared (for user-declared symbols), `predefined (for data types for supported languages) and `image (for the program images).

block expression

A block name, a ￿le name, a class name, a template name, or a class object reference. For C++, a block expression can be any valid C++ expression that can be evaluated to one or more executable addresses or to a class type.

block quali￿ed name

A format used by the debugger to refer to variables that are not visible from the current environment. A block quali￿ed name explicitly iden ti￿es the block enclosing the object and the object's name; the format is block\object name.

Glossary-2