Why do people insist on speculating as to the cause of the problem when they can just look at the VCL source and see the very simple and ordinary explanation ?!?!
The problem is simply an incorrect and misleading error raised by the VCL based on a naïve assumption. No violation of OO principles, no funky cast/recast type violations, just bogus error handling that has all the hallmarks of intern code. Reach out with your feelings USE THE SOURCE! From: delphi-boun...@delphi.org.nz [mailto:delphi-boun...@delphi.org.nz] On Behalf Of Kyley Harris Sent: Tuesday, 16 February 2010 12:31 p.m. To: NZ Borland Developers Group - Delphi List Subject: Re: [DUG] Is it a bug in latest version of Delphi? Pointers and TObject are unsigned integers (cardinals) not (integer) casting to -1 is converting to the cardinal equvalent, which when pulled back is making an out of bounds integer.. just a guess and it probably has something to do with the compiler typecasting rules you have designated. On Tue, Feb 16, 2010 at 11:41 AM, Ross Levis <r...@stationplaylist.com> wrote: I often use the Object property of listbox and TStringList items to store pointers, or just numbers for array subscripts. I don't see any problem doing that as it can save a lot of time. It is just an integer variable internally. I seem to remember coming across the same problem once (D7) and had to use -2 instead of -1 to indicate no value or something of that nature. I'm not sure why. The integer always exists and defaults to a value of 0. Ross. -----Original Message----- From: delphi-boun...@delphi.org.nz [mailto:delphi-boun...@delphi.org.nz] On Behalf Of Alister Christie Sent: Tuesday, 16 February 2010 10:20 a.m. To: NZ Borland Developers Group - Delphi List Subject: Re: [DUG] Is it a bug in latest version of Delphi? I can confirm that ListBox1.Items.AddObject('foo', TObject(-1)); ShowMessage(IntToStr(Integer(ListBox1.Items.Objects[0]))); gives an error but ListBox1.Items.AddObject('foo', TObject(0)); ShowMessage(IntToStr(Integer(ListBox1.Items.Objects[0]))); does not I think casting -1 to an object is probably not the best idea - what memory location does this point to anyway? 0xFFFFFFFF? Alister Christie Computers for People Ph: 04 471 1849 Fax: 04 471 1266 http://www.salespartner.co.nz PO Box 13085 Johnsonville Wellington sinu sudhakaran wrote: > Hi all, > > I came across a strange bug(???) in latest versions of Delphi. > > Have a look at the following code. > > procedure TForm1.Button1Click(Sender: TObject); > var > i : integer; > begin > ComboBox1.Clear; > ComboBox1.Items.AddObject('All Locations', TObject(-1)); > ComboBox1.Items.AddObject('Only this Location', TObject(0)); > ComboBox1.Items.AddObject(Test Location', TObject(1)); > > i := Integer(ComboBox1.Items.Objects[0]); > showmessage(inttostr(i)); > end; > > When I tried to run this code in Delphi 6 and Delphi 2007 , I am > getting List Index out of bounds[0] error in Showmessage. When I tried > -2, -3, -4 instead of -1 object , I got the proper output without any > List index out of bounds error. Also I am getting -1 without any error > when I tried this code in Delphi 3. > > Is it a bug in latest version of Delphi ? Any help is appreciated. > > Thank you > > Regards, > Sinu > > <http://sigads.rediff.com/RealMedia/ads/click_nx.ads/www.rediffmail.com/sign atureline....@middle?> > > > ------------------------------------------------------------------------ > > _______________________________________________ > NZ Borland Developers Group - Delphi mailing list > Post: delphi@delphi.org.nz > Admin: http://delphi.org.nz/mailman/listinfo/delphi > Unsubscribe: send an email to delphi-requ...@delphi.org.nz with Subject: unsubscribe _______________________________________________ NZ Borland Developers Group - Delphi mailing list Post: delphi@delphi.org.nz Admin: http://delphi.org.nz/mailman/listinfo/delphi Unsubscribe: send an email to delphi-requ...@delphi.org.nz with Subject: unsubscribe _______________________________________________ NZ Borland Developers Group - Delphi mailing list Post: delphi@delphi.org.nz Admin: http://delphi.org.nz/mailman/listinfo/delphi Unsubscribe: send an email to delphi-requ...@delphi.org.nz with Subject: unsubscribe -- Kyley Harris Harris Software +64-21-671-821
_______________________________________________ NZ Borland Developers Group - Delphi mailing list Post: delphi@delphi.org.nz Admin: http://delphi.org.nz/mailman/listinfo/delphi Unsubscribe: send an email to delphi-requ...@delphi.org.nz with Subject: unsubscribe