diff --git a/powercap.cpp b/powercap.cpp
index a04584f..6f46d34 100644
--- a/powercap.cpp
+++ b/powercap.cpp
@@ -85,7 +85,7 @@
     sdbusplus::message::variant<uint32_t> pcap;
     reply.read(pcap);
 
-    return sdbusplus::message::variant_ns::get<uint32_t>(pcap);
+    return std::get<uint32_t>(pcap);
 }
 
 bool PowerCap::getPcapEnabled()
@@ -107,7 +107,7 @@
     sdbusplus::message::variant<bool> pcapEnabled;
     reply.read(pcapEnabled);
 
-    return sdbusplus::message::variant_ns::get<bool>(pcapEnabled);
+    return std::get<bool>(pcapEnabled);
 }
 
 std::string PowerCap::getPcapFilename(const fs::path& path)
@@ -180,8 +180,7 @@
     auto valPropMap = msgData.find(POWER_CAP_PROP);
     if (valPropMap != msgData.end())
     {
-        pcap =
-            sdbusplus::message::variant_ns::get<uint32_t>(valPropMap->second);
+        pcap = std::get<uint32_t>(valPropMap->second);
         pcapEnabled = getPcapEnabled();
     }
     else
@@ -189,8 +188,7 @@
         valPropMap = msgData.find(POWER_CAP_ENABLE_PROP);
         if (valPropMap != msgData.end())
         {
-            pcapEnabled =
-                sdbusplus::message::variant_ns::get<bool>(valPropMap->second);
+            pcapEnabled = std::get<bool>(valPropMap->second);
             pcap = getPcap();
         }
         else
