diff --git a/phosphor-ldap-config/ldap_config.cpp b/phosphor-ldap-config/ldap_config.cpp
index 599abaf..57654a8 100644
--- a/phosphor-ldap-config/ldap_config.cpp
+++ b/phosphor-ldap-config/ldap_config.cpp
@@ -137,7 +137,7 @@
     configPersistPath += "/config";
 }
 
-void Config::certificateInstalled(sdbusplus::message::message& msg)
+void Config::certificateInstalled(sdbusplus::message::message& /*msg*/)
 {
     try
     {
@@ -531,7 +531,7 @@
     return val;
 }
 
-ConfigIface::Type Config::ldapType(ConfigIface::Type value)
+ConfigIface::Type Config::ldapType(ConfigIface::Type /*value*/)
 {
     elog<NotAllowed>(NotAllowedArgument::REASON("ReadOnly Property"));
     return ldapType();
@@ -640,7 +640,7 @@
 }
 
 template <class Archive>
-void Config::save(Archive& archive, const std::uint32_t version) const
+void Config::save(Archive& archive, const std::uint32_t /*version*/) const
 {
     archive(this->enabled());
     archive(ldapServerURI());
@@ -653,7 +653,7 @@
 }
 
 template <class Archive>
-void Config::load(Archive& archive, const std::uint32_t version)
+void Config::load(Archive& archive, const std::uint32_t /*version*/)
 {
     bool bVal;
     archive(bVal);
diff --git a/phosphor-ldap-config/ldap_mapper_serialize.cpp b/phosphor-ldap-config/ldap_mapper_serialize.cpp
index 9be8839..66cea37 100644
--- a/phosphor-ldap-config/ldap_mapper_serialize.cpp
+++ b/phosphor-ldap-config/ldap_mapper_serialize.cpp
@@ -30,7 +30,7 @@
  */
 template <class Archive>
 void save(Archive& archive, const LDAPMapperEntry& entry,
-          const std::uint32_t version)
+          const std::uint32_t /*version*/)
 {
     archive(entry.groupName(), entry.privilege());
 }
@@ -44,7 +44,8 @@
  *                       across code levels
  */
 template <class Archive>
-void load(Archive& archive, LDAPMapperEntry& entry, const std::uint32_t version)
+void load(Archive& archive, LDAPMapperEntry& entry,
+          const std::uint32_t /*version*/)
 {
     std::string groupName{};
     std::string privilege{};
diff --git a/phosphor-ldap-config/main.cpp b/phosphor-ldap-config/main.cpp
index 041609b..bd65da4 100644
--- a/phosphor-ldap-config/main.cpp
+++ b/phosphor-ldap-config/main.cpp
@@ -9,7 +9,7 @@
 
 #include <filesystem>
 
-int main(int argc, char* argv[])
+int main(int /*argc*/, char** /*argv*/)
 {
     using namespace phosphor::logging;
     using namespace sdbusplus::xyz::openbmc_project::Common::Error;
