[fpc-devel] Const optimization is a serious bug
Alexander Klenin
klenin at gmail.com
Thu Jul 7 19:14:21 CEST 2011
On Fri, Jul 8, 2011 at 04:06, Florian Klämpfl <florian at freepascal.org> wrote:
> Am 07.07.2011 19:00, schrieb Alexander Klenin:
>> Currently, there are four meaninigs of "const":
>> 1) "Const by value" -- like Integer
>> 2) "Const by reference" -- like shortstring
>> 3) "Const by reference, but not really const" -- like objects
>> 4) "Const by value, excapt rare breakage" -- AnsiString
>> (and interfaces, but let's not touch that can of worms in this thread :-) )
>>
>> I propose to remove meaning (4).
>>
>
> Unlogical. 2) and 4) are coupled.
This whole construct is unlogical. Logically, "const a" should mean
just "assignment to a is a compile-time error".
But this is not achievable due to compatibility reasons.
Still, I suggest that (4) is a (small, but still) evil, and sould be removed.
--
Alexander S. Klenin
More information about the fpc-devel
mailing list