Enable cppcoreguidelines check on the repo

This commit adds cppcoreguidelines clang-tidy
checks and make necessary changes.

Change-Id: I402b82f96b7ff82e3ba6d84c9cc50435c1ead6d4
Signed-off-by: Pavithra Barithaya <pavithra.b@ibm.com>
diff --git a/.clang-tidy b/.clang-tidy
index b0973f4..cb6b8b3 100644
--- a/.clang-tidy
+++ b/.clang-tidy
@@ -195,6 +195,26 @@
 clang-analyzer-valist.ValistBase,
 clang-analyzer-webkit.NoUncountedMemberChecker,
 clang-analyzer-webkit.RefCntblBaseVirtualDtor,
+cppcoreguidelines-avoid-c-arrays,
+cppcoreguidelines-avoid-goto,
+cppcoreguidelines-avoid-non-const-global-variables,
+cppcoreguidelines-c-copy-assignment-signature,
+cppcoreguidelines-explicit-virtual-functions,
+cppcoreguidelines-init-variables,
+cppcoreguidelines-macro-usage,
+cppcoreguidelines-narrowing-conversions,
+cppcoreguidelines-no-malloc,
+cppcoreguidelines-prefer-member-initializer,
+cppcoreguidelines-pro-bounds-array-to-pointer-decay,
+cppcoreguidelines-pro-bounds-pointer-arithmetic,
+cppcoreguidelines-pro-type-const-cast,
+cppcoreguidelines-pro-type-cstyle-cast,
+cppcoreguidelines-pro-type-member-init,
+cppcoreguidelines-pro-type-reinterpret-cast,
+cppcoreguidelines-pro-type-static-cast-downcast,
+cppcoreguidelines-pro-type-union-access,
+cppcoreguidelines-pro-type-vararg,
+cppcoreguidelines-slicing,
 modernize-avoid-bind,
 modernize-deprecated-headers,
 modernize-deprecated-ios-base-aliases,