<div dir="ltr"><div class="gmail_extra">Maciej,</div><div class="gmail_extra"><br></div><div class="gmail_extra">From your example code, the usage looks exactly like what I'd want. One question though. Would the magic code also work with var and out arguments?</div><div class="gmail_extra"><br></div><div class="gmail_extra">That is with (note these functions are generic):</div><div class="gmail_extra"><br></div><div class="gmail_extra">procedure Foo1<T>(A: TArray<T>);</div><div class="gmail_extra">procedure Foo2<T>(var A: TArray<T>);<br></div><div class="gmail_extra">procedure Foo3<T>(out A: TArray<T>);<br></div><div class="gmail_extra"><br></div><div class="gmail_extra">Where each can be called with a <span style="font-size:12.8px">TManagedArray<T> as the "A" argument without qualifying the Instance field?</span></div><div class="gmail_extra"><span style="font-size:12.8px"><br></span></div><div class="gmail_extra"><span style="font-size:12.8px">var</span></div><div class="gmail_extra"><span style="font-size:12.8px">  A: TManagedArray<Integer>;</span></div><div class="gmail_extra"><span style="font-size:12.8px">begin</span></div><div class="gmail_extra"><span style="font-size:12.8px">  Foo3(A);</span></div><div class="gmail_extra"><span style="font-size:12.8px">  Foo2(A);</span></div><div class="gmail_extra"><span style="font-size:12.8px">  Foo1(A);</span></div><div class="gmail_extra"><span style="font-size:12.8px">end;</span></div></div>