Subject: [Boost-bugs] [Boost C++ Libraries] #3501: Reusing concepts from different compile units yields multiple defined symbols
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2009-10-01 14:07:55
#3501: Reusing concepts from different compile units yields multiple defined
symbols
----------------------------------------+-----------------------------------
Reporter: christoph.heindl@⦠| Owner: guwi17
Type: Bugs | Status: new
Milestone: Boost 1.41.0 | Component: uBLAS
Version: Boost 1.39.0 | Severity: Problem
Keywords: |
----------------------------------------+-----------------------------------
Currently I use the ublas concepts defined in ublas/detail/concepts.hpp to
derive concepts based on ublas concepts such as
template<class X>
struct Vector : boost::numeric::ublas::VectorConcept<X>
{};
In my unit test project I have different compile units that use
BOOST_CONCEPT_ASSERT to assure Vector concept compliance. This yields
multiple defined symbols for the following methods (and full specialized
versions):
ublas/detail/concepts.hpp:
void concept_checks();
template<class T> ZeroElement(T);
template<class T> OneElement(T);
inlining those solves the problem (for me). I'm compiling on MSVC9.0.
Current trunk seems to have this methods still not-inlined.
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/3501> Boost C++ Libraries <http://www.boost.org/> Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:01 UTC