Enable clang-tidy forward reference checks

Clang-13 adds new checks we can turn on, which find quite a few errors.

Tested: Code compiles

Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: I74b780760014c898cc440b37aea640b33e91c439
diff --git a/redfish-core/lib/redfish_util.hpp b/redfish-core/lib/redfish_util.hpp
index b631f91..881bf1a 100644
--- a/redfish-core/lib/redfish_util.hpp
+++ b/redfish-core/lib/redfish_util.hpp
@@ -94,9 +94,9 @@
                           CallbackFunc&& callback)
 {
     crow::connections::systemBus->async_method_call(
-        [serviceName,
-         callback{std::move(callback)}](const boost::system::error_code ec,
-                                        const std::vector<UnitStruct>& r) {
+        [serviceName, callback{std::forward<CallbackFunc>(callback)}](
+            const boost::system::error_code ec,
+            const std::vector<UnitStruct>& r) {
             if (ec)
             {
                 BMCWEB_LOG_ERROR << ec;
@@ -174,7 +174,7 @@
         std::vector<std::tuple<std::string, std::string>>>(
         *crow::connections::systemBus, "org.freedesktop.systemd1", socketPath,
         "org.freedesktop.systemd1.Socket", "Listen",
-        [callback{std::move(callback)}](
+        [callback{std::forward<CallbackFunc>(callback)}](
             const boost::system::error_code ec,
             const std::vector<std::tuple<std::string, std::string>>& resp) {
             if (ec)