monotone-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Monotone-devel] Updated Issue 191 - xdelta unit test fails to build due


From: code
Subject: [Monotone-devel] Updated Issue 191 - xdelta unit test fails to build due a symbol conflict with boost (monotone)
Date: Tue, 18 Oct 2011 19:18:47 +0200

Hello,

The following issue has been updated:

191 - xdelta unit test fails to build due a symbol conflict with boost
Project: monotone
Status: New
Reported by: Dan Horák
URL: https://code.monotone.ca/p/monotone/issues/191/
Labels:
 Type:Defect
 Priority:Medium

Comments (last first):

# By Christian Cornelssen, Okt 18, 2011:

Encountered the same problem with a fresh mtn clone today (revision 
22f47ba88188cc15e92de60cc2597df6054809a7).

Workaround was to #include <boost/random.hpp> before the local headers in 
test/unit/tests/xdelta.cc. A clean approach should avoid the definition of such 
a macro (in src/sanity.hh) however.

Attachments:
- xdelta.diff - 711 bytes
  https://code.monotone.ca/p/monotone/issues/view/attachment/36/xdelta.diff


# By Dan Horák, Sep 26, 2011:

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/



reply via email to

[Prev in Thread] Current Thread [Next in Thread]