[fpc-devel] Component FTag and Tag should be int64
Dimitri Smits
smitco at telenet.be
Mon Nov 22 16:40:19 CET 2010
----- "michael vancanneyt" <michael.vancanneyt at wisa.be> schreef:
> On Mon, 22 Nov 2010, Andrew Brunner wrote:
>
> > I was looking at the code for Tag property in classes unit and
> noticed I can't safely use Tag to keep runtime pointers (at least on a
> 64 bit compile). What is the likelihood of getting tags changed to
> support universal access under 64/32 bit compiles?
> >
> > What is the logic behind the shortfall? I suspect just legacy and it
> could be easily fixed.
> _______________________________________________
>
> The logic is that it is bad programming to use an integer to store a
> pointer.
> And we don't want to encourage bad programming.
>
> Yes, I know it's easy, and yes I know it's common practice.
> Neither make it right to do so.
>
+6499999999
Never EVER fall into the VB bullshit trap that is the Tag property. Related to that matter, Windows/delphi has a few of these "Data pointers", especially the stuff that is lower-level and is used to invoke the winapi with as a parameter (callbacks anyone?). Always try to stay clear of it as much as possible, because it does encourage and even invite bad programming.
> We'll fix the issue as the upcoming Delphi 64-bit - unfortunately -
> forces us
> to follow suit.
sad to read this part though...
kind regards,
Dimitri Smits
More information about the fpc-devel
mailing list