[fpc-devel] Propose: change TComponent.Tag from longint to PtrInt
Vincent Snijders
vsnijders at quicknet.nl
Mon Sep 4 13:16:11 CEST 2006
Daniël Mantione schreef:
>
> Op Mon, 4 Sep 2006, schreef Vincent Snijders:
>
>> Daniël Mantione schreef:
>>> Op Mon, 4 Sep 2006, schreef Mattias Gaertner:
>>>
>>>> Me2.
>>>>
>>>> Just one disadvantage:
>>>> The Tag is published.
>>>> If someone stores a 64bit value and the component is stored,
>>>> the stream can not be read under 32bit anymore.
>>> ...which makes it impossible to use streams for anything derived from
>>> Tcomponent, which is really a lot. I don't think we should break this
>>> feature to allow broken code to work.
>> Really a lot? Can you give examples where numbers > maxint are streamed?
>
> Even if you stream a zero it breaks.
>
Then Lazarus uses an advanced streaming mechanism, which looks at the size of the
value and decides to 1, 2, 4 or 8 bytes for an int64, when streaming a form.
I thought this was more or less standard behaviour.
Vincent
More information about the fpc-devel
mailing list