Node:import, Next:in, Previous:implementation, Up:Reference
program @@fragment foo; import bar1; bar3 (baz1 => glork1) in 'baz.pas'; bar2 only (baz2, baz3 => glork2); [...]
The reserved word import in the import part of a
program makes the program import an interface.
The in above tells GPC to look for the module in the
specified file; otherwise the file name is derived from the name of
the interface by adding first .p, then .pas - which
only works if the name of the exported interface coincides with the
file name.
The symbol => denotes import renaming: The entity which is
exported under the name baz1 by the interface bar3
will be known under the new name glork1 in the program.
The only qualifier means that only the listed identifiers
will be imported from the interface. Renaming works together with
only, too.
There must be at most one import part in a program.
The interfaces needn't be exported by Extended Pascal modules but may be UCSD/Borland Pascal units as well.
import and modules in general are an ISO 10206 Extended
Pascal extension.
GNU Pascal does not yet support qualified import.