Reading from TPDL again, the "final void thereandback()" method in the interface is what the user code is expected to call. That method calls two private methods. But it will call the two private methods in the interface, not the two from the derived class (since private methods are not virtual). E.g. calling thereandback() explicitly from a derived object will call the interface method, since it is final, which then calls the private methods from the interface.<br>
<br>It's like a dead-end here. <br><br><div class="gmail_quote">On Wed, Aug 11, 2010 at 3:23 PM, Andrej Mitrovic <span dir="ltr"><<a href="mailto:andrej.mitrovich@gmail.com">andrej.mitrovich@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">DMD and TDPL will get in sync one day, I hope.<br><br><div class="gmail_quote">2010/8/11 Adrian Matoga <span dir="ltr"><<a href="mailto:epi@atari8.info" target="_blank">epi@atari8.info</a>></span><div>
<div></div><div class="h5"><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
I get these in both cases:<br>
<br>
output\interface_test.obj(interface_test) Error 42: Symbol Undefined _D14interface_test14Transmogrifier12transmogrifyMFZv<br>
output\interface_test.obj(interface_test) Error 42: Symbol Undefined _D14interface_test14Transmogrifier14untransmogrifyMFZv<br>
</blockquote>
<br></div>
I reported this as a bug a few days ago:<br>
<a href="http://d.puremagic.com/issues/show_bug.cgi?id=4542" target="_blank">http://d.puremagic.com/issues/show_bug.cgi?id=4542</a><br>
<br>
I like the NVI idiom and hope this will finally work in future releases.<br><font color="#888888">
<br>
Adrian<br>
</font></blockquote></div></div></div><br>
</blockquote></div><br>