Boost logo

Boost :

Subject: Re: [boost] version conflicts: is there a solution?
From: Frank Mori Hess (frank.hess_at_[hidden])
Date: 2009-06-25 08:56:34

Hash: SHA1

On Wednesday 24 June 2009, Edward Diener wrote:
> > Having the definitions separated into different translation units doesn't
> > seem to be enough to prevent ODR violations according to the standard.
> > It gives a list of requirements for multiple definitions in different
> > translation units in section 3.2.5.
> I do not believe the C++ definition of a "translation unit" comes into
> play when dealing with a library, but rather with header files included
> within a source file. If the implementation is internal, as the OP
> suggested, then I would assume that no header files for the
> implementation are distributed and therefore no ODR violation for that
> particular situation should occur.
> Of course there may be conflicts when linking if internal details of a
> library are exported but that is not something about which the C++
> standard says anything AFAIK.

Can you point to anything in the standard that supports your position? It may
be safe to have an internal usage of boost in your compiled library on a
particular C++ implementation, but that doesn't say anything about whether or
not an ODR violation is happening. ODR violations are something defined by
the standard.

Version: GnuPG v1.4.9 (GNU/Linux)


Boost list run by bdawes at, gregod at, cpdaniel at, john at