Hi,<br><br>Personally I stopped using 'with' keyword long time ago, but there are code fragments from the past and today I fixed a little bug showing again that it's a evil. TCanvas in lazarus has width and height properties while in Delphi it hasn't (at least some time ago). So the code below leads to different results in lazarus and Delphi, at least for design-time drawing. <br>

<br>procedure TControlDescendant.Paint;<br>begin<br>  with Canvas do<br>  begin<br>      Rectangle(0, 0, Width, Height);<br>  edn;<br>end;<br><br>So not only the 'with' context can silently change while the project is evolving, it can also change while it's being ported...<br>

<br>Max<br>