diff --git a/dbus-sdr/storagecommands.cpp b/dbus-sdr/storagecommands.cpp
index fbc0c98..fa27f22 100644
--- a/dbus-sdr/storagecommands.cpp
+++ b/dbus-sdr/storagecommands.cpp
@@ -346,11 +346,11 @@
         });
 
     // call once to populate
-    boost::asio::spawn(*getIoContext(),
-                       [](boost::asio::yield_context yield) {
-                           replaceCacheFru(getSdBus(), yield);
-                       },
-                       {});
+    (void)boost::asio::spawn(*getIoContext(),
+                             [](boost::asio::yield_context yield) {
+                                 replaceCacheFru(getSdBus(), yield);
+                             },
+                             {});
 }
 
 /** @brief implements the read FRU data command
diff --git a/ipmid-new.cpp b/ipmid-new.cpp
index 1bb8934..e8cc2f1 100644
--- a/ipmid-new.cpp
+++ b/ipmid-new.cpp
@@ -21,6 +21,7 @@
 
 #include <boost/algorithm/string.hpp>
 #include <boost/asio/io_context.hpp>
+#include <boost/asio/spawn.hpp>
 #include <host-cmd-manager.hpp>
 #include <ipmid-host/cmd.hpp>
 #include <ipmid/api.hpp>
@@ -764,7 +765,7 @@
 {
     // make a copy so the next two moves don't wreak havoc on the stack
     sdbusplus::message_t b{m};
-    boost::asio::spawn(
+    (void)boost::asio::spawn(
         *getIoContext(),
         [b = std::move(b)](boost::asio::yield_context yield) {
             sdbusplus::message_t m{std::move(b)};
