treewide: Add clang-tidy

Change-Id: I1aab00b0ff8c016650225fcd1c83678a91808941
Signed-off-by: William A. Kennington III <wak@google.com>
diff --git a/.clang-tidy b/.clang-tidy
new file mode 100644
index 0000000..7ecd1b9
--- /dev/null
+++ b/.clang-tidy
@@ -0,0 +1,2 @@
+Checks: 'clang-analyzer-*'
+WarningsAsErrors: 'clang-analyzer-*'
diff --git a/src/config_parser.hpp b/src/config_parser.hpp
index 2d0bb1f..d082b18 100644
--- a/src/config_parser.hpp
+++ b/src/config_parser.hpp
@@ -3,7 +3,6 @@
 #include <filesystem>
 #include <functional>
 #include <optional>
-#include <ostream>
 #include <string>
 #include <string_view>
 #include <unordered_map>
@@ -52,6 +51,13 @@
         return t;
     }
 
+    template <typename T2, typename Check2>
+    constexpr bool operator==(const Checked<T2, Check2>& rhs) const noexcept
+    {
+        static_assert(std::is_same_v<Check2, Check>);
+        return t == rhs.t;
+    }
+
     constexpr bool operator==(const auto& rhs) const noexcept
     {
         return t == rhs;
@@ -69,19 +75,6 @@
     }
 };
 
-template <typename T, typename Check>
-constexpr bool operator==(const auto& lhs,
-                          const Checked<T, Check>& rhs) noexcept
-{
-    return lhs == rhs.get();
-}
-
-template <typename T, typename Check>
-inline std::ostream& operator<<(std::ostream& s, const Checked<T, Check>& rhs)
-{
-    return s << rhs.get();
-}
-
 struct KeyCheck
 {
     void operator()(std::string_view s);
diff --git a/src/ethernet_interface.hpp b/src/ethernet_interface.hpp
index 0b6e21a..0e9c536 100644
--- a/src/ethernet_interface.hpp
+++ b/src/ethernet_interface.hpp
@@ -187,7 +187,7 @@
 
     /** @brief delete all dbus objects.
      */
-    void deleteAll();
+    void deleteAll() override;
 
     /** @brief set the default v4 gateway of the interface.
      *  @param[in] gateway - default v4 gateway of the interface.
diff --git a/src/ibm/hypervisor-network-mgr-src/hyp_sys_config.hpp b/src/ibm/hypervisor-network-mgr-src/hyp_sys_config.hpp
index 26f03f7..464ed64 100644
--- a/src/ibm/hypervisor-network-mgr-src/hyp_sys_config.hpp
+++ b/src/ibm/hypervisor-network-mgr-src/hyp_sys_config.hpp
@@ -27,7 +27,7 @@
 class HypSysConfig : public Iface
 {
   public:
-    HypSysConfig() = default;
+    HypSysConfig() = delete;
     HypSysConfig(const HypSysConfig&) = delete;
     HypSysConfig& operator=(const HypSysConfig&) = delete;
     HypSysConfig(HypSysConfig&&) = delete;
diff --git a/src/network_manager.cpp b/src/network_manager.cpp
index 26d3496..7db5f7f 100644
--- a/src/network_manager.cpp
+++ b/src/network_manager.cpp
@@ -20,14 +20,6 @@
 
 #include <filesystem>
 
-constexpr char SYSTEMD_BUSNAME[] = "org.freedesktop.systemd1";
-constexpr char SYSTEMD_PATH[] = "/org/freedesktop/systemd1";
-constexpr char SYSTEMD_INTERFACE[] = "org.freedesktop.systemd1.Manager";
-
-constexpr char NETWORKD_BUSNAME[] = "org.freedesktop.network1";
-constexpr char NETWORKD_PATH[] = "/org/freedesktop/network1";
-constexpr char NETWORKD_INTERFACE[] = "org.freedesktop.network1.Manager";
-
 namespace phosphor
 {
 namespace network
@@ -95,8 +87,9 @@
         try
         {
             bus.get()
-                .new_method_call(NETWORKD_BUSNAME, NETWORKD_PATH,
-                                 NETWORKD_INTERFACE, "Reload")
+                .new_method_call("org.freedesktop.network1",
+                                 "/org/freedesktop/network1",
+                                 "org.freedesktop.network1.Manager", "Reload")
                 .call();
             lg2::info("Reloaded systemd-networkd");
         }