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.