<div dir="ltr"><div>You were right, some of my sip files were out of sync with the C++ header files.</div><div><br></div><div>Since the adding of the override keyword in the generated bindings code, the signature of the virtual <br></div><div>methods must not differ between files. I had some methods whose signatures were missing some <br></div><div>const keywords for instance. I managed to fix all of that, gory details can be found here:</div><div><a href="https://github.com/anlambert/tulip/commit/5cab5e2aeab0f30491d9e7d812d941bcdadc3f16" target="_blank">https://github.com/anlambert/tulip/commit/5cab5e2aeab0f30491d9e7d812d941bcdadc3f16</a><br></div><div><br></div><div>Sorry for the noise.</div><div><br></div><div>Best regards <div class="gmail-yj6qo gmail-ajU"><div id="gmail-:p0" class="gmail-ajR" tabindex="0"><img class="gmail-ajT" src="https://ssl.gstatic.com/ui/v1/icons/mail/images/cleardot.gif"></div></div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">Le sam. 2 mars 2019 à 10:23, Phil Thompson <<a href="mailto:phil@riverbankcomputing.com">phil@riverbankcomputing.com</a>> a écrit :<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On 1 Mar 2019, at 7:38 pm, Antoine Lambert <<a href="mailto:antoine.lambert33@gmail.com" target="_blank">antoine.lambert33@gmail.com</a>> wrote:<br>
> <br>
> Hi,<br>
> <br>
> I wanted to upgrade sip to its latest upstream version for generating the Python bindings of the Tulip graph visualization framework. But the newly generated bindings code fails to compile and the following type of errors are reported.<br>
> <br>
> [ 80%] Building CXX object library/tulip-python/bindings/tulip-core/CMakeFiles/tulip-core-python-bindings.dir/sip_tulippart6.cpp.o<br>
> /home/antoine/dev/tulip_build/library/tulip-python/bindings/tulip-core/sip_tulippart4.cpp:12799:10: error: ‘bool siptlp_GraphProperty::setAllNodeStringValue(const string&, tlp::Graph*)’ marked ‘override’, but does not override<br>
> void siptlp_GraphProperty::treatEvents(const std::vector< ::tlp::Event>& a0)<br>
> ^~~~~~~~~~~~~~~~~~~~~<br>
> /home/antoine/dev/tulip_build/library/tulip-python/bindings/tulip-core/sip_tulippart4.cpp:12800:10: error: ‘bool siptlp_GraphProperty::setStringValueToGraphNodes(const string&, tlp::Graph*)’ marked ‘override’, but does not override<br>
> {<br>
> ^ <br>
> /home/antoine/dev/tulip_build/library/tulip-python/bindings/tulip-core/sip_tulippart4.cpp:12803:10: error: ‘bool siptlp_GraphProperty::setAllEdgeStringValue(const string&, tlp::Graph*)’ marked ‘override’, but does not override<br>
> <br>
> ^ <br>
> /home/antoine/dev/tulip_build/library/tulip-python/bindings/tulip-core/sip_tulippart4.cpp:12804:10: error: ‘bool siptlp_GraphProperty::setStringValueToGraphEdges(const string&, tlp::Graph*)’ marked ‘override’, but does not override<br>
> sipMeth = sipIsPyMethod(&sipGILState,&sipPyMethods[1],sipPySelf,SIP_NULLPTR,sipName_treatEvents);<br>
> ^~~~~~~~~~~~~~~~~~~~~~~~~~<br>
> /home/antoine/dev/tulip_build/library/tulip-python/bindings/tulip-core/sip_tulippart4.cpp:12807:20: error: ‘std::__cxx11::string siptlp_GraphProperty::getNodeStringValue(tlp::node)’ marked ‘override’, but does not override<br>
> {<br>
> ^ <br>
> /home/antoine/dev/tulip_build/library/tulip-python/bindings/tulip-core/sip_tulippart4.cpp:12808:20: error: ‘std::__cxx11::string siptlp_GraphProperty::getEdgeStringValue(tlp::edge)’ marked ‘override’, but does not override<br>
> ::tlp::GraphProperty::treatEvents(a0);<br>
> ^~~~~~~~~~~~~~~~~~<br>
> /home/antoine/dev/tulip_build/library/tulip-python/bindings/tulip-core/sip_tulippart4.cpp:15527:10: error: ‘void siptlp_CoordVectorProperty::copy(tlp::CoordVectorProperty*)’ marked ‘override’, but does not override<br>
> <br>
> If you want to reproduce the issue, I have pushed a branch on GitHub: <a href="https://github.com/anlambert/tulip/tree/tulip-python-sip-4.19.14" rel="noreferrer" target="_blank">https://github.com/anlambert/tulip/tree/tulip-python-sip-4.19.14</a><br>
<br>
As far as I can tell your .sip files are out of sync with your .h files.<br>
<br>
For example, in GraphProperty.sip does not define a setAllNodeStringValue() method, but GraphProperty.h does.<br>
<br>
Phil</blockquote></div>