clang-tidy: Add few cppcoreguidelines check

These checks cover a wide range of best practices and
recommendations aimed at improving the safety, readability,
maintainability, and performance of our C++ codebase according
to the C++ Core Guidelines.

Tested: Build and unit tests passed successfully.

Change-Id: I4f2986556626e0792d3e5b4aa3704ed9895ff32b
Signed-off-by: Jayanth Othayoth <ojayanth@gmail.com>
diff --git a/.clang-tidy b/.clang-tidy
index e2d3a88..3ba856b 100644
--- a/.clang-tidy
+++ b/.clang-tidy
@@ -229,6 +229,28 @@
 clang-analyzer-webkit.NoUncountedMemberChecker,
 clang-analyzer-webkit.RefCntblBaseVirtualDtor,
 clang-analyzer-webkit.UncountedLambdaCapturesChecker,
+cppcoreguidelines-avoid-capturing-lambda-coroutines,
+cppcoreguidelines-avoid-goto,
+cppcoreguidelines-avoid-non-const-global-variables,
+cppcoreguidelines-avoid-reference-coroutine-parameters,
+cppcoreguidelines-c-copy-assignment-signature,
+cppcoreguidelines-interfaces-global-init,
+cppcoreguidelines-misleading-capture-default-by-value,
+cppcoreguidelines-narrowing-conversions,
+cppcoreguidelines-no-malloc,
+cppcoreguidelines-no-suspend-with-lock,
+cppcoreguidelines-noexcept-destructor,
+cppcoreguidelines-noexcept-move-operations,
+cppcoreguidelines-noexcept-swap,
+cppcoreguidelines-prefer-member-initializer,
+cppcoreguidelines-pro-type-const-cast,
+cppcoreguidelines-pro-type-static-cast-downcast,
+cppcoreguidelines-pro-type-union-access,
+cppcoreguidelines-rvalue-reference-param-not-moved,
+cppcoreguidelines-use-default-member-init,
+cppcoreguidelines-virtual-class-destructor,
+cppcoreguidelines-slicing,
+cppcoreguidelines-special-member-functions,
 readability-identifier-naming'
 
 WarningsAsErrors: '*'