t3x.org / t3x / t3x-manual / 4F.html
 
T3X - A Minimum Procedural Language
Version 8.1.5, Online Edition
Copyright(C) 1996-2004
Nils M Holm
 
Previous:
4.14 Flow Control
TOC | Index | Back Next:
4.16 Source Level Debugging

4.15 External Linkage

0xA04E   CALX   E   -   CALl eXternal procedure

Call a procedure contained in a different module. There must be an EXT record defining the external label E in the same module as the CALX record.

0xC051   CMAP   N   M   -   Call MAP

Call maps describe the arguments of interface procedures. The operands of CMAP are identical to the parameters of interface declarations (see T3X's IDECL statement for details), where N=type and M=call map.

0xD04D   EXT   E   N   C1 ... CN   -   EXTernal reference

Create an external reference to the symbol represented by the characters C1 through CN. E is a so-called external label. Such labels are used to reference external symbols in CALX instructions. See the section on loading Tcode for details. Note: When interpreting a Tcode program, this instruction must generate an error (unresolved external reference).

0xA054   ICALX   I   -   Interface CALl to eXternal procedure

Call the interface procedure described by the interface label I. There must be an IREF record defining I in the same module.

0xB04F   ILIB   N   C1 ... CN   -   Interface LIBrary

The characters C1 through CN name the relocatable object file or library containing the interface procedures described by the IPROC records in this module. This name can be used for linking the appropriate libraries when translating Tcode to native code or to dynamically load extensions into a Tcode machine.

0xD050   IPROC   N   M   C1 ... CM   -   Interface PROCedure declaration

Assign the interface procedure named by the characters C1 though CM to interface slot N. IPROC records are used to resolve ICALX instructions. See the section on resolving interface references for details.

0xD052   IREF   I   N   C1 ... CN   -   external Interface REFerence

Create an interface reference to the symbol represented by the characters C1 through CN. I is a so-called interface label. Such labels are used to reference interface procedures in ICALX instructions. See the section on resolving interface references for details. Note: When interpreting a Tcode program, this instruction must generate an error (unresolved interface reference).

0xD04C   PUB   L   N   C1 ... CN   -   PUBlic procedure declaration

Signal the Tcode linker that the procedure tagged by the label L is public and can be referenced externally using the name formed by the characters C1 through CN. Again, see the section on loading Tcode for details. When interpreting Tcode programs, this instruction type may be ignored safely.

Previous:
4.14 Flow Control
TOC | Index | Back Next:
4.16 Source Level Debugging