[lazarus] Win32 Interface

Marc Weustink marc at dommelstein.net
Sun Jun 22 17:42:20 EDT 2003


At 23:40 22-6-2003 +0200, Marc Weustink wrote:
>At 16:32 22-6-2003 +0200, Mattias Gaertner wrote:
>>On Sun, 22 Jun 2003 14:37:42 +0200
>>Marc Weustink <marc at dommelstein.net> wrote:
>>
>> > At 10:56 22-6-2003 +0200, Mattias Gaertner wrote:
>> > >On Sat, 21 Jun 2003 22:52:57 -0300
>> > >"Horacio Jamilis" <hjamilis at pymesoft.com.ar> wrote:
>> > >
>> > > > Hi,
>> > > >
>> > > > I was trying to compile lazarus under Win32 to start debuging it.
>> > > >
>> > > > When I tried to "make DEBUG=1 clean all" to build lazarus with
>> > > > debuging information, it fails.
>> > >
>> > >Under linux with the gtk-interface, I also got a few compiler warnings
>> > >when DEBUG=1. I fixed them. But running the IDE failed with range check
>> > >errors. Marc, the debugger goes into an endless loop on the range check.
>> >
>> > YM, when you build with rangecheck and you hit a range error ? Or is
>> > building enough ?
>>
>>Just build lazarus with "make DEBUG=1 clean all" and run it. There are some
>>cardinal/longint checks, that causes a range check error at runtime, but not
>>at compile time. For example passing a TColor to a parameter of type
>>TColorRef. Normally, the compiler should warn, but it does not. So, we have
>>to spot these things by debugging. But, as you know, gdb does not stop on
>>range check errors (it needs some breakpoints). It would save some time, if
>>the IDE could debug itself and stop automatically on range check errors.
>
>OK, I'll add them.


Ehm... can you give an example where the debugger doesn't stop ?

Something like the following raises an excepton and stops

var
   c: Cardinal;
begin
   c := 12345;
   {$R+}
   c := -c;
   {$R-}
end;


Marc






More information about the Lazarus mailing list