GPC -- Gnu Pascal Compiler
==========================
All parts of this compiler are copyrighted (C) by the Free
Software Foundation, Inc (FSF).
The Pascal run time system is donated to FSF to be distributed
according to the FSF Library Copyright.
See files COPYING and COPYING.LIB in corresponding directories
to see the permissions you have and what you don't have when
using this software.
Everything is done with quite minimal changes to the GCC code,
so don't be too excited if you get error messages telling that
ANSI C denies something, or that your STRUCT definition is
broken, and what not. (Please send me sample code that
triggers such messages so I can fix it).
I did it this way, as I wanted it to be easier to upgrade to
new releases of GCC, and of course since it was a lot easier
for me to modify code than to write it from scratch.
There are some new files not present in the GCC; gpc-parser.y
which is the bison parser for the language, gpc-lex.c that has
the lexical analyzer stuff, gpc-defs.h which has definitions
used in various places, and gpc-util.c which includes the glue
to convert Pascal's way of thinking to the way the original
C-oriented c-*.c files think, and most of the new routines.
All changes are flagged with #ifdef GPC (except those that are
already merged with the mainline GCC code). Some language
independent files have also been modified, but most of the
changes are quite minimal or if not, new code has been added
to handle pascal. All in all, the GCC compiler is quite well
designed to support at least these kind of languages.
GPC tries to be (for now) a Level 0 ISO 7185 compatible Pascal
processor. There are two levels in the Pascal standard; level
0 processors are not required to understand conformant arrays
(this is the only difference). The conformant arrays are
partially implemented in this version, but more likely they
crash the compiler than work at this time.
I don't have the ANSI standard, so I can't make
the comparision between ISO & ANSI, and it not the most
important thing now, anyway. After everything else works,
it should be *easy* to implement the ANSI standard
modifications to the compiler. I think.
GPC also imlements a large subset of the ISO/IEC 10206
international standard of the Extended Pascal language.
(See GPC.GUIDE for more info).
See the file PROBLEMS to find out the major problems
of the GPC version in this directory.
The file NEW-PVS-LIST contains the current results of running
the Pascal Validation Suite conformance tests (about 199
tests), one line (word) to tell why the test failed. PASSed
tests are not mentioned. PVS tests also contain QUALITY
tests, errorhandling tests, implementation dependent tests,
but they will be checked later.
ChangeLog contains a partial edit history.
Yours,
Juki
[email protected]
Jukka Virtanen
Helsinki University of Technology,
Computing Centre,
Finland
Anonymous ftp:
Newest "public" gpc snapshot is available via anonymous
ftp in host kampi.hut.fi in directory jtv/gnu-pascal