
                            Free Pascal Compiler

                        Version 1.9.8 aka 2.0.0-Rc2

******************************************************************************
                      Whats New in 1.9.8 aka 2.0.0-Rc2
******************************************************************************


Compiler:
  + arm-linux cross compiler for i386-linux
  + SysV style syscalls added for MorphOS
  + Exportable macros for mode MacPas
  + Support procvar declaration in parameters for mode MacPas
  + Give warning if code is never executed in while/if statements
  + Directive {$COPERATORS ON} added, synomym for -Sc
  + Check for uninitialzed from and to values in for-loop statement
  + -Fa<unit> option added to load units in a program before the uses statement
    is parsed
  + -vz for output to stderr
  * Better support for unique types
  * AfterConstruction/BeforeDestruction behaviour is now compatible with Delphi
  * Better support for Widestring
  * Removed {$THREADING ON} directive, threading support is always available
  * Improved code generation on Sparc
  * Lot of small bugs and compatibility fixes
  + On target Mac OS, resource files is supported

RTL:
  + arm Linux support
  * Basic threading support moved to the system unit
  * Operator ** moved to math unit; system.power removed
  * Improved variant support
  * Lot of small bugs and compatibility fixes
  + The unit MacOS (api to Mac OS) for target MacOS

FCL:
  + Support for Interbase/Firebird, PostgreSQL and MySQL 4.0 under windows
  * Database drivers are now dynamically loaded
  * The TSQLQuery is now fully editable using cached updates
  * Lot of small bugs and compatibility fixes

Packages:
  + gtk2 interface units
  * 64 bit compatibility fixes
  * Lot of small bugs and compatibility fixes
  
IDE:
  + vector unit window
  * x86-64 asssembler debugging support improved
  * Sparc asssembler debugging support improved
  * Some bug fixes
  
Misc:
  + txt output to fpdoc added
  * some fpdoc bugs fixes
  + demo for macos
  

                        Version 1.9.6 aka 2.0.0-Rc1

******************************************************************************
                      Whats New in 1.9.6 aka 2.0.0-Rc1
******************************************************************************

Compiler:
  + x86_64/amd64 (Linux) compiler
  + Sparc (Linux) compiler
  + PowerPC MorphOS support
  + Mac OS (classic) compiler (for MPW)
  + Netware Libc support (-Tnetwlibc)
  + Register variable support (-Or) for all targets
  + MacPas compiler mode (-Mmacpas)
  * Better inlining support
  * For loop variable assignment is not allowed anymore
  * $fpctarget expands to <cpu>-<os> (except for 8.3 limited targets),
    old $target removed
  * Implicit loading of Variants unit
  * Lots of bug fixes

RTL:
  + x86_64/amd64 Linux support
  + Sparc Linux support
  + PowerPC MorphOS support
  + Mac OS (classic) support (except Sysutils and its dependants)
  + Netware Libc support
  + New heap manager that releases memory back to the OS
  + TThread.Synchronize support
  + utf8bidi unit
  + GetHeapStatus added
  + GetProcessID added
  + SysUtils.GetEnvironmentVariableCount and SysUtils.GetEnvironmentString added
  * gpm unit does not need libgpm anymore
  + Further additions for improved Delphi compatibility
  + System.GetProcessID and System.GetThreadID added
  + Dos.GetMsCount added
  + Support for changing console resolution in Video for Win32
  + Support for using high memory (> 512 MB) under OS/2 (where available)
  - Removed MaxAvail, MemAvail, HeapSize due to their unreliability
    (bogus/misleading return values) in multitasking environment with swapping

FCL:
  + RTTIUtils unit added
  + fpcunit test-framework added
  * Lots of dbf and other db fixes

FV:
  * Updated to fvision implementation, first official release

IDE:
  * Lots of improvements and stability fixes
  * Support latest gdb 6.2.x and 6.3.x releases

Docs:
  + Lots of updates
  + Easier to navigate html documentation
  * fpDoc is used to generate all unit documentation

Misc:
  * Makefiles create units in a separate directory units/cpu-os/
  * More cross compilation improvements


******************************************************************************
                      Whats New in 1.9.4 aka 2.0.0-Beta3
******************************************************************************

Compiler:
  + ARM (Linux) compiler
  + PowerPC Darwin (Mac OS X) support
  + reintroduce keyword support
  + added prefetch(const mem) support
  + MacPas compile mode
  + -gv to generate an executable that can be run under Valgrind >= 2.1
  * register allocator fixes and tweaks
  * better support for preprocessor $IF expressions
  * better overloaded operator support
  * Win32 DLL export table fixes
  * stabs (debuginfo) generation cleanups
  * enum names in RTTI are now in their original case
  * record alignment fixes
  * lots of bug fixes

RTL:
  + ARM Linux support
  + Powerpc Darwin support
  + Sysutils.RaiseLastOSError added
  + Sysutils.GetLastOSError added
  + Classes.TOwnedCollection added
  + Sysutils.FileIsReadOnly added
  + support of widestring and currency in the typinfo unit
  * Better support for Libc based RTL (FPC_USE_LIBC)
  * 64bit cleanup for future x86_64 port
  * ExecuteProcess fixes
  * Linux use getdents syscall instead of deprecated readdir
  * bug fixes

FCL:
  + SDF DB backend
  + TGA support in fpImage
  + support of widestring and currency type in stream related classes
  * Lot of fixes to fpImage classes

Misc:
  * better cross development support
  * Documentation updates
  * Testsuite updates to store testrun results in a database
  * Testsuite updates for cross platform testing, with remote rsh/ssh support


******************************************************************************
                      Whats New in 1.9.2 aka 2.0.0-Beta2
******************************************************************************

Compiler:
  + PowerPC compiler
  + sse/sse2 code generation support
  + "global" property support
  * improved inlining support
  * optimizer enabled again
  * uses register calling conventions by default
  * $fputype directive
  + properties of type single can have default values
  + support of $IF DECLARED()
  + support of DQWORD in inline intel assembler code
  * lots of bug fixes

RTL:
  * more improvements for unix runtime library
  * using FPC_USE_LIBC allows to compile an rtl which uses libc instead of syscalls
  + System.Initialize
  + Sysutils.ExecuteProcess
  + System.WideStringManager
  + System.PtrInt and System.PtrUInt
  * ipv6 support
  * lots of bug fixes

FCL:
  + sqlite support
  * bug fixes

Misc:
  * improved docs

******************************************************************************
                      Whats New in 1.9.0 aka 2.0.0-Beta1
******************************************************************************

Compiler:
  + dynamic arrays
  + interfaces
  + variants
  + full widestring support
  + default parameters
  + cross name scope overloading
  + support for the PowerPC, Sparc and ARM processor, installation packages will follow within the
    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
  + threadvar support, enabled by using {$threading on}
  * 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:
  + multithreading support
  * completely rewritten unix runtime library
  * improved Delphi compatiblity
  * significantly improved speed of exception related code
  * prepared for big endian and 64 Bit CPUs
  * a lot of bug fixes

FCL:
  + tdataset support
  + html generator
  + 64 Bit file handling
  * a lot of bug fixes

Docs:
  * adapted to reflect new language features

IDE:
  * a lot of bug fixes

Misc:
  * improved cross compilation
  