home *** CD-ROM | disk | FTP | other *** search
-
- This directory contains "p2c", a Pascal to C translator.
-
- "p2c" Copyright 1989, 1990, 1991 Free Software Foundation, Inc.
-
- Written and maintained by: Dave Gillespie
- 256-80 Caltech
- Pasadena CA 91125
- daveg@csvax.cs.caltech.edu, cit-vax!daveg
-
-
- This program is distributed under the terms of the GNU License Agreement.
- See the file src/COPYING for details.
-
- The GNU License Agreement restrictions do _not_ apply to code generated
- by p2c, nor to the p2c run-time files "p2clib.c" and "p2c.h".
-
-
-
- The file "trans.c" includes an overview of the source files of p2c.
- All p2c source files include the header "trans.h".
-
- The file "dir.c" is intended to be modified by the user to install
- code for custom translations of certain procedures. To add your own
- custom code to p2c, modify CUSTSRCS and CUSTDEFS in the Makefile,
- then recompile dir.c.
-
- The file "system.imp" (copied to %H/system.imp) contains declarations
- for "predefined" functions like "sqrt". These generally have custom
- translation code in funcs.c. Functions with irregular syntaxes have
- their symbol table entries built directly in funcs.c; they do not
- appear here. The default sys.p2crc causes p2c to read system.imp at
- the beginning of every job.
-
- The file "system.m2" contains declarations for predefined Modula-2
- functions. It should be substituted for "system.imp" when translating
- Modula-2 programs.
-
- The file "turbo.imp" contains declarations for all the Turbo Pascal
- standard units like dos and crt. (These are very incomplete at
- present.) The default sys.p2crc causes p2c to read turbo.imp as
- soon as any Turbo standard unit is used.
-
- The file "string.pas" implements the Oregon Software dynamic strings
- package. These are translated pretty completely into native C strings
- using only the FuncMacro mechanism of p2c---no custom C code was
- written to support these functions.
-
- The file "NOTES" contains the author's current bugs-and-plans list.
- The file "HISTORY" contains the revision history of the program.
-
- The "makeproto" program is an independent utility for scanning a large
- C program with old-style declarations and building function prototypes
- for all its functions. The "trans.h" file #includes the prototype
- files for all of p2c.
-
-
- NO WARRANTY:
- The program in this directory was developed for internal use at
- Caltech and thus absolutely no guarantee is made that the program
- will compile or run on other systems or that it will produce correct
- code. P2c is _not_ a compiler, it is a translator; it strives to
- produce correct code but reserves the right to sacrifice correctness
- in extreme cases for readability in the general case. P2c is designed
- to be extended (see funcs.c, hpmods.c and citmods.c for examples), but
- some of the main code is pretty messy since the translator has grown
- considerably beyond its original planned scale. Bug reports are
- welcome at daveg@csvax.caltech.edu, but I may not have time to respond
- to them immediately. Suggestions are welcome, too!
-
-