View Issue Details

IDProjectCategoryView StatusLast Update
0037241FPCCompilerpublic2020-07-03 11:25
ReporterErich Eckner Assigned To 
Status closedResolutionfixed 
Platformx86_64OScrux linux 
Product Version3.2.0 
Summary0037241: Internal error 200510032 for inline methods that have not been inlined
DescriptionWhen compiling the test program (this is a reduced program from my original program - maybe, there is a simpler version to trigger the error, but I could not find one in a greedy way) in objfpc mode, internal error 200510032 is raised. This can be fixed by removing "inline" from any of the mentioned methods. Strangely, when making "count" non-inline or when changing the output type of minMaxY from tPoint to integer raises some strange linker error instead (so I assume, the internal compiler error is also gone, but I cannot be sure about that).

fpc is a custom build, but it's pretty straight-forward (it uses mainly the build instructions from arch linux):

P.S.: there is no version 3.2.0 in the drop-down for the "product version"
Steps To Reproducecat >test.pas <<EOF
program test;

{\$mode objfpc}{\$H+}

  Classes, SysUtils;

  tMessPunkt = class
    function rMW: integer; inline;
    property mW: integer
      read rMW;

  tMessPunkteListe = class
    function rItem(i: longint): tMessPunkt; inline;
    function count: longint; inline;
    property items[i: longint]: tMessPunkt
      read rItem; default;
    function minMaxY: tPoint;

function tMessPunkt.rMW: integer;

function tMessPunkteListe.rItem(i: longint): tMessPunkt;
  if i>=count then
    raise exception.create('i too large');

function tMessPunkteListe.count: longint;

function tMessPunkteListe.minMaxY: tPoint;


fpc -MObjFPC test.pas
Additional InformationThis seems to have worked with fpc 3.0.4 before, but I am not 100% sure about that.
TagsNo tags attached.
Fixed in Revision
Attached Files


Marco van de Voort

2020-06-23 16:37

manager   ~0123532

(3.2.0 had status not released. Fixed I hope)


2020-06-23 18:22

reporter   ~0123535

$fpc -MObjFPC test.pas
Free Pascal Compiler version 3.3.1 [2020/06/22] for x86_64
Copyright (c) 1993-2020 by Florian Klaempfl and others
Target OS: Linux for x86-64
Compiling test.pas
test.pas(34,9) Note: Call to subroutine "function tMessPunkteListe.count:LongInt;" marked as inline is not inlined
Linking test
51 lines compiled, 0.4 sec
1 note(s) issued

Issue History

Date Modified Username Field Change
2020-06-23 16:31 Erich Eckner New Issue
2020-06-23 16:36 Marco van de Voort Product Version => 3.2.0
2020-06-23 16:36 Marco van de Voort FPCTarget => -
2020-06-23 16:37 Marco van de Voort Note Added: 0123532
2020-06-23 18:22 delfion Note Added: 0123535
2020-07-03 11:25 Erich Eckner Status new => closed
2020-07-03 11:25 Erich Eckner Resolution open => fixed