Source: openvdb
Version: 2.3.0-2
Severity: serious
Justification: fails to build from source (but built successfully in the past)
Builds of openvdb for 32-bit architectures such as i386 have been
failing, with a number of errors of the form
unittest/TestUtil.cc:147:9: error: no matching function for call to
'assertEquals(long unsigned int, size_t, CppUnit::SourceLine, const char [1])'
CPPUNIT_ASSERT_EQUAL(0UL, d.size());
^
/usr/include/cppunit/TestAssert.h:109:6: note: candidate: template<class T>
void CppUnit::assertEquals(const T&, const T&, CppUnit::SourceLine, const
string&)
void assertEquals( const T& expected,
^
/usr/include/cppunit/TestAssert.h:109:6: note: template argument
deduction/substitution failed:
because size_t is formally unsigned int rather than unsigned long on
those platforms, even though the two types are equivalent in practice
there. Meanwhile, 64-bit platforms do still need unsigned long, so my
recommendation would be to replace the UL suffixes with casts to size_t.
Could you please take a look?
Thanks!