On 28 Apr 2009, at 13:48, Benedikt Schindler wrote:

----------------------
Also this one works:
----------------------

--- /media/mmcblk0p3/lazarus/lcl/interfaces/gtk/ gtkwidgetset.inc.orig Tue Apr 28 10:24:19 2009 +++ /media/mmcblk0p3/lazarus/lcl/interfaces/gtk/ gtkwidgetset.inc Tue Apr 28 10:47:25 2009
@@ -302,6 +302,8 @@
     inc(i);
   end;
 end;
+var
+  index : integer;
begin
 gtk_init(@argc,@argv);
UseTransientForModalWindows:=not SearchOption('--lcl-no- transient',true);

All of your workarounds have one thing in common: they cause an extra stack slot to be allocated (either via a local variable, or via an implicit temporary location allocated by the compiler), thereby changing the stack alignment by 4 bytes. Have your tried using the latest 2.3.1 compiler from svn? I fixed the stack alignment bugs on ARM in r13030 (on eabi, you need a stack alignment of 8 bytes, while the compiler only guaranteed 4).


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

Reply via email to