FPC 3.0.2-rc1 released lazarus / 60-Free Pascal ---------------------------------------------------------------------- marcov · 2016-12-29 13:27 Hello, Finally, as a (late) Christmas present, we have placed the first release candidate of the Free Pascal Compiler version 3.0.2 on our ftp servers. You can help improve the upcoming 3.0.2 release by downloading and testing this release. If you want you can report what you have done here: http://wiki.freepascal.org/Testers_3.0.2 or in the maillist. Changes that may break backwards compatibility will be documented at: http://wiki.freepascal.org/User_Changes_3.0.2 Due to a long gestation, the packages are synchronized up to about may 2016. Downloads are available at the main FTP server and ftp://freepascal.stack.nl/pub/fpc/beta/3.0.2-rc1/ Enjoy! The Free Pascal Compiler Team                             Free Pascal Compiler                                 Version 3.0.2 ********************************************************************** ********                               What's New in 3.0.2 ********************************************************************** ******** Free Pascal 3.0.2 is a point release of the 3.0.x fixes branch. Please also see http://wiki.freepascal.org/User_Changes_3.0.2 for a list of changes that may affect the behaviour of previously working code, and how to cope with these changes. Some highlights are: Compiler: the bug in currency arithmetic has been fixed. Rtl: TRect, TPoint and similar types are now type compatible between     Types and Windows unit, and are now advanced records. Packages: googleapi and fcl-pdf packages.fcl-db and web packages synchronized unicode tables updated. See http://bugs.freepascal.org/changelog_page.php for the list of reported bugs which have been fixed in this release. ---------------------------------------------------------------------- Thaddy · 2016-12-29 13:37 Great! Marco and all of the team! I hope this will be the point release without too much hassle. I really appreciate that all of you, as a team, only make such decisions under the condition: when it is done it is done! CUDOS to all of you. ---------------------------------------------------------------------- marcov · 2016-12-29 14:03 Quote from: Thaddy on December 29, 2016, 02:37:46 pmGreat! Marco and all of the team! I hope this will be the point release without too much hassle. As that it is released 7 months after being tagged and packaged, that ship has already sailed I'm afraid. The problems were mostly due to the fpdoc having to be fixed for increased generics (and other new constructs) used in Fixes, now it no longer has to compile with 2.6.4, and all of us were a bit short on time. I think I spent more time on FPC in the christmas holiday than in the previous 6 months. ---------------------------------------------------------------------- JD · 2016-12-29 16:22 Quote from: marcov on December 29, 2016, 03:03:39 pmI think I spent more time on FPC in the christmas holiday than in the previous 6 months. Kudos to you all for your hard work. Virtue is its own reward. JD ---------------------------------------------------------------------- Bart · 2017-01-06 10:56 I got a regression which crashes programs. Code: [Select]program test; uses sysutils; begin   writeln('SysErrorMessage(193)=',SysErrorMessage(193)); end. Compile with -gh (heaptrace) and it will crash with 3.0.2. It does not crash with 3.0.0 or trunk (r35221). Code: [Select]C:\Users\Bart\LazarusProjecten\ConsoleProjecten>fpc -gh test.pas Free Pascal Compiler version 2.6.4 [2014/03/06] for i386 C:\Users\Bart\LazarusProjecten\ConsoleProjecten>test SysErrorMessage(193)= Heap dump by heaptrc unit 53 memory blocks allocated : 1237/1456 53 memory blocks freed     : 1237/1456 0 unfreed memory blocks : 0 True heap size : 196608 (112 used in System startup) True free heap : 196496 C:\Users\Bart\LazarusProjecten\ConsoleProjecten>fpc -gh test.pas Free Pascal Compiler version 3.0.0 [2015/11/16] for i386 C:\Users\Bart\LazarusProjecten\ConsoleProjecten>test SysErrorMessage(193)= Heap dump by heaptrc unit 48 memory blocks allocated : 1385/1496 48 memory blocks freed     : 1385/1496 0 unfreed memory blocks : 0 True heap size : 196608 (112 used in System startup) True free heap : 196496 C:\Users\Bart\LazarusProjecten\ConsoleProjecten>fpc -gh test.pas Free Pascal Compiler version 3.0.2rc1 [2016/12/20] for i386 C:\Users\Bart\LazarusProjecten\ConsoleProjecten>test Marked memory at $001C4D78 invalid Wrong size : 255 allocated 510 freed   $0040D639   $00408C76   $004015A8 Call trace for block $001C4D78 size 255   $004015A8 SysErrorMessage(193)=Heap dump by heaptrc unit 48 memory blocks allocated : 1385/1496 47 memory blocks freed     : 1640/1752 1 unfreed memory blocks : -255 True heap size : 196608 (112 used in System startup) True free heap : 196160 Should be : 196688 Call trace for block $001C4D78 size 255   $004015A8 C:\Users\Bart\LazarusProjecten\ConsoleProjecten>fpc -gh test.pas Free Pascal Compiler version 3.1.1 [2017/01/01] for i386 C:\Users\Bart\LazarusProjecten\ConsoleProjecten>test SysErrorMessage(193)= Heap dump by heaptrc unit 48 memory blocks allocated : 1654/1768 48 memory blocks freed     : 1654/1768 0 unfreed memory blocks : 0 True heap size : 425984 (112 used in System startup) True free heap : 425872 I reported it as issue #31197. At the end of the function FreeMem tries to free 2 times the amount of memory that was allocated using GetMem. The regression is caused by r33823 (merging of r33363 to fixes branch). Bart ---------------------------------------------------------------------- Eugene Loza · 2017-01-06 11:31 Great job! Really looking forward to it. Quoteas a (late) Christmas presentAnd we're still having Christmas tomorrow in our country I only wish there were debian packages to download... I've still had no time to find out how to compile FPC safely from the sources on a no-internet computer... ---------------------------------------------------------------------- Bart · 2017-01-06 22:01 Quote from: Bart on January 06, 2017, 11:56:52 amI got a regression which crashes programs. ... The regression is caused by r33823 (merging of r33363 to fixes branch). Fixed in r35246. Bart ---------------------------------------------------------------------- mjustin · 2017-02-17 15:48 Sorry if this is the wrong place to ask, but I noticed a FPC 3.0.2 release announcement on http://freepascal.org/ of 15. February which has a link to the download sites containing only setup files for 3.0.0. Is the release still in progress? I have found some setup files on ftp://freepascal.stack.nl/pub/fpc/dist/3.0.2/ but not for all platforms which were supported by 3.0.0 (x86_64-win64) ---------------------------------------------------------------------- Thaddy · 2017-02-17 15:55 A complete release is a lot of work. The compiler itself won't change (as it is in the tagged repository). The distribution is being build for the supported platforms. Patience should last a maximum of about two weeks. Although this is officially a point release, "there are many new and exiting features" (free citation from the famous David I ) in 3.0.2. ---------------------------------------------------------------------- marcov · 2017-02-17 17:36 Quote from: mjustin on February 17, 2017, 04:48:44 pmI have found some setup files on ftp://freepascal.stack.nl/pub/fpc/dist/3.0.2/ but not for all platforms which were supported by 3.0.0 (x86_64-win64) Most targets have been uploaded. There was however some delay in getting mirrors sycned, so there was no announce yet, but those are the final release binaries. The i386->x86_64 cross binary from 3.0.0 is there, just in a different directory. (i386-win32 instead of x86_64-win64) Afaik there are no official x86_64-win64 native builds. ---------------------------------------------------------------------- mjustin · 2017-02-17 18:04 Quote from: marcov on February 17, 2017, 06:36:41 pmAfaik there are no official x86_64-win64 native builds. Thanks, I understand it now. I used Lazarus for 64 Bit Windows which it includes its own FPC 3.0.0, and wrongly assumed a setup would be available on the distribution server.