
David Abrahams wrote:
Use of ADL should be limited to places you intend the library's behavior to be customized ("customization points") in part to avoid the problem cited below: picking up names used in the library but never intended to interact with it. Volodya's question is whether load was really intended to be a customization point.
The main customization point is to specialize the template template<class Archive, class T> void seriailize(Archive &ar, T &t, const unsigned int version) There is common specialization summarized by BOOST_SERIALIZATION_SPLIT_FREE(T) which implemetns void serialize(... // if its an output archive save(... // compile time else load(... So save and load can be customization points as well. I think this is pretty well explained in the manual. Robert Ramey