diff --git a/include/opendht/crypto.h b/include/opendht/crypto.h
index 175d4a7654783c6e888496f30d58bd26d7f84550..13462eb14b59b9b2688240d93da0260a5111b2f9 100644
--- a/include/opendht/crypto.h
+++ b/include/opendht/crypto.h
@@ -186,7 +186,7 @@ class OPENDHT_PUBLIC RevocationList
 public:
     RevocationList();
     RevocationList(const Blob& b);
-    RevocationList(RevocationList&& o) : crl(o.crl) { o.crl = nullptr; }
+    RevocationList(RevocationList&& o) noexcept : crl(o.crl) { o.crl = nullptr; }
     ~RevocationList();
 
     RevocationList& operator=(RevocationList&& o) { crl = o.crl; o.crl = nullptr; return *this; }
@@ -500,7 +500,7 @@ struct OPENDHT_PUBLIC TrustList
     };
 
     TrustList();
-    TrustList(TrustList&& o) : trust(std::move(o.trust)) {
+    TrustList(TrustList&& o) noexcept : trust(std::move(o.trust)) {
         o.trust = nullptr;
     }
     TrustList& operator=(TrustList&& o);
diff --git a/include/opendht/sockaddr.h b/include/opendht/sockaddr.h
index 995579e46c669df03c38bf54b08b3f10de5929a6..e9945479a5075db5cf9a29485d56f006592a9ca2 100644
--- a/include/opendht/sockaddr.h
+++ b/include/opendht/sockaddr.h
@@ -58,7 +58,7 @@ public:
     SockAddr(const SockAddr& o) {
         set(o.get(), o.getLength());
     }
-    SockAddr(SockAddr&& o) : len(o.len), addr(std::move(o.addr)) {
+    SockAddr(SockAddr&& o) noexcept : len(o.len), addr(std::move(o.addr)) {
         o.len = 0;
     }
 
diff --git a/src/op_cache.h b/src/op_cache.h
index ec6b2d1324215b46a4341d337e1b11856951a7b4..e1410209c5ca070a40453b8377f0085b47586eb1 100644
--- a/src/op_cache.h
+++ b/src/op_cache.h
@@ -32,8 +32,8 @@ struct OpCacheValueStorage
 
 class OpValueCache {
 public:
-    OpValueCache(ValueCallback&& cb) : callback(std::forward<ValueCallback>(cb)) {}
-    OpValueCache(OpValueCache&& o) : values(std::move(o.values)), callback(std::move(o.callback)) {
+    OpValueCache(ValueCallback&& cb) noexcept : callback(std::forward<ValueCallback>(cb)) {}
+    OpValueCache(OpValueCache&& o) noexcept : values(std::move(o.values)), callback(std::move(o.callback)) {
         o.callback = {};
     }
 
diff --git a/src/value_cache.h b/src/value_cache.h
index 74d6ea9a77c8ee760d1ae1468bcdd5bcc520f874..aa3cf08dc300c524f9f9fc750dbe3a64a378012a 100644
--- a/src/value_cache.h
+++ b/src/value_cache.h
@@ -34,7 +34,7 @@ public:
         if (syncCallback)
             syncCallback(ListenSyncStatus::ADDED);
     }
-    ValueCache(ValueCache&& o) : values(std::move(o.values)), callback(std::move(o.callback)), syncCallback(std::move(o.syncCallback)) {
+    ValueCache(ValueCache&& o) noexcept : values(std::move(o.values)), callback(std::move(o.callback)), syncCallback(std::move(o.syncCallback)) {
         o.callback = {};
         o.syncCallback = {};
     }