Hello,
I found something I think can be problem with lazarus on win64:
Revision 27315:
Index: trunk/ide/mainbase.pas
===================================================================
--- trunk/ide/mainbase.pas (revision 27314)
+++ trunk/ide/mainbase.pas (revision 27315)
@@ -1092,7 +1092,7 @@
CurMenuItem.Caption :=
SourceEditorManager.SourceEditors[i].PageName;
CurMenuItem.MenuItem.Checked := SourceEditorManager.ActiveEditor =
SourceEditorManager.SourceEditors[i] ;
CurMenuItem.OnClick := @mnuWindowSourceItemClick;
- CurMenuItem.Tag :=
PtrInt(Pointer(SourceEditorManager.SourceEditors[i]));
+ CurMenuItem.Tag :=
Integer(Pointer(SourceEditorManager.SourceEditors[i]));
inc(ItemCount);
end;
end;
If Tag is Integer on 64bit then adding pointers to Tag is a bug.
Integer is 32bit in 64bit compiler:
http://wiki.freepascal.org/Integer
Greetings
Andrzej Kilijanski
Dnia 14-10-2010 o 00:26:16 Maxim Ganetsky <[email protected]> napisał(a):
14.10.2010 1:52, Willibald Krenn пишет:
Am 13.10.2010 21:34, schrieb Willibald Krenn:
Yes, your output seems to be fine! I'll try upgrading my gdb to a newer
version - hope this helps. If this is working, then I think we should
switch to DWARF2 on Win64 and close all related bugs in mantis. ;-)
I upgraded my version of gdb and that fixed the problem. Small
disadvantage, though: DWARF debug info disables smart linking :-(.
Anyway, while fpc and gdb are working now, Lazarus fails to pick up the
correct address if it is outside of the 32 bit range:
<info address FPC_RAISEEXCEPTION>
&"info address FPC_RAISEEXCEPTION\n"
~"Symbol \"FPC_RAISEEXCEPTION\" is at 0x100008a30 in a file compiled
without debugging.\n"
^done
(gdb)
<-break-insert *35376>
^done,bkpt={number="2",type="breakpoint",disp="keep",enabled="y",addr="0x0000000000008a30",at="",times="0",original-location="*35376"}
(gdb)
Please create a bug report for Lazarus with a test project.
_______________________________________________
fpc-devel maillist - [email protected]
http://lists.freepascal.org/mailman/listinfo/fpc-devel