Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / fpc-pascal / 2017-07

Free Pascal 3.0.4-rc1 released!

8 messages · 3 people · –

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Marco van de Voort

Hello,

We have placed the first release candidate of the Free Pascal Compiler version 3.0.4 on our ftp servers.

You can help improve the upcoming 3.0.4 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.4 or in the maillist.

Changes that may break backwards compatibility will be documented at: http://wiki.freepascal.org/User_Changes_3.0.4

Downloads are available at the main FTP server and

ftp://freepascal.stack.nl/pub/mirrors/fpc/beta/3.0.4-rc1/

Enjoy!

The Free Pascal Compiler Team

Free Pascal Compiler

Version 3.0.4

****************************************************************************** What's New in 3.0.4
******************************************************************************

Free Pascal 3.0.4 is a point release of the 3.0.x fixes branch.

Please also see http://wiki.freepascal.org/User_Changes_3.0.4 for a list of changes that may affect the behaviour of previously working code, and how to cope with these changes.

Some highlights are:

Rtl:
* fix traceback on ELF based systems

Packages:
* fcl-pdf updates
* fcl-passrc updates.

See http://bugs.freepascal.org/changelog_page.php for the list of reported bugs which have been fixed in this release.

Mattias Gaertner
to Marco van de Voort
[...] ftp://freepascal.stack.nl/pub/mirrors/fpc/beta/3.0.4-rc1/

The fpc-3.0.4-0.rc1.x86_64.rpm does not work on Fedora 21 x86_64:

Free Pascal Compiler version 3.0.4rc1 [2017/07/02] for x86_64 Copyright (c) 1993-2017 by Florian Klaempfl and others Target OS: Linux for x86-64
Compiling test.pas
Linking test
/usr/bin/ld: warning: link.res contains output sections; did you forget -T? /usr/bin/ld: /usr/lib64/fpc/3.0.4/units/x86_64-linux/rtl/prt0.o: unrecognized relocation (0x2a) in section `.text' /usr/bin/ld: final link failed: Bad value
test.pas(3,1) Error: Error while linking
test.pas(3,1) Fatal: There were 1 errors compiling module, stopping Fatal: Compilation aborted
Error: /usr/bin/ppcx64 returned an error exitcode

Should I create a bug report?

Mattias

Marco van de Voort
to Mattias Gaertner

In our previous episode, Mattias Gaertner said:

Show quoted text 19 lines
>[...] > ftp://freepascal.stack.nl/pub/mirrors/fpc/beta/3.0.4-rc1/ The fpc-3.0.4-0.rc1.x86_64.rpm does not work on Fedora 21 x86_64: Free Pascal Compiler version 3.0.4rc1 [2017/07/02] for x86_64 Copyright (c) 1993-2017 by Florian Klaempfl and others Target OS: Linux for x86-64 Compiling test.pas Linking test /usr/bin/ld: warning: link.res contains output sections; did you forget -T? /usr/bin/ld: /usr/lib64/fpc/3.0.4/units/x86_64-linux/rtl/prt0.o: unrecognized relocation (0x2a) in section `.text' /usr/bin/ld: final link failed: Bad value test.pas(3,1) Error: Error while linking test.pas(3,1) Fatal: There were 1 errors compiling module, stopping Fatal: Compilation aborted Error: /usr/bin/ppcx64 returned an error exitcode Should I create a bug report?

Yes, but make sure it is RPM/fedora in the title, so the fedora maintainer sees it.

A linker version would also be nice.

Marco van de Voort
to Mattias Gaertner

In our previous episode, Mattias Gaertner said:

Show quoted text 7 lines
>[...] > Downloads are available at the main FTP server and > > ftp://freepascal.stack.nl/pub/mirrors/fpc/beta/3.0.4-rc1/ Where is the Mac OS X version?

Not uploaded.

Graeme Geldenhuys
to Marco van de Voort: We have placed the first release candidate of the Free Pascal Compiler version 3.0.4 on…
Marco van de Voort wrote
We have placed the first release candidate of the Free Pascal Compiler version 3.0.4 on our ftp servers.

Many thanks Marco and the rest of the FPC team. I did some testing today for a couple of hours with the 64-bit FreeBSD 10.x release candidate and so far it seems to be working without a hitch. I'll continue using it and report any issues that might crop up.

Regards,
Graeme

fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/ My public PGP key: http://tinyurl.com/graeme-pgp
Graeme Geldenhuys
to Marco van de Voort: We have placed the first release candidate of the Free Pascal Compiler version 3.0.4 on…
Marco van de Voort wrote
You can help improve the upcoming 3.0.4 release by downloading and testing this release.

I've been using FPC 3.0.4 for a while now under 64-bit FreeBSD. I've noticed that a tracelog with line info generated by the applications are not working as they did in FPC 2.6.4. I then tested with FPC 3.0.2, and it seems broken there too (I've never really used FPC 3.0.x for production code yet). The problem - there is no line information.

For example:

****** Compiled with FPC 3.0.2 or FPC 3.0.4 - no line info

[t1]$ ./project1
THook did it
Heap dump by heaptrc unit
4 memory blocks allocated : 115/120
2 memory blocks freed : 67/72
2 unfreed memory blocks : 48
True heap size : 1146880 (32 used in System startup) True free heap : 1146496
Should be : 1146544
Call trace for block $00000008007390C0 size 32
Call trace for block $00000008007310C0 size 16

****** Compiled with FPC 2.6.4 - not the line info pointing to ****** the originating point of a memory leak

[t1]$ ./project1
THook did it
Heap dump by heaptrc unit
4 memory blocks allocated : 99/104
2 memory blocks freed : 51/56
2 unfreed memory blocks : 48
True heap size : 1146880 (32 used in System startup) True free heap : 1146496
Should be : 1146544
Call trace for block $00000008007370C0 size 32
$0000000000400379 line 35 of project1.lpr
Call trace for block $000000080072F0C0 size 16

Regards,
Graeme

fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/ My public PGP key: http://tinyurl.com/graeme-pgp
Graeme Geldenhuys
to Graeme Geldenhuys
Graeme Geldenhuys wrote
For example: ****** Compiled with FPC 3.0.2 or FPC 3.0.4 - no line info

The complete sample application is here:

=======================[ project1.pas ]============================
program project1;
{$mode objfpc}{$H+}
{$interfaces COM}
type
    IHook = interface
      ['{4BCAEDD8-92D8-11E7-88D3-C86000E37EB0}']
      procedure DoIt;
    end;
type
    THook = class(TInterfacedObject, IHook)
    private
      procedure DoIt;
    end;
    procedure THook.DoIt;
    begin
      writeln(ClassName + ' did it');
    end;
type
    TBaseClass = class(TInterfacedObject, IHook)
    private
      FHook: IHook;
      property Hook: IHook read FHook implements IHook;
    public
      constructor Create;
      destructor Destroy; override;
    end;
    constructor TBaseClass.Create;
    begin
      FHook := THook.Create;  // FPC 2.6.4 reports a memory leak here
    end;
    destructor TBaseClass.Destroy;
    begin
      // nothing to do here
    end;
var
    base: IHook;
begin
    base := TBaseClass.Create;
    base.DoIt;
    base := nil; // just to see if it helped with the memory leak - it
doesn't
end.
==============================[ end ]==============================

Regards,
Graeme

fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/ My public PGP key: http://tinyurl.com/graeme-pgp