<div dir="auto"><div><div class="gmail_quote"><div dir="ltr">Am Fr., 11. Jan. 2019, 14:52 hat Mattias Gaertner via fpc-pascal <<a href="mailto:fpc-pascal@lists.freepascal.org">fpc-pascal@lists.freepascal.org</a>> geschrieben:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Fri, 11 Jan 2019 14:27:13 +0100<br>
Sven Barth via fpc-pascal <<a href="mailto:fpc-pascal@lists.freepascal.org" target="_blank" rel="noreferrer">fpc-pascal@lists.freepascal.org</a>> wrote:<br>
<br>
>[...]<br>
> This is by design. In this case DoIt is called on a temp variable<br>
> that gets its value from b.w, the value of b.FW does not change<br>
<br>
Ehm, in this case b.FW *does* changes.<br>
Maybe you mean the case<br>
  property W: word read GetW; <br>
?<br>
<br>
With a getter method indeed a temp variable is changed by the<br>
helper.<br></blockquote></div></div><div dir="auto"><br></div><div dir="auto">Dang it. Seems I've missed that part of your example. In my opinion it should use a temp in that case. </div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
> (same<br>
> reason why the C operators do not work on properties). Same happens<br>
> with constants btw: Word(42).DoIt will work as well.<br>
<br>
Well, at least 3.DoIt is rejected.<br></blockquote></div></div><div dir="auto"><br></div><div dir="auto">"3" is not a Word ;) </div><div dir="auto"><br></div><div dir="auto">Regards, </div><div dir="auto">Sven </div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"></blockquote></div></div></div>