diff --git a/src/propertywatchimpl.hpp b/src/propertywatchimpl.hpp
index a1b8d68..048050e 100644
--- a/src/propertywatchimpl.hpp
+++ b/src/propertywatchimpl.hpp
@@ -157,7 +157,7 @@
         // Run property value thru filter operations
         auto isFiltered = false;
         const auto& storage = std::get<storageIndex>(item->second);
-        auto value = sdbusplus::message::variant_ns::get<T>(p.second);
+        auto value = std::get<T>(p.second);
         if (filterOps)
         {
             any_ns::any anyValue = value;
diff --git a/src/resolve_errors.cpp b/src/resolve_errors.cpp
index 3d38686..7273c14 100644
--- a/src/resolve_errors.cpp
+++ b/src/resolve_errors.cpp
@@ -60,8 +60,7 @@
             busName, path, PROPERTY_IFACE, "Get", ASSOCIATION_IFACE,
             ENDPOINTS_PROPERTY);
 
-        const auto& logEntries =
-            sdbusplus::message::variant_ns::get<EndpointList>(endpoints);
+        const auto& logEntries = std::get<EndpointList>(endpoints);
 
         // Resolve each log entry
         for (const auto& logEntry : logEntries)
diff --git a/src/snmp_trap.cpp b/src/snmp_trap.cpp
index eb2efd3..309b22e 100644
--- a/src/snmp_trap.cpp
+++ b/src/snmp_trap.cpp
@@ -33,15 +33,11 @@
         return;
     }
     auto& propMap = it->second;
-    auto errorID =
-        sdbusplus::message::variant_ns::get<uint32_t>(propMap.at("Id"));
-    auto timestamp =
-        sdbusplus::message::variant_ns::get<uint64_t>(propMap.at("Timestamp"));
-    auto sev = sdbusplus::message::variant_ns::get<std::string>(
-        propMap.at("Severity"));
+    auto errorID = std::get<uint32_t>(propMap.at("Id"));
+    auto timestamp = std::get<uint64_t>(propMap.at("Timestamp"));
+    auto sev = std::get<std::string>(propMap.at("Severity"));
     auto isev = static_cast<uint8_t>(Entry::convertLevelFromString(sev));
-    auto message =
-        sdbusplus::message::variant_ns::get<std::string>(propMap.at("Message"));
+    auto message = std::get<std::string>(propMap.at("Message"));
     try
     {
         sendTrap<OBMCErrorNotification>(errorID, timestamp, isev, message);
