VMS Help
PASCAL, Attributes, Visibility
*Conan The Librarian (sorry for the slow response - running on an old VAX)
|
|
The visibility attributes indicate the ability of an object to
be shared by compilation units.
The LOCAL attribute indicates that an object is unavailable to
other independently compiled units. By default, all variables
and routines are local.
See the "Compaq Pascal Language Reference Manual" for the
complete description of using the LOCAL attribute.
The GLOBAL attribute provides a strong definition of a variable
or routine so that other independently compiled units can refer
to it.
Syntax:
[GLOBAL]
or,
[GLOBAL(idenifier)]
or,
[GLOBAL('string-literal')]
The 'identifier' is the name of the identifier passed to the
linker. It is passed in uppercase on OpenVMS systems. If you
omit the identifier, the name of the variable is used.
The 'string-literal' is a specified string literal that is
passed unmodified to the linker.
See the "Compaq Pascal Language Reference Manual" for the
complete description of using the GLOBAL attribute.
The EXTERNAL attribute indicates a variable or routine that is
assumed to be global in another independently compiled unit.
Syntax:
[EXTERNAL]
or,
[EXTERNAL(identifer)]
or,
[EXTERNAL('string-literal')]
The 'identifer' is the name of the identifier passed to the
linker. It is passed in uppercase on OpenVMS systems. If you
omit the identifier, the name of the variable is used.
The 'string-literal' passes a specified string-literal to the
linker unmodified.
The WEAK_EXTERNAL attribute specifies that a variable or routine
is not critical to the linking operation. To resolve a weak
reference, the linker searches only the named input modules.
You can specify an identifier with this attribute to indicate
the name by which the corresponding object is known to the
linker.
Syntax:
[WEAK_EXTERNAL]
or,
[WEAK_EXTERNAL(identifier)]
or,
[WEAK_EXTERNAL('string-literal')]
The 'identifier' is the name of the identifier passed to the
linker. If you omit the identifier, the name of the variable is
used.
The 'string-literal' is the name of the string literal that is
passed to the linker unmodified.
Compilation units cannot have the EXTERNAL or WEAK_EXTERNAL
attribute.
The WEAK_GLOBAL attribute specifies that an object is linked
only when it is specifically included in the linking operation.
To resolve a weak reference, the linker searches only the named
input modules. You can specify an identifier to indicate the
name by which the corresponding object is known to the linker.
Syntax:
[WEAK_GLOBAL]
or,
[WEAK_GLOBAL(identifier)]
or,
[WEAK_GLOBAL('string_literal')]
The 'identifier' is the name of the identifier passed to the
linker. If you omit the identifier, the name of the variable is
used.
The 'string-literal' passes a specified string literal to the
linker unmodified.
See the "Compaq Pascal Language Reference Manual" for the
complete description of using the WEAK_GLOBAL attribute.
[legal]
[privacy]
[GNU]
[policy]
[netiquette]
[sponsors]
[FAQ]
Polarhome, production since 1999.
Member of Polarhome portal.