PC man page on 4.4BSD

Man page or keyword search:  
man Server   1065 pages
apropos Keyword Search (all sections)
Output format
4.4BSD logo
[printable version]

PC(1)			  BSD General Commands Manual			 PC(1)

NAME
     pc — Pascal compiler

SYNOPSIS
     pc [option] [-i name ...] name ...

DESCRIPTION
     Pc is a Pascal compiler.  If given an argument file ending with .p, it
     will compile the file and load it into an executable file called, by
     default, a.out.

     A program may be separated into more than one .p file.  Pc will compile a
     number of argument .p files into object files (with the extension .o in
     place of .p).  Object files may then be loaded into an executable a.out
     file.  Exactly one object file must supply a program statement to suc‐
     cessfully 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 included header files, whose names
     must end with .h.	Header files may only be included at the outermost
     level, and thus declare only globally available objects.  To allow
     functions and procedures to be declared, an external directive has been
     added, whose use is similar to the forward directive but restricted to
     appear only in .h files.  Function and procedure bodies may not appear in
     .h files.	A binding phase of the compiler checks that declarations are
     used consistently, to enforce the type checking rules of Pascal.

     Object files created by other language processors may be loaded together
     with object files created by pc.  The functions and procedures they
     define must have been declared in .h files included by all the .p files
     which call those routines.	 Calling conventions are as in C, with var
     parameters passed by address.

     See the Berkeley Pascal User's Manual for details.

     The following options have the same meaning as in cc(1) and f77(1).  See
     ld(1) for load-time options.

     -c	     Suppress loading and produce `.o' file(s) from source file(s).

     -g	     Have the compiler produce additional symbol table information for
	     dbx(1).

     -w	     Suppress warning messages.

     -p	     Prepare object files for profiling, see prof(1).

     -O	     Invoke an object-code improver.

     -S	     Compile the named program, and leave the assembler-language out‐
	     put on the corresponding file suffixed `.s'.  (No `.o' is cre‐
	     ated.).

     -ooutput
	     Name the final output file output instead of a.out.

     The following options are peculiar to pc.

     -C	     Compile code to perform runtime checks, verify assert calls, and
	     initialize all variables to zero as in pi.

     -b	     Block buffer the file output.

     -i	     Produce a listing for the specified procedures, functions and
	     include files.

     -l	     Make a program listing during translation.

     -s	     Accept standard Pascal only; non-standard constructs cause warn‐
	     ing diagnostics.

     -t directory
	     Use the given directory for compiler temporary files.

     -z	     Allow execution profiling with pxp by generating statement coun‐
	     ters, and arranging for the creation of the profile data file
	     pmon.out when the resulting object is executed.

     Other arguments are taken to be loader option arguments, perhaps
     libraries of pc compatible routines.  Certain flags can also be con‐
     trolled in comments within the program as described in the Berkeley
     Pascal User's Manual.

FILES
     file.p		    Pascal source files.
     /usr/lib/pc0	    Compiler.
     /lib/f1		    Code generator.
     /usr/lib/pc2	    Runtime integrator (inline expander).
     /lib/c2		    Peephole optimizer.
     /usr/lib/pc3	    Separate compilation consistency checker.
     /usr/lib/pc2.*strings  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 intro(3).

SEE ALSO
     pi(1), pxp(1), pxref(1),

     Berkeley Pascal User's Manual.

HISTORY
     The pc appeared in 4.0BSD.

DIAGNOSTICS
     For a basic explanation do

	   pc

     See pi(1).	 for an explanation of the error message format.  Internal
     errors cause messages containing the word SNARK.

BUGS
     The keyword packed 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.

     The -z flag doesn't work for separately compiled files.

     Because the -s 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 strip(1) after they are compiled.

4th Berkeley Distribution	 June 6, 1993	     4th Berkeley Distribution
[top]

List of man pages available for 4.4BSD

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net