On Sun, Aug 12, 2018 at 5:40 PM Bart <bartjun...@gmail.com> wrote:

> const
>   x = ShortString('abc');
> begin
>   writeln(SizeOf(x));
> end.
>
> Delphi (7) prints 256, fpc prints 3.
>
> Is that a bug or an implementation detail?
>

Implementation detail.
And it seems to be wrong on Delphi size, because for reason it assigns a
type to a (non-typed) constant.
It would make sense to return 256, if the constant was declared like this:
const
   x : ShortString = 'abc';
and fpc does recognize such typed constant as 256 in size.

It's odd that such expression compiles w/o any warnings or notes. (i.e.
"ignoring typecasting for constant value expressions")

thanks,
Dmitry
_______________________________________________
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel

Reply via email to