Boost logo

Boost :

From: Markus Schöpflin (markus.schoepflin_at_[hidden])
Date: 2006-03-13 06:13:06


JOAQUIN LOPEZ MU?Z wrote:

[...]

> The test used to work, but has hundergone a significant
> change that I've got the hunch might be related to
> its currently failing: previously all serialization
> tests were performed in a single translation unit
> named test_serialization.cpp, while now the code has
> been split (for reasons irrelevant to this discussion) into
> two files test_serialization1.cpp and test_serialization2.cpp.
> Does this ring some bell?

[...]

This is most probably caused by having multiple instances of some static
object, which in turn is caused by a limitation of the template
instantiation model used. (All automatically instantiated templates are
placed in the output object and given internal linkage.)

If you can identify the static object in question, adding a manual
instantiation of the enclosing template will work around this, because
those will be placed in an external template repository with external linkage.

I had a quick look at the code but as I don't know a thing about either
serialization or multi_index, I'm afraid I won't be of much help with
finding the problematic code.

Markus


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk