Issue 191 - xdelta unit test fails to build due a symbol conflict with boost (monotone)

[email protected]
Newsgroups gmane.comp.version-control.monotone.devel
Message-ID <4b104f05848f7e93fd572330ca80ef47@localhost>
Hello,

A new issue has been created and assigned
to you:

191 - xdelta unit test fails to build due a symbol conflict with boost
Project: monotone
Status: New
Reported by: Dan Horák
Labels:
 Type:Defect
 Priority:Medium

Description:

The xdelta unit test fails to build due a symbol conflict with boost >= 1.47

The problem a conflict of L() macro defined by monotone in sanity.hh and L as a template parameter in boost. I was told that single upper case letters are usually used for classes passed as template parameters in C++ code.

from the build log:
...
make[3]: Entering directory `/builddir/build/BUILD/monotone-1.0'
\
#	source='test/unit/tests/xdelta.cc' object='test/unit/tests/xdelta.o' libtool=no 
g++  -I.              -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -Wall -W -Wno-unused -c -o test/unit/tests/xdelta.o test/unit/tests/xdelta.cc
In file included from /usr/include/boost/math/special_functions/gamma.hpp:43:0,
                 from /usr/include/boost/math/special_functions/detail/bessel_jy.hpp:14,
                 from /usr/include/boost/math/special_functions/bessel.hpp:17,
                 from /usr/include/boost/math/special_functions.hpp:18,
                 from /usr/include/boost/random/generate_canonical.hpp:22,
                 from /usr/include/boost/random.hpp:52,
                 from test/unit/tests/xdelta.cc:15:
/usr/include/boost/math/special_functions/detail/lgamma_small.hpp: In function ‘T boost::math::detail::lgamma_small_imp(T, T, T, const mpl_::int_<0>&, const Policy&, const L&)’:
/usr/include/boost/math/special_functions/detail/lgamma_small.hpp:483:38: error: expected primary-expression before ‘do’
/usr/include/boost/math/special_functions/detail/lgamma_small.hpp:488:38: error: expected primary-expression before ‘do’
make[3]: *** [test/unit/tests/xdelta.o] Error 1
make[3]: Leaving directory `/builddir/build/BUILD/monotone-1.0'
make[2]: *** [check-am] Error 2
make[2]: Leaving directory `/builddir/build/BUILD/monotone-1.0'
make[1]: *** [check-recursive] Error 1
make[1]: Leaving directory `/builddir/build/BUILD/monotone-1.0'
make: *** [check] Error 2

--
Issue: https://code.monotone.ca/p/monotone/issues/191/

_______________________________________________
Monotone-devel mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/monotone-devel
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.