New GPC beta: gpc-970714
Tue, 15 Jul 1997 23:59:59 +0200 (MET DST)
Hello everybody!
A new beta version of GNU Pascal is being uploaded to agnes: gpc-970714.
This is merely a bug fixing release, but ...
Faster GPI
==========
Using a hashing algorithm instead of a linear search, the loading and
retrieving of GPI files works much faster now, especially for Units
(or Modules) with large Interface parts.
The GNU Pascal development team welcomes a new member, Alexey Volokhov,
who implemented this. Thanks, Alexey!
Bug fixes and new compatibility features
========================================
Standard Pascal:
* Subranges of enumerated types are now compatible with their host type.
* GPC now performs compile-time range-checking when a constant value is
assigned to something of a subrange type.
UCSD (and Borland) Pascal:
* For Units, `.gpm' files are no longer produced, only `.gpi' files are.
(For Extended Pascal Modules, `.gpm' *and* `.gpi' files are produced.)
* The `Concat' function is implemented now.
Borland Pascal:
* The `near' and `far' directives are now "implemented" (i.e. accepted and
ignored) in GPC. Outside `--borland-pascal' mode, a warning is given.
Extended Pascal:
* When assigning a constant value to a String, GPC now checks whether it
fits in the String's capacity.
* Pointers to already discriminated schemata work now.
* Schemata containing forward-referencing pointers work now.
GNU extensions:
* `Integer ( 8 )' types are more stable now, survive transport through a
GPI file, and can be `writeln'ed up to a width of that of an `Integer',
usually 32.
* A new function `BitSizeOf' now returns the number of bits in some
variable, including fields of a packed record.
Miscellaneous:
* Directives are now passed correctly from `specs' to the `gpc-cpp'
preprocessor.
* Casts between different Real types are now treated as conversions again.
(This was broken in gpc-970624.)
* Strings of unknown size in functions which are exported by a Unit work
now. (This was the "prior parameter's size depends on `Foo'" bug.)
* Indirect function calls are more stable now. A strange bug which showed
up only occasionally and made GPC sometimes call a function when a
function pointer was dereferenced and sometimes not, should have vanished
now. (Please check!)
Where to get it
===============
The source is being uploaded to
ftp://agnes.dida.physik.uni-essen.de/gnu-pascal/beta/,
files
gpc-970714.tar.gz and
gpc-970714.zip,
together with binaries for DOS (DJGPP), DOS and OS/2 (EMX), Linux (ELF),
and FreeBSD.
In order to prepare for the release of gpc-2.1, binaries are moved to a
subdirectory `binary' of `beta', and some other things are being set up,
so don't be confused if some files aren't located any more where they were
on the day before.
Acknowledgement
===============
I thank Stephen Lindholm, Frank Heckenbach, Abimbola A. Olowofoyeku,
Sven Hilscher, Bernhard Tschirren, and Bill Currie for finding the bugs.
Please go on finding all bugs in gpc-970714! I may have overlooked some
you already reported. (If so, please remind me by e-mail.;-) Once GPC
is clean, we can release version 2.1 - and face neat new features (e.g.
qualified import and identifiers, classes, interfaces, procedure
overloading, ...) for 2.2! :)
Greetings,
Peter
Dipl.-Phys. Peter Gerwinski, Essen, Germany, free physicist and programmer
peter.gerwinski@uni-essen.de - http://home.pages.de/~peter.gerwinski/ [970201]
maintainer GNU Pascal [970714] - http://home.pages.de/~gnu-pascal/ [970125]
Peter Gerwinski (peter@agnes.dida.physik.uni-essen.de)
HTML conversion by Lluís de Yzaguirre i Maura
Institut de Lingüística Aplicada -
Universitat "Pompeu Fabra"
e-mail: de_yza@upf.es