Hi, This is query was posted as part of different question. Doing a fresh post with a new topic as earlier one didn't fetch any response - assuming it may got lost in the original context. I'm trying to serialize/deserialize singleton class objects. My code is similar to following for save/restore: void save(boost::archive::binary_oarchive &archive) { MyData *data = MyData::instance(); if (data) archive << data; } void restore(boost::archive::binary_iarchive &archive) { MyData::cleanup(); archive >> (MyData *) MyData::instance(); } My save function works - stores data on disk. But the restore function doesn't compile. I get error like following: error: no match for ‘operator>>’ in ‘archive >> (MyData *) MyData::instance()’ /boost/1_35_0/include/boost/archive/detail/interface_iarchive.hpp:62: note: candidates are: Archive& boost::archive::detail::interface_iarchive<Archive>::operator>>(T&) [with T = MyData*, Archive = boost::archive::binary_iarchive] If I change the 2nd line of restore function in following way, the error message almost remains same: MyData *inst = MyData::instance(); archive >> (MyData *) inst; Please guide me what I'm doing wrongly. Regards, ~ Soumen -- View this message in context: http://www.nabble.com/-serialization---newbie--serializing-deserializing-sin... Sent from the Boost - Users mailing list archive at Nabble.com.