Fix issues caused by boost::none changes. See also: https://bugs.gentoo.org/show_bug.cgi?id=578846 Adapted from: https://github.com/mongodb/mongo/commit/92c3f80f384d2825efeabd0d26aa534c0deb6988 --- mongodb-src-r3.2.4/src/mongo/db/ftdc/compressor.cpp +++ mongodb-src-r3.2.4/src/mongo/db/ftdc/compressor.cpp @@ -47,7 +47,7 @@ if (_referenceDoc.isEmpty()) { FTDCBSONUtil::extractMetricsFromDocument(sample, sample, &_metrics); _reset(sample, date); - return {boost::none_t()}; + return {boost::none}; } _metrics.resize(0); @@ -107,7 +107,7 @@ } // The buffer is not full, inform the caller - return {boost::none_t()}; + return {boost::none}; } StatusWith> FTDCCompressor::getCompressedSamples() { --- mongodb-src-r3.2.4/src/mongo/db/ftdc/compressor_test.cpp +++ mongodb-src-r3.2.4/src/mongo/db/ftdc/compressor_test.cpp @@ -122,7 +122,7 @@ TestTie() : _compressor(&_config) {} ~TestTie() { - validate(boost::none_t()); + validate(boost::none); } StatusWith>> --- mongodb-src-r3.2.4/src/mongo/db/ftdc/file_writer.cpp +++ mongodb-src-r3.2.4/src/mongo/db/ftdc/file_writer.cpp @@ -205,7 +205,7 @@ Status FTDCFileWriter::close() { if (_archiveStream.is_open()) { - Status s = flush(boost::none_t(), Date_t()); + Status s = flush(boost::none, Date_t()); _archiveStream.close(); --- mongodb-src-r3.2.4/src/mongo/util/concurrency/shared_mutex_win.hpp +++ mongodb-src-r3.2.4/src/mongo/util/concurrency/shared_mutex_win.hpp @@ -175,7 +175,7 @@ return true; } - unsigned long const res=detail::win32::WaitForSingleObject(unlock_sem,::boost::detail::get_milliseconds_until(wait_until)); + unsigned long const res=WaitForSingleObject(unlock_sem,::boost::detail::get_milliseconds_until(wait_until)); if(res==detail::win32::timeout) { for(;;) @@ -328,7 +328,7 @@ { return true; } - unsigned long const wait_res=detail::win32::WaitForMultipleObjects(2,semaphores,true,::boost::detail::get_milliseconds_until(wait_until)); + unsigned long const wait_res=WaitForMultipleObjects(2,semaphores,true,::boost::detail::get_milliseconds_until(wait_until)); if(wait_res==detail::win32::timeout) { for(;;) @@ -421,7 +421,7 @@ return; } - BOOST_VERIFY(!detail::win32::WaitForSingleObject(unlock_sem,detail::win32::infinite)); + BOOST_VERIFY(!WaitForSingleObject(unlock_sem,detail::win32::infinite)); } } @@ -502,7 +502,7 @@ { if(!last_reader) { - BOOST_VERIFY(!detail::win32::WaitForSingleObject(upgrade_sem,detail::win32::infinite)); + BOOST_VERIFY(!WaitForSingleObject(upgrade_sem,detail::win32::infinite)); } break; }