mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-14 21:09:11 +02:00
* updated for 1.9.0 release
This commit is contained in:
parent
670e835edf
commit
a0b936c245
@ -1,33 +1,33 @@
|
|||||||
|
|
||||||
Free Pascal Compiler
|
Free Pascal Compiler
|
||||||
|
|
||||||
Version 1.2.0
|
Version 1.9.0 aka 2.0.0-Beta1
|
||||||
|
|
||||||
|
|
||||||
****************************************************************************
|
****************************************************************************
|
||||||
* Introduction
|
* Introduction
|
||||||
****************************************************************************
|
****************************************************************************
|
||||||
|
|
||||||
This package contains a freeware 32-bit pascal compiler for 386+. The language
|
*** WARNING *** WARNING *** WARNING ***
|
||||||
and the runtime library are more or less compatible to TP 7.0. Some Delphi
|
This a beta release and it still contains some known bugs. However, it would
|
||||||
additions have also been implemented like classes, exceptions, ansistrings
|
be very useful if you could test your projects with it and tell us when
|
||||||
and rtti.
|
you find bugs.
|
||||||
|
*** WARNING *** WARNING *** WARNING ***
|
||||||
|
|
||||||
Free Pascal is currently available for the following platforms:
|
This package contains a freeware 32-bit pascal compiler for 386+. The language
|
||||||
- DOS, via the DJ Delorie's GO32V2 Dos extenders
|
and the runtime library are almost compatible with TP 7.0 and recent Delphi
|
||||||
|
releases.
|
||||||
|
|
||||||
|
Free Pascal 1.9.0 is currently available for the following platforms:
|
||||||
- Linux (i386), both aout and elf
|
- Linux (i386), both aout and elf
|
||||||
- OS/2 & DOS, via the EMX extender
|
|
||||||
- Win32 (Win32s, Win95/98/Me/XP/2000 and WinNT)
|
- Win32 (Win32s, Win95/98/Me/XP/2000 and WinNT)
|
||||||
- Sun Solaris i386
|
|
||||||
- BeOS i386
|
|
||||||
- QNX i386
|
|
||||||
- FreeBSD i386
|
- FreeBSD i386
|
||||||
|
|
||||||
Older version of the compiler (0.99.5) is also available on:
|
More platforms will be supported in future 1.9.x beta releases.
|
||||||
- Commodore Amiga
|
Because release building is quite time intensive, we decide to start the
|
||||||
- Atari ST
|
2.0 beta series only with the most important targets. If you want to change
|
||||||
|
this and create and maintain 2.0 beta releases for other platforms and
|
||||||
More platforms will be supported in the future.
|
targets, feel free to contact us, E-Mail addresses are listened below.
|
||||||
|
|
||||||
****************************************************************************
|
****************************************************************************
|
||||||
* Features
|
* Features
|
||||||
@ -36,18 +36,21 @@ More platforms will be supported in the future.
|
|||||||
- high speed compiler
|
- high speed compiler
|
||||||
- fully 32-bit code
|
- fully 32-bit code
|
||||||
- language features:
|
- language features:
|
||||||
- almost fully compatible with Borland Pascal
|
- almost fully compatible with Borland Pascal and Borland Delphi
|
||||||
- partially compatible with Borland Delphi
|
|
||||||
- ansi strings
|
- ansi strings
|
||||||
- exception support
|
- exception support
|
||||||
- RTTI support
|
- RTTI support
|
||||||
- procedure overloading
|
- procedure overloading
|
||||||
- operator overloading
|
- operator overloading
|
||||||
|
- COM, CORBA and raw interfaces support
|
||||||
|
- dyn. array support
|
||||||
|
- variant support
|
||||||
- code optimizer:
|
- code optimizer:
|
||||||
- peephole optimizer
|
- peephole optimizer
|
||||||
- loading of variables into registers
|
- loading of variables into registers
|
||||||
- assembler level dataflow analyzer
|
- assembler level dataflow analyzer
|
||||||
- stack frame eliminations
|
- stack frame eliminations
|
||||||
|
- sophisticated register allocator
|
||||||
- integrated BASM (built-in assembler) parser
|
- integrated BASM (built-in assembler) parser
|
||||||
- supports ATT syntax used by GNU C
|
- supports ATT syntax used by GNU C
|
||||||
- supports Intel syntax used by Turbo Pascal
|
- supports Intel syntax used by Turbo Pascal
|
||||||
@ -58,45 +61,27 @@ More platforms will be supported in the future.
|
|||||||
- can call external C code
|
- can call external C code
|
||||||
- smartlinking
|
- smartlinking
|
||||||
- support for the GNU debugger
|
- support for the GNU debugger
|
||||||
- IDE (currently for GO32v2 and Win32 only, in beta testing phase)
|
- IDE (currently for GO32v2, Linux and Win32 only, in beta testing phase)
|
||||||
- can create binaries running natively under both DOS and OS/2 (EMX version)
|
- can create binaries running natively under both DOS and OS/2 (EMX version)
|
||||||
|
|
||||||
|
|
||||||
****************************************************************************
|
****************************************************************************
|
||||||
* Requirements (Intel version)
|
* Requirements
|
||||||
****************************************************************************
|
****************************************************************************
|
||||||
|
|
||||||
386 processor
|
386 processor
|
||||||
DOS (extender GO32v2):
|
|
||||||
- DOS 3.3
|
|
||||||
- 4 MB RAM (8+ MB recommended)
|
|
||||||
- hard disk with free space of 8 MB
|
|
||||||
- DPMI server (CWSDPMI is delivered in the go32v2 distribution)
|
|
||||||
Win32:
|
Win32:
|
||||||
- Win95/98/Me/2000/XP or WinNT
|
- Win95/98/Me/2000/XP or WinNT
|
||||||
- 8 MB RAM (16+ MB recommended)
|
- 8 MB RAM (16+ MB recommended)
|
||||||
OS/2 and DOS (extender EMX):
|
Linux:
|
||||||
- either DOS 5.0 and above or OS/2 v3.x and above (including eComStation;
|
- system running a 2.0.x kernel
|
||||||
OS/2 v2.1 might work at least in some cases, but is not officially
|
|
||||||
supported any more, OS/2 v2.0 will not run any FPC application using
|
|
||||||
units Dos or DosCalls - this includes the compiler itself)
|
|
||||||
- 3 MB RAM (8+ MB recommended) for DOS
|
|
||||||
or 8 MB (12 or more MB recommended depending on OS version) for OS/2
|
|
||||||
- EMX or RSX (for DPMI) runtime package (part of OS/2 distribution)
|
|
||||||
- TZ variable in your environment (in your CONFIG.SYS at best);
|
|
||||||
you should normally have it there anyway, it may only be missing
|
|
||||||
on older OS/2 versions (<= 3.0)
|
|
||||||
BeOS:
|
|
||||||
- GNU Utilities and development tools pre-installed (as and ld)
|
|
||||||
- BeOS 4.5 or later
|
|
||||||
|
|
||||||
|
|
||||||
****************************************************************************
|
****************************************************************************
|
||||||
* Quick start
|
* Quick start
|
||||||
****************************************************************************
|
****************************************************************************
|
||||||
|
|
||||||
Download dos106.zip (version for DOS) or w32106.zip (version for
|
Win32:
|
||||||
Win9x/NT) or os2106.zip (EMX version - for OS/2 and DOS) and unzip it
|
Download w32190.zip and unzip it
|
||||||
into a temporary directory.
|
into a temporary directory.
|
||||||
|
|
||||||
Start the install program INSTALL.EXE and follow the instructions.
|
Start the install program INSTALL.EXE and follow the instructions.
|
||||||
@ -105,117 +90,10 @@ Don't forget to set the path as mentioned by the install program.
|
|||||||
|
|
||||||
To test the compiler, change to the demo directory of the compiler
|
To test the compiler, change to the demo directory of the compiler
|
||||||
and type
|
and type
|
||||||
ppc386 hello
|
fpc hello
|
||||||
hello
|
hello
|
||||||
|
|
||||||
|
|
||||||
****************************************************************************
|
|
||||||
* The packages of the distribution
|
|
||||||
****************************************************************************
|
|
||||||
|
|
||||||
All standard packages contain a part that is specific for the target platform
|
|
||||||
and a few files which are target independent. All files are also available
|
|
||||||
as separate files to reduce file size if the default file is too big.
|
|
||||||
|
|
||||||
dos106.zip specific:
|
|
||||||
----------------------
|
|
||||||
basego32.zip contains a DOS (Go32V2) compiler, runtime library and
|
|
||||||
additional files
|
|
||||||
asldgo32.zip contains additional GNU utilities which are necessary:
|
|
||||||
AS 2.9.1 for Go32V2
|
|
||||||
LD 2.9.1 for Go32V2
|
|
||||||
AR 2.8.1 for Go32V2
|
|
||||||
Strip 2.8.1 for Go32V2
|
|
||||||
makego32.zip contains additional GNU utilities which might be useful to
|
|
||||||
compile the run time library:
|
|
||||||
Make 3.79.1
|
|
||||||
RM 3.16
|
|
||||||
CP 3.16
|
|
||||||
MV 3.16
|
|
||||||
PWD 3.16
|
|
||||||
GInstall 3.16
|
|
||||||
GDate 3.16
|
|
||||||
GEcho 3.16
|
|
||||||
UPX 1.20
|
|
||||||
gdbgo32.zip contains the GNU Debugger 4.18 with pascal support for Go32V2
|
|
||||||
|
|
||||||
w32106.zip specific:
|
|
||||||
----------------------
|
|
||||||
basew32.zip contains a Win32 compiler, runtime library and
|
|
||||||
additional files
|
|
||||||
asldw32.zip contains additional GNU utilities from MinGW32 which are
|
|
||||||
necessary:
|
|
||||||
AS 2.9.5 for Win32
|
|
||||||
LD 2.9.5 for Win32
|
|
||||||
AR 2.9.5 for Win32
|
|
||||||
Strip 2.9.5 for Win32
|
|
||||||
WindRes 2.9.5 for Win32
|
|
||||||
DLLTool 2.9.5 for Win32
|
|
||||||
makew32.zip contains additional GNU utilities which might be useful to
|
|
||||||
compile the run time library:
|
|
||||||
Make 3.79.1
|
|
||||||
RM 3.16
|
|
||||||
CP 3.16
|
|
||||||
MV 3.16
|
|
||||||
PWD 3.16
|
|
||||||
GInstall 3.16
|
|
||||||
GDate 3.16
|
|
||||||
GEcho 3.16
|
|
||||||
UPX 1.20
|
|
||||||
gdbw32.zip contains the GNU Debugger 4.18 with pascal support for Win32
|
|
||||||
|
|
||||||
os2106.zip specific:
|
|
||||||
----------------------
|
|
||||||
baseemx.zip contains an EMX (OS/2 and DOS) compiler, runtime library and
|
|
||||||
additional files
|
|
||||||
asldemx.zip contains additional GNU utilities which are necessary:
|
|
||||||
AS 2.9.1 for EMX
|
|
||||||
LD for EMX
|
|
||||||
EMXBIND 0.9d
|
|
||||||
AR 2.9.1 for EMX
|
|
||||||
NM 2.9.1 for EMX
|
|
||||||
GASP 1.2 for EMX
|
|
||||||
ObjCopy 2.9.1 for EMX
|
|
||||||
ObjDump 2.9.1 for EMX
|
|
||||||
Strip 2.9.1 for EMX
|
|
||||||
RANLIB 2.9.1 for EMX
|
|
||||||
makeemx.zip contains additional GNU utilities which might be useful to
|
|
||||||
compile the run time library:
|
|
||||||
Make 3.76.1
|
|
||||||
RM 3.13
|
|
||||||
CP 3.13
|
|
||||||
MV 3.13
|
|
||||||
ChMod 3.13
|
|
||||||
PWD 1.12
|
|
||||||
Install 3.13
|
|
||||||
Date 1.12
|
|
||||||
Echo 1.12
|
|
||||||
Diff 2.8
|
|
||||||
gdbemx.zip contains the GNU Debugger 4.16 for EMX,
|
|
||||||
PMGDB (Presentation Manager add-on for GDB) and GPROF 2.9.1
|
|
||||||
|
|
||||||
common files in dos106.zip, w32106.zip and os2106.zip:
|
|
||||||
------------------------------------------------------------
|
|
||||||
demo.zip contains some demo files
|
|
||||||
doc-pdf.zip contains the documentation in PDF format
|
|
||||||
doc-html.zip contains the documentation in HTML format
|
|
||||||
install.exe installation program
|
|
||||||
install.dat installation data
|
|
||||||
readme.txt this readme file
|
|
||||||
whatsnew.txt what's been changed
|
|
||||||
|
|
||||||
Optional source package src106.zip:
|
|
||||||
-------------------------------------
|
|
||||||
basesrc.zip contains the basic Makefiles needed for the source tree
|
|
||||||
compsrc.zip contains the compiler sources
|
|
||||||
rtlsrc.zip contains the runtime library sources
|
|
||||||
fclsrc.zip contains the Free Component Library sources
|
|
||||||
pkgssrc contains the packages (various units) sources
|
|
||||||
utilssrc.zip contains the Utilities sources
|
|
||||||
instsrc.zip contains the installer sources
|
|
||||||
docsrc.zip contains the TeX sources of the doc
|
|
||||||
|
|
||||||
|
|
||||||
****************************************************************************
|
****************************************************************************
|
||||||
* Documentation
|
* Documentation
|
||||||
****************************************************************************
|
****************************************************************************
|
||||||
@ -308,14 +186,14 @@ fall under the GPL, for more information read the file COPYING.
|
|||||||
Some specific utilities and programs come under the license described in
|
Some specific utilities and programs come under the license described in
|
||||||
COPYING.DJ, COPYING.EMX and COPYING.RSX.
|
COPYING.DJ, COPYING.EMX and COPYING.RSX.
|
||||||
|
|
||||||
The documentation, unless otherwise noted, is distributed as free
|
The documentation, unless otherwise noted, is distributed as free
|
||||||
text, and is distributed under the GNU Library General Public
|
text, and is distributed under the GNU Library General Public
|
||||||
License.
|
License.
|
||||||
|
|
||||||
The runtime library, package libraries, free component library, and
|
The runtime library, package libraries, free component library, and
|
||||||
other libraries which are used to create executables by the compiler
|
other libraries which are used to create executables by the compiler
|
||||||
come under a modified GNU Library General Public license. Additional
|
come under a modified GNU Library General Public license. Additional
|
||||||
information about the library license is found in COPYING.FPC.
|
information about the library license is found in COPYING.FPC.
|
||||||
|
|
||||||
NOTE: OS/2 version of the installer uses the library UNZIP32.DLL from
|
NOTE: OS/2 version of the installer uses the library UNZIP32.DLL from
|
||||||
Info-ZIP. Info-ZIP's software (Zip, UnZip and related utilities)
|
Info-ZIP. Info-ZIP's software (Zip, UnZip and related utilities)
|
||||||
|
@ -1,315 +1,53 @@
|
|||||||
|
|
||||||
Free Pascal Compiler
|
Free Pascal Compiler
|
||||||
|
|
||||||
Version 1.0.4
|
Version 1.9.0 aka 2.0.0-Beta1
|
||||||
|
|
||||||
******************************************************************************
|
******************************************************************************
|
||||||
Whats New in 1.0.4
|
Whats New in 1.9.0 aka 2.0.0-Beta1
|
||||||
******************************************************************************
|
******************************************************************************
|
||||||
|
|
||||||
Compiler:
|
Compiler:
|
||||||
+ Fpc executable
|
+ dyn. arrays
|
||||||
+ Rangechecking for int64
|
+ interfaces
|
||||||
+ Better cardinal rangechecking
|
+ variants
|
||||||
+ Debugging support for classes
|
+ full widestring support
|
||||||
+ FreeBSD and Linux define both UNIX
|
+ default parameters
|
||||||
* XMM registers in assembler fixed
|
+ cross name scope overloading
|
||||||
* Optimizer fixes
|
+ support for the PowerPC, Sparc and ARM processor, installation packages will follow within the
|
||||||
* Fixed some reported bugs
|
next weeks
|
||||||
|
+ new and more sophisticated register allocator
|
||||||
|
+ inlining across units
|
||||||
|
+ register calling conventions
|
||||||
|
+ SSE and SSE2 support for inline assembler
|
||||||
|
+ PIC code generation
|
||||||
|
+ new language mode: "Mac Pascal"
|
||||||
|
+ full boolean evaluation is now also available
|
||||||
|
* support of int64 integer constants
|
||||||
|
* improved delphi compatibility in -Sd mode
|
||||||
|
* a lot of bug fixes
|
||||||
|
* large parts of the compiler are rewritten to create a more stable,
|
||||||
|
portable and maintainable compiler
|
||||||
|
|
||||||
RTL:
|
RTL:
|
||||||
+ keyboard, mouse and video units added (originally in API)
|
+ multithreading support
|
||||||
+ Lot of FreeBSD updates
|
* completely rewritten unix runtime library
|
||||||
* FindFirst/FindClose fixes
|
* improved delphi compatiblity
|
||||||
* Termios updates for FreeBSD and Linux
|
* significantly improved speed of exception related code
|
||||||
* FExpand fixes
|
* prepared for big endian and 64 Bit CPUs
|
||||||
* TypInfo fixes
|
* a lot of bug fixes
|
||||||
* Val(qword) works
|
|
||||||
|
|
||||||
FCL:
|
FCL:
|
||||||
* sstream example added
|
+ tdataset support
|
||||||
* fixed some missing .o and .a files
|
+ html generator
|
||||||
|
+ 64 Bit file handling
|
||||||
Utils:
|
* a lot of bug fixes
|
||||||
* fpcmake updates for freebsd
|
|
||||||
* ppufiles fix to allow / in filenames under go32v2/win32
|
|
||||||
|
|
||||||
Docs:
|
Docs:
|
||||||
+ IDE documentation
|
* adapted to reflect new language features
|
||||||
|
|
||||||
API:
|
|
||||||
- standalone API removed from distribution, units added to RTL
|
|
||||||
|
|
||||||
|
|
||||||
******************************************************************************
|
|
||||||
Whats New in 1.0.2
|
|
||||||
******************************************************************************
|
|
||||||
|
|
||||||
Compiler:
|
|
||||||
+ memory requirements reduced a lot when creating smartlink libraries
|
|
||||||
+ identical procedures or functions are now already found in the interface instead
|
|
||||||
of after parsing the implementation also
|
|
||||||
+ overload directive parsing is now D5 compatible
|
|
||||||
+ stop compiling if -S2 or -Sd is required and give a nicer error message
|
|
||||||
+ don't allow wrong assemblers for targets (i.e. refuse as.exe for win32)
|
|
||||||
* fixed smartlinking for win32 imports
|
|
||||||
* some -Or and other optimizer fixes
|
|
||||||
* fixed some crashes with undeclared identifiers and inlined functions
|
|
||||||
* packenum fixes
|
|
||||||
* internal binary writer is now a lot faster when creating smartlink libraries
|
|
||||||
with a lot of files (like the windows unit)
|
|
||||||
* better targetdir support
|
|
||||||
* don't allow word = word like type definitions
|
|
||||||
* integer(char) typecast works now
|
|
||||||
* some other small reported bugs
|
|
||||||
|
|
||||||
RTL:
|
|
||||||
+ bsd port files
|
|
||||||
+ sysutils more delphi compatible
|
|
||||||
+ sysutils.syserrormessage added for platforms supporting it
|
|
||||||
* some graph fixes
|
|
||||||
* linux crt handles ctrl-c better
|
|
||||||
* win32 crt returns alt-<key> correct
|
|
||||||
* small int64 fixes
|
|
||||||
* paramstr(0) fix for linux 2.0 kernels
|
|
||||||
* go32v2 getenv made case insensitive
|
|
||||||
* lot of os2 updates
|
|
||||||
|
|
||||||
|
|
||||||
******************************************************************************
|
|
||||||
Whats New in 1.00
|
|
||||||
******************************************************************************
|
|
||||||
|
|
||||||
Compiler:
|
|
||||||
+ -gl switch to automaticly load the lineinfo unit
|
|
||||||
+ Lot of Delphi compatibility additions, especially when using -Sd
|
|
||||||
* Optimizer fixes, mainly register allocations needed for -Or
|
|
||||||
* int64/qword fixes
|
|
||||||
* RTTI fixes
|
|
||||||
* Smartlinking fixes for classes
|
|
||||||
* inline fixes (but still Beta)
|
|
||||||
* Exceptions generate more usefull backtraces which also support the
|
|
||||||
new lineinfo unit
|
|
||||||
* {$Packrecords C} fixes to be better C compatible
|
|
||||||
* operator should now work correctly when defined in other units
|
|
||||||
and locally and other fixes
|
|
||||||
* Better glibc 2.1.x support under linux
|
|
||||||
* Lot of other small bugfixes for the reported bugs
|
|
||||||
|
|
||||||
RTL:
|
|
||||||
+ lineinfo unit to display the file and line when a backtrace is
|
|
||||||
generated, this works for runtime errors, unhandled exceptions and
|
|
||||||
heaptrc unit (hint: use -ghl to easily detect and fix memory leaks)
|
|
||||||
* better precision when converting float to string
|
|
||||||
* Better exception support for Go32v2 without the need to load dpmiexcp
|
|
||||||
* Better Signal handling under linux for exception reporting
|
|
||||||
* Windows unit for win32 has now more delphi compatible declarations
|
|
||||||
* disksize/diskfree return now int64 so drives > 2GB work correctly
|
|
||||||
* lot of graph unit fixes, with generic mode support
|
|
||||||
* paramstr(0) under linux now returns the full executable instead of
|
|
||||||
the commandline
|
|
||||||
* heaptrc fixes for reallocmem
|
|
||||||
* other fixes reported by users
|
|
||||||
|
|
||||||
IDE:
|
IDE:
|
||||||
+ don't allow wrong assemblers with specific targets
|
* a lot of bug fixes
|
||||||
+ default mode for which assembler to use
|
|
||||||
+ Recompiling a program does now also use unsaved files still in the editor
|
|
||||||
* the support files are now placed in the same dir as fp.exe where they were expected
|
|
||||||
|
|
||||||
Utils:
|
|
||||||
+ postw32 to postprocess win32 executables to patch the stacksize
|
|
||||||
* h2pas is now better and also has a compact output mode with less
|
|
||||||
spaces and blank lines.
|
|
||||||
* fpcmake supports .so library creation and example installation
|
|
||||||
|
|
||||||
Packages:
|
|
||||||
+ opengl for win32
|
|
||||||
* fixed win32 gtk interface
|
|
||||||
|
|
||||||
FCL:
|
|
||||||
+ db support (TDataSet,TDatabase) for mysql
|
|
||||||
* idea fixes
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
******************************************************************************
|
|
||||||
Whats New in 0.99.14
|
|
||||||
******************************************************************************
|
|
||||||
|
|
||||||
Compiler:
|
|
||||||
+ DLL creation fixed, it needs dlltool now
|
|
||||||
+ .so creation for linux works also with classes
|
|
||||||
+ Library writing works better, also linux library support
|
|
||||||
+ better FPU code generation
|
|
||||||
+ only one PPU is used per unit also when static, shared and smart linked
|
|
||||||
+ assembler understands KNI instructions
|
|
||||||
+ fail in class constructors works
|
|
||||||
+ resourcestrings support
|
|
||||||
+ gettext support for resourcestrings (localization)
|
|
||||||
+ > < >= <= support for boolean
|
|
||||||
+ checking for unused but assigned variables and private fields
|
|
||||||
* lot of RTTI fixes
|
|
||||||
* lot of property fixes
|
|
||||||
* pointer addition/substraction works like inc()/dec() (with the size
|
|
||||||
of the pointed type)
|
|
||||||
* assembler reader fixes so it works more like BASM
|
|
||||||
* exit in try...finally/except block works
|
|
||||||
* don't allow goto/label with exception blocks
|
|
||||||
* stabs debugging fixed for classes and result variable
|
|
||||||
* array constructor support
|
|
||||||
* initialization/finalization work also in default FPC mode
|
|
||||||
* assert works now also within $H+ mode
|
|
||||||
* lot of other fixes
|
|
||||||
|
|
||||||
RTL:
|
|
||||||
+ New graph unit for GO32v2, Win32, Linux
|
|
||||||
+ Delphi style GetMem/Freemem/ReAllocMem which knows the size of
|
|
||||||
the allocated block itself. Specifying wrong size for freemem gives
|
|
||||||
now also a Runtime Error
|
|
||||||
+ ports unit for both GO32v2 and OS/2, which contains the port[] support.
|
|
||||||
It's now compatible with Linux ports unit
|
|
||||||
+ timezone support for linux
|
|
||||||
+ primitive routines Compare[Byte,Word,Dword], Index[Byte,Word,Dword]
|
|
||||||
* better ioresult setting for GO32v2
|
|
||||||
* some pchar fixes in sysutils unit
|
|
||||||
* lot of RTTI fixes for typinfo
|
|
||||||
* ansistrings speedups
|
|
||||||
* some other small fixes
|
|
||||||
|
|
||||||
Utils:
|
|
||||||
+ fpcmake util to create a Makefile from Makefile.fpc
|
|
||||||
+ delp util to delete all created files after compiling (exe, o, ppu)
|
|
||||||
+ fprcp util for preprocessing win32 resource files
|
|
||||||
+ data2inc util to convert data into .inc files
|
|
||||||
+ binobj for binary to .o/.inc files, also with crypt, compression support
|
|
||||||
+ ppufiles show all created files needed by a unit
|
|
||||||
+ rstconv util to convert .rst files to gettext files
|
|
||||||
+ plex,pyacc Pascal Lex/Yacc
|
|
||||||
* ppudump, ppufiles updated for new ppu version
|
|
||||||
|
|
||||||
|
|
||||||
******************************************************************************
|
|
||||||
Whats New in 0.99.12
|
|
||||||
******************************************************************************
|
|
||||||
|
|
||||||
Compiler:
|
|
||||||
+ lot of ansistring fixes
|
|
||||||
+ coff writer for go32v2,win32 with instant .a creation (BETA)
|
|
||||||
+ working global browser
|
|
||||||
+ new compiler directives (path and other cmdline switches)
|
|
||||||
+ val,readln support range checking
|
|
||||||
+ initialization/finalization support
|
|
||||||
+ methodpointer support
|
|
||||||
+ message support
|
|
||||||
* better intel,at&t parsers with mmx,3dnow support
|
|
||||||
* better unit dependency handling and recompiling
|
|
||||||
* static var fixes
|
|
||||||
* better addr() support
|
|
||||||
* lot of other fixes, too many to list here
|
|
||||||
|
|
||||||
RTL:
|
|
||||||
+ Internationalization suport in sysutils
|
|
||||||
+ FileNameCaseSensitive boolean for go32v2,win32
|
|
||||||
* more precise str/val
|
|
||||||
* better val(),readln()
|
|
||||||
* io error handling much more like tp7
|
|
||||||
* small other fixes
|
|
||||||
|
|
||||||
Utils:
|
|
||||||
+ ptop to pretty print your sources
|
|
||||||
* beter ppudump
|
|
||||||
|
|
||||||
|
|
||||||
******************************************************************************
|
|
||||||
Whats New in 0.99.10
|
|
||||||
******************************************************************************
|
|
||||||
|
|
||||||
Compiler:
|
|
||||||
+ better optimizer
|
|
||||||
+ ansistring support
|
|
||||||
+ array of const support for FormatStr
|
|
||||||
+ automatic heaptrc unit including with the -gh option
|
|
||||||
+ open strings ($P+) support
|
|
||||||
+ DLL generation for Win32
|
|
||||||
+ printf support for cdecl using array of const
|
|
||||||
* exceptions are finally working
|
|
||||||
* fixed some ppu problems
|
|
||||||
* fixed unit interdependency problems
|
|
||||||
* better range checking, also for enums
|
|
||||||
* size of objects without virtuals is now the same as tp7
|
|
||||||
* lot of fixes for the assembler readers
|
|
||||||
* more constant expression evalutations
|
|
||||||
* removed all memoryleaks
|
|
||||||
* almost all reported bugs are fixed
|
|
||||||
|
|
||||||
RTL:
|
|
||||||
+ heaptrc unit to detect memoryleaks and other problems with the heap
|
|
||||||
+ graph unit works and some missing functions are added
|
|
||||||
* objects unit fully works
|
|
||||||
* more functions for the classes,sysutils unit
|
|
||||||
|
|
||||||
Utils:
|
|
||||||
* ppudump updated for new ppu entries
|
|
||||||
* h2pas updated to write new cdecl declaration
|
|
||||||
|
|
||||||
|
|
||||||
******************************************************************************
|
|
||||||
Whats New in 0.99.8
|
|
||||||
******************************************************************************
|
|
||||||
|
|
||||||
Compiler:
|
|
||||||
+ smartlinking support (-Cx)
|
|
||||||
+ new ppu format which much more portable en extendible
|
|
||||||
+ new scanner with better file position info
|
|
||||||
+ constant evaluation like tp7 (trunc,round,hi,swap)
|
|
||||||
+ rtti support
|
|
||||||
+ exception support
|
|
||||||
+ longbool,wordbool support
|
|
||||||
+ enumerated packing support like delphi
|
|
||||||
+ c variable support (-Sv)
|
|
||||||
+ Win32 support (no export and resource support yet)
|
|
||||||
* optimizer switches changed to be easier to use
|
|
||||||
* lot of fixes for sets, also supporting dynamic creation
|
|
||||||
* working open array (sizeof,high)
|
|
||||||
* better filename handling for all platforms
|
|
||||||
* ability to list source lines in the assembler file
|
|
||||||
* some error messages changed to for better understanding
|
|
||||||
* better calling convention support, delphi compatible
|
|
||||||
* glibc2 (linux) support
|
|
||||||
* too many other small bugfixes and internal enhancements
|
|
||||||
|
|
||||||
RTL:
|
|
||||||
+ sysutils unit for objpas
|
|
||||||
+ port[] array for go32v2
|
|
||||||
+ graph unit for linux
|
|
||||||
+ uniform objects unit for all platforms
|
|
||||||
+ rtti support
|
|
||||||
+ automatic Longfilename (LFN) support for go32v2
|
|
||||||
* go32 crt startup delay has been removed
|
|
||||||
* missing pchar support for some file functions (assign,rename)
|
|
||||||
* heapblocks support, which is much faster when allocating a lot
|
|
||||||
of small blocks (like objects)
|
|
||||||
* filerec/textrec is now uniform for all platforms (but not tp7 compatible)
|
|
||||||
* extended is the default floating point type
|
|
||||||
* lot of other fixes and small enhancements
|
|
||||||
|
|
||||||
Utils:
|
|
||||||
+ h2pas util to convert .h files to .pas file
|
|
||||||
+ ppudump util replaces the old dumpppu
|
|
||||||
* mkdep is now much less strict and (* *) support
|
|
||||||
|
|
||||||
|
|
||||||
******************************************************************************
|
|
||||||
Whats New in 0.99.5
|
|
||||||
******************************************************************************
|
|
||||||
|
|
||||||
Mainly, bugs are fixed and some improvements are
|
|
||||||
made in that release, besides that the following stuff is
|
|
||||||
added:
|
|
||||||
* compiler
|
|
||||||
- mem[] and absolute works now as expected (go32v2 target only)
|
|
||||||
- basic MMX support by the compiler (see docs for more infos)
|
|
||||||
* runtime library
|
|
||||||
- better support of floating point types
|
|
||||||
|
|
||||||
|
Misc:
|
||||||
|
* improved cross compilation
|
Loading…
Reference in New Issue
Block a user