
Peter Dimov-2 wrote
Robert Ramey wrote:
...
Modest Proposal - Bridge module
We create a new module - named "bridge". In this module there is a directory: boost/bridge/archive.hpp. This contains only forward declarations:
class basic_iarchive; class basic_oarchive;
and maybe some other miscellaneous stuff. This includes no headers from boost/archive.
in date-time/serialization.hpp files in other libraries replace
#include <boost/archive/basic_iarchive.hpp> with #include <boost/bridge/archive.hpp>
Date_time doesn't include basic_iarchive.hpp. It doesn't include anything from boost/archive. It only includes
boost/serialization/nvp.hpp
and
boost/serialization/split_free.hpp
Look at the dependency report. Don't try to solve problems that don't exist.
OK - I looked at the report and I think I understand the problem better now. I had presumed that the report followed header inclusions to determine dependencies. I see now that it doesn't. It looks that as soon as it finds finds that split_free is in the serialization module it just assumes that everything in the serialization module has to be included if date-time/serialization.hpp is included. That includes archive, xml_archive spirite - the whole ball of wax. Consider refining the dependency checker so that it doesn't consider the whole module but rather the top level directory. In this case, if you just included dependencies in boost/serialization rather than boost/serialization + boost/archive, we might already have what we need. I'm thinking this is the thrust of Rene's suggestion. Robert Ramey -- View this message in context: http://boost.2283326.n4.nabble.com/type-traits-Rewrite-and-dependency-free-v... Sent from the Boost - Dev mailing list archive at Nabble.com.