diff options
-rw-r--r-- | src/neighbor/plugins/SmbclientNeighborPlugin.cxx | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/neighbor/plugins/SmbclientNeighborPlugin.cxx b/src/neighbor/plugins/SmbclientNeighborPlugin.cxx index f7085c03d..ea3a6c2fd 100644 --- a/src/neighbor/plugins/SmbclientNeighborPlugin.cxx +++ b/src/neighbor/plugins/SmbclientNeighborPlugin.cxx @@ -215,7 +215,14 @@ SmbclientNeighborExplorer::Run() prev = i; } else { /* can't see it anymore: move to "lost" */ +#if defined(__clang__) || GCC_CHECK_VERSION(4,7) lost.splice_after(lost.before_begin(), list, prev); +#else + /* the forward_list::splice_after() lvalue + reference overload is missing in gcc 4.6 */ + lost.emplace_front(std::move(*i)); + list.erase_after(prev); +#endif } } |