Menu

Tree [r79] /
 History

HTTPS access


File Date Author Commit
 examples 2024-03-14 trevorbl [r79] minor improvements and fixes
 iso7185-tests 2024-03-14 trevorbl [r79] minor improvements and fixes
 m-tests 2024-03-14 trevorbl [r79] minor improvements and fixes
 p5x 2024-03-14 trevorbl [r79] minor improvements and fixes
 rej-tests 2024-03-14 trevorbl [r79] minor improvements and fixes
 std-tests 2024-03-14 trevorbl [r79] minor improvements and fixes
 README 2020-10-24 trevorbl [r74] bug fixes, speed improvements, better error han...
 assert.inc.pas 2020-11-29 trevorbl [r75] minor edits
 clib.inc.pas 2020-11-29 trevorbl [r75] minor edits
 cstr.inc.pas 2019-10-09 trevorbl [r62]
 gen 2024-03-14 trevorbl [r79] minor improvements and fixes
 guide.txt 2020-11-29 trevorbl [r75] minor edits
 memcheck.inc.pas 2020-10-24 trevorbl [r74] bug fixes, speed improvements, better error han...
 p5c-good.c 2024-03-14 trevorbl [r79] minor improvements and fixes
 p5c.h 2020-04-02 trevorbl [r69] minor updates
 p5c.ssh 2018-12-23 trevorbl [r42] pcom.pas:
 pan 2020-01-12 trevorbl [r67]
 pc 2024-03-14 trevorbl [r79] minor improvements and fixes
 pcom.pas 2024-03-14 trevorbl [r79] minor improvements and fixes
 ppr 2024-03-14 trevorbl [r79] minor improvements and fixes
 r 2024-03-14 trevorbl [r79] minor improvements and fixes
 rv 2020-10-24 trevorbl [r74] bug fixes, speed improvements, better error han...
 tclib.pas 2020-10-24 trevorbl [r74] bug fixes, speed improvements, better error han...
 tcov.sh 2020-01-12 trevorbl [r67]
 tfile.pas 2015-10-31 trevorbl [r5] brought version of p5c up to date
 tgen.pas 2019-01-28 trevorbl [r45]
 tp5c.out 2024-03-14 trevorbl [r79] minor improvements and fixes
 tp5c.pas 2024-03-14 trevorbl [r79] minor improvements and fixes
 tpan.pas 2018-12-23 trevorbl [r42] pcom.pas:
 tpan.rpt 2020-10-24 trevorbl [r74] bug fixes, speed improvements, better error han...

Read Me

This is the current development version of the p5c and p5x pascal compilers

This directory contains the sources, build scripts and test code for p5c

The p5x compiler is in the directory p5x

building and testing is quite automated, and assumes a gnu environment.

For windows users, cygwin (preferred) or mingw with msys should provide this.


to build and test p5c from scratch:
-----------------------------------

type ./gen from the command line

p5c pascal is itself written in pascal so you need a working iso standard
pascal compiler to start.
If you don't have gnu pascal, gen will create a pascal compiler from the
current pre-compiled version of p5c.

Once it has built p5c, it will run a long series of acceptance tests and
rejection tests.


contents of this directory
------------------------

gen		script to build and test p5c

pcom.pas	the p5c compiler

p5c-good.c	tested version of p5c, used to build pcom.pas if gnu pascal
                is not found.

tp5c.pas	main p5c test program

tp5c.out        reference output of tp5c

tfile.pas       test p5c external file bindings

guide.txt	user guide

p5c.h		header file for all p5c compiled programs

r               script to compile and run a pascal program in gnu environment

pc              script to compile a pascal program in gnu environment

clib.inc.pas    include this file to use many standard c functions
                see info inside this file

cstr.inc.pas    include this file to use standard c str functions
                see info inside this file

tclib.pas       test/demo program for clib.inc.pas & cstr.inc.pas

assert.inc.pas  add assertions to check your code, like in c

pan             a pascal static analyser
                checks pascal source code for a variety of programming errors,
                eg variable unused, not initialised, etc

tpan.pas        test program for pan

tpan.rpt        sample report of errors found in tpan.pas.

ppr             prints a colourised pascal program with bold formatting for
                identifiers, comments in italics, etc for easier reading.

p5c.ssh         ppr control file for pascal p5c

tcov.sh         example file to run test coverage analysis

rv              run your pascal program under valgrind (linux only)
                so you can identify hard-to-find bugs

examples/       benchmark programs, example code, demos

*-tests/        directories containing test code.

std-tests/      tests for standard pascal
iso7185-tests   acceptance tests from p5 project
rej-tests/      rejection tests
m-tests/        try to break the compiler by feeding it mutated source code

p5x/            the p5x pascal compiler
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.