On 17/10/2015 11:00, Joaquín M LópezMuñoz wrote:
May I abuse your patience and ask you for one more test? What happens if we add a dummy int* = 0 argument to one of the overloads so that the signature is different? Does MSVC still fail to look up things right when the class is used (as opposed to defined)?
If a dummy "int * = 0" is added to the second overload all tests except serialization related ones pass ok. Serialization is just missing some Interlocked functions from smart_ptr/detail/sp_interlocked.hpp basic_iarchive.obj : error LNK2019: unresolved external symbol __InterlockedDecr ement referenced in function "public: void __thiscall boost::detail::sp_counted_ base::release(void)" (?release@sp_counted_base@detail@boost@@QAEXXZ) basic_oarchive.obj : error LNK2001: unresolved external symbol __InterlockedDecr ement I have a patch for it and with both patches all multi_index tests pass. Best, Ion