On 04 Jun 2010, at 00:23, José Mejuto wrote:

Thursday, June 3, 2010, 6:51:22 PM, you wrote:

JM> Since the RTL is compiled with optimisation enabled, you may
JM> be missing intermediate stack frames. You will have to recompile
JM> it without optimisations to get a full backtrace.

Done, the halt is in fpc code:

---------------------------------------
Function fpc_Catches(Objtype : TClass) : TObject;[Public, Alias : 'FPC_CATCHES']; compilerproc;
var
 _Objtype : TExceptObjectClass;
 _ExceptObjectStack : PExceptObject;
begin
 _ExceptObjectStack:=ExceptObjectStack;
 If _ExceptObjectStack=Nil then
  begin
{$ifdef excdebug}
    Writeln ('Internal error.');
{$endif}
    halt (255);
  end;
[...]
---------------------------------------

And this is the backtrace. Any idea ?

Maybe you are executing Pascal code in threads that have not been started via the FPC rtl? (i.e., not via beginthread nor via tthread.create) That is not supported on Unix platforms.


Jonas_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal

Reply via email to