<p>Hi,</p>
<p>I committed Max&#39;s patch on the origin/master branch.</p>
<p>Regards,<br>
Sylvain  </p>
<p>On 12 Jun 2010 00:12, &quot;Sylvain Bougerel&quot; &lt;<a href="mailto:sylvain.bougerel.devel@gmail.com">sylvain.bougerel.devel@gmail.com</a>&gt; wrote:<br type="attribution">&gt; Thanks for the patch Max. If I can&#39;t put it in the code tomorrow, I&#39;ll check<br>
&gt; if others can do it.<br>&gt; <br>&gt; On 11 Jun 2010 15:32, &quot;Max Kellermann&quot; &lt;<a href="mailto:max@duempel.org">max@duempel.org</a>&gt; wrote:<br>&gt;&gt; kdtree.hpp does not compile with LLVM&#39;s clang++ compiler, because it<br>
&gt;&gt; violates the C++ standard, resulting in the error message:<br>&gt;&gt;<br>&gt;&gt; &quot;must qualify identifier to find this declaration in dependent base<br>&gt;&gt; class&quot;<br>&gt;&gt;<br>&gt;&gt; This is best explained on the clang home page:<br>
&gt;&gt;<br>&gt;&gt; <a href="http://clang.llvm.org/cxx_compatibility.html">http://clang.llvm.org/cxx_compatibility.html</a><br>&gt;&gt;<br>&gt;&gt; &quot;When we look up a name used in a class, we usually look into the base<br>
&gt;&gt; classes. However, we can&#39;t look into the base class Base&lt;T&gt; because<br>&gt;&gt; its type depends on the template argument T, so the standard says we<br>&gt;&gt; should just ignore it.&quot;<br>&gt;&gt; ---<br>
&gt;&gt; kdtree++/kdtree.hpp | 6 +++---<br>&gt;&gt; 1 files changed, 3 insertions(+), 3 deletions(-)<br>&gt;&gt;<br>&gt;&gt; diff --git a/kdtree++/kdtree.hpp b/kdtree++/kdtree.hpp<br>&gt;&gt; index 62464a3..706d58d 100644<br>
&gt;&gt; --- a/kdtree++/kdtree.hpp<br>&gt;&gt; +++ b/kdtree++/kdtree.hpp<br>&gt;&gt; @@ -1169,7 +1169,7 @@ namespace KDTree<br>&gt;&gt; {<br>&gt;&gt; typename _Base::NoLeakAlloc noleak(this);<br>&gt;&gt; _Link_type new_node = noleak.get();<br>
&gt;&gt; - _M_construct_node(new_node, __V, __PARENT, __LEFT, __RIGHT);<br>&gt;&gt; + _Base::_M_construct_node(new_node, __V, __PARENT, __LEFT, __RIGHT);<br>&gt;&gt; noleak.disconnect();<br>&gt;&gt; return new_node;<br>&gt;&gt; }<br>
&gt;&gt; @@ -1187,8 +1187,8 @@ namespace KDTree<br>&gt;&gt; void<br>&gt;&gt; _M_delete_node(_Link_type __p)<br>&gt;&gt; {<br>&gt;&gt; - _M_destroy_node(__p);<br>&gt;&gt; - _M_deallocate_node(__p);<br>&gt;&gt; + _Base::_M_destroy_node(__p);<br>
&gt;&gt; + _Base::_M_deallocate_node(__p);<br>&gt;&gt; }<br>&gt;&gt;<br>&gt;&gt; _Link_type _M_root;<br>&gt;&gt;<br>&gt;&gt;<br>&gt;&gt; _______________________________________________<br>&gt;&gt; libkdtree-devel mailing list<br>
&gt;&gt; <a href="mailto:libkdtree-devel@lists.alioth.debian.org">libkdtree-devel@lists.alioth.debian.org</a><br>&gt;&gt; <a href="http://lists.alioth.debian.org/mailman/listinfo/libkdtree-devel">http://lists.alioth.debian.org/mailman/listinfo/libkdtree-devel</a><br>
</p>