.TH PC 1 "18 January 1983"
If given an argument file ending with
into an executable file called, by default,
A program may be separated into more than one
will compile a number of argument
files into object files (with
Object files may then be loaded
Exactly one object file must supply a
statement to successfully create an executable a.out file.
The rest of the files must consist only of
declarations which logically nest within the program.
References to objects shared between separately compiled files
are allowed if the objects are declared in
header files, whose names must end with
Header files may only be included at the outermost level,
and thus declare only globally available objects.
directive has been added, whose use is similar to the
directive but restricted to appear only in
A binding phase of the compiler checks that declarations
are used consistently, to enforce the type checking rules of Pascal.
created by other language processors may be loaded together with
they define must have been declared
files included by all the
Calling conventions are as in C,
parameters passed by address.
See the Berkeley Pascal User's Manual for details.
The following options have the same meaning as in
Suppress loading and produce `.o' file(s) from source file(s).
Have the compiler produce additional symbol table information for
Suppress warning messages.
Prepare object files for profiling, see
Compile the named program, and leave the
assembler-language output on the corresponding file suffixed `.s'.
Name the final output file
The following options are peculiar to
Compile code to perform runtime checks,
and initialize all variables to zero as in
the specified procedures, functions and
Make a program listing during translation.
Accept standard Pascal only;
non-standard constructs cause warning diagnostics.
Allow execution profiling with
by generating statement counters, and arranging for the
creation of the profile data file
when the resulting object is executed.
to be loader option arguments,
Certain flags can also be controlled in comments within the program
.I "Berkeley Pascal User's Manual."
file.p pascal source files
/usr/lib/pc2 runtime integrator (inline expander)
/lib/c2 peephole optimizer
/usr/lib/pc3 separate compilation consistency checker
/usr/lib/pc2.0strings text of the error messages
/usr/lib/how_pc basic usage explanation
/usr/lib/libpc.a intrinsic functions and I/O library
/usr/lib/libm.a math library
/lib/libc.a standard library, see \fIintro\fP(3)
Berkeley Pascal User's Manual
For a basic explanation do
for an explanation of the error message format.
Internal errors cause messages containing the word SNARK.
Charles B. Haley, William N. Joy, and Ken Thompson
Retargetted to the second pass of the portable
compiler by Peter Kessler
Runtime library and inline optimizer by M. Kirk McKusick
Separate compilation consistency checking by Louise Madrid
is recognized but has no effect.
The binder is not as strict as described here,
with regard to the rules about external declarations only
in `.h' files and including `.h' files only at the outermost level.
It will be made to perform these checks in its next incarnation,
so users are warned not to be sloppy.
flag doesn't work for separately compiled files.
option is usurped by the compiler,
it is not possible to pass the strip option to the loader.
Thus programs which are to be stripped, must be run through