Boost logo

Boost :

Subject: [boost] [UUID] uuid.hpp ODR violation and Ctrl-M pollution
From: Mostafa (mostafa_working_away_at_[hidden])
Date: 2009-08-20 10:47:10


Hi all,

Using "uuid_alt_v13_pod.zip":

1) It seems that some namespace function definitions in uuid.hpp violate
the ODR, specifically the ones lacking inline keyword. This is one of
the errors I get using Apple's g++-4.0 when including uuid.hpp in two
different source files:

ld: duplicate symbol boost::uuids::operator>=(boost::uuids::uuid const&,
boost::uuids::uuid const&)

If I add inline to the aforementioned function definitions, then the
linker errors go away, which makes since.

After some digging around, this issue was discussed beginning with:
http://lists.boost.org/Archives/boost/2007/05/122479.php

but seems to have cropped back up.

Examples are: "uuid/boost/uuid/uuid_io.hpp" and the files under
"uuid/libs/uuid/test/"2) Also some files in the package are
pseudo-randomly sprinkled with Ctrl-M characters, as if someone edited
them with two different editors..

-Mostafa


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