diff --git a/arm_compute/core/CPP/CPPKernels.h b/arm_compute/core/CPP/CPPKernels.h
index 30cbf5d..d12cb28 100644
--- a/arm_compute/core/CPP/CPPKernels.h
+++ b/arm_compute/core/CPP/CPPKernels.h
@@ -21,8 +21,8 @@
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
  * SOFTWARE.
  */
-#ifndef __ARM_COMPUTE_CPPKERNELS_H__
-#define __ARM_COMPUTE_CPPKERNELS_H__
+#ifndef ARM_COMPUTE_CPPKERNELS_H
+#define ARM_COMPUTE_CPPKERNELS_H
 
 /* Header regrouping all the CPP kernels */
 #include "arm_compute/core/CPP/kernels/CPPBoxWithNonMaximaSuppressionLimitKernel.h"
@@ -35,4 +35,4 @@
 #include "arm_compute/core/CPP/kernels/CPPTopKVKernel.h"
 #include "arm_compute/core/CPP/kernels/CPPUpsampleKernel.h"
 
-#endif /* __ARM_COMPUTE_CPPKERNELS_H__ */
+#endif /* ARM_COMPUTE_CPPKERNELS_H */
diff --git a/arm_compute/core/CPP/CPPTypes.h b/arm_compute/core/CPP/CPPTypes.h
index 87fa442..d3f6fc9 100644
--- a/arm_compute/core/CPP/CPPTypes.h
+++ b/arm_compute/core/CPP/CPPTypes.h
@@ -21,8 +21,8 @@
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
  * SOFTWARE.
  */
-#ifndef __ARM_COMPUTE_CPP_TYPES_H__
-#define __ARM_COMPUTE_CPP_TYPES_H__
+#ifndef ARM_COMPUTE_CPP_TYPES_H
+#define ARM_COMPUTE_CPP_TYPES_H
 
 #include "arm_compute/core/Error.h"
 
@@ -229,4 +229,4 @@
     const CPUInfo *cpu_info{ nullptr };
 };
 } // namespace arm_compute
-#endif /* __ARM_COMPUTE_CPP_TYPES_H__ */
+#endif /* ARM_COMPUTE_CPP_TYPES_H */
diff --git a/arm_compute/core/CPP/ICPPKernel.h b/arm_compute/core/CPP/ICPPKernel.h
index 17f2632..f41567e 100644
--- a/arm_compute/core/CPP/ICPPKernel.h
+++ b/arm_compute/core/CPP/ICPPKernel.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2016-2018 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
  *
  * SPDX-License-Identifier: MIT
  *
@@ -21,8 +21,8 @@
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
  * SOFTWARE.
  */
-#ifndef __ARM_COMPUTE_ICPPKERNEL_H__
-#define __ARM_COMPUTE_ICPPKERNEL_H__
+#ifndef ARM_COMPUTE_ICPPKERNEL_H
+#define ARM_COMPUTE_ICPPKERNEL_H
 
 #include "arm_compute/core/CPP/CPPTypes.h"
 #include "arm_compute/core/IKernel.h"
@@ -58,4 +58,4 @@
     virtual const char *name() const = 0;
 };
 } // namespace arm_compute
-#endif /*__ARM_COMPUTE_ICPPKERNEL_H__ */
+#endif /*ARM_COMPUTE_ICPPKERNEL_H */
diff --git a/arm_compute/core/CPP/ICPPSimpleKernel.h b/arm_compute/core/CPP/ICPPSimpleKernel.h
index 086c71f..acdd054 100644
--- a/arm_compute/core/CPP/ICPPSimpleKernel.h
+++ b/arm_compute/core/CPP/ICPPSimpleKernel.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2017-2018 ARM Limited.
+ * Copyright (c) 2017-2019 ARM Limited.
  *
  * SPDX-License-Identifier: MIT
  *
@@ -21,8 +21,8 @@
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
  * SOFTWARE.
  */
-#ifndef __ARM_COMPUTE_ICPPSIMPLEKERNEL_H__
-#define __ARM_COMPUTE_ICPPSIMPLEKERNEL_H__
+#ifndef ARM_COMPUTE_ICPPSIMPLEKERNEL_H
+#define ARM_COMPUTE_ICPPSIMPLEKERNEL_H
 
 #include "arm_compute/core/CPP/ICPPKernel.h"
 
@@ -73,4 +73,4 @@
     ITensor       *_output;
 };
 } // namespace arm_compute
-#endif /*__ARM_COMPUTE_ICPPSIMPLEKERNEL_H__ */
+#endif /*ARM_COMPUTE_ICPPSIMPLEKERNEL_H */
diff --git a/arm_compute/core/CPP/Validate.h b/arm_compute/core/CPP/Validate.h
index 1799f90..1ec41a9 100644
--- a/arm_compute/core/CPP/Validate.h
+++ b/arm_compute/core/CPP/Validate.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2018 ARM Limited.
+ * Copyright (c) 2018-2019 ARM Limited.
  *
  * SPDX-License-Identifier: MIT
  *
@@ -21,8 +21,8 @@
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
  * SOFTWARE.
  */
-#ifndef __ARM_COMPUTE_CPP_VALIDATE_H__
-#define __ARM_COMPUTE_CPP_VALIDATE_H__
+#ifndef ARM_COMPUTE_CPP_VALIDATE_H
+#define ARM_COMPUTE_CPP_VALIDATE_H
 
 #include "arm_compute/core/Validate.h"
 
@@ -71,4 +71,4 @@
 #define ARM_COMPUTE_RETURN_ERROR_ON_CPU_F16_UNSUPPORTED(tensor) \
     ARM_COMPUTE_RETURN_ON_ERROR(::arm_compute::error_on_unsupported_cpu_fp16(__func__, __FILE__, __LINE__, tensor))
 } // namespace arm_compute
-#endif /* __ARM_COMPUTE_CPP_VALIDATE_H__ */
+#endif /* ARM_COMPUTE_CPP_VALIDATE_H */
diff --git a/arm_compute/core/CPP/kernels/CPPBoxWithNonMaximaSuppressionLimitKernel.h b/arm_compute/core/CPP/kernels/CPPBoxWithNonMaximaSuppressionLimitKernel.h
index a1adca3..3fa83a6 100644
--- a/arm_compute/core/CPP/kernels/CPPBoxWithNonMaximaSuppressionLimitKernel.h
+++ b/arm_compute/core/CPP/kernels/CPPBoxWithNonMaximaSuppressionLimitKernel.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2018 ARM Limited.
+ * Copyright (c) 2018-2019 ARM Limited.
  *
  * SPDX-License-Identifier: MIT
  *
@@ -21,8 +21,8 @@
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
  * SOFTWARE.
  */
-#ifndef __ARM_COMPUTE_CPPBOXWITHNONMAXIMASUPPRESSIONLIMITKERNEL_H__
-#define __ARM_COMPUTE_CPPBOXWITHNONMAXIMASUPPRESSIONLIMITKERNEL_H__
+#ifndef ARM_COMPUTE_CPPBOXWITHNONMAXIMASUPPRESSIONLIMITKERNEL_H
+#define ARM_COMPUTE_CPPBOXWITHNONMAXIMASUPPRESSIONLIMITKERNEL_H
 
 #include "arm_compute/core/IArray.h"
 #include "arm_compute/core/IHOG.h"
@@ -88,4 +88,4 @@
     BoxNMSLimitInfo _info;
 };
 } // namespace arm_compute
-#endif /* __ARM_COMPUTE_CPPBOXWITHNONMAXIMASUPPRESSIONLIMITKERNEL_H__ */
+#endif /* ARM_COMPUTE_CPPBOXWITHNONMAXIMASUPPRESSIONLIMITKERNEL_H */
diff --git a/arm_compute/core/CPP/kernels/CPPCornerCandidatesKernel.h b/arm_compute/core/CPP/kernels/CPPCornerCandidatesKernel.h
index 27ac7f0..5510252 100644
--- a/arm_compute/core/CPP/kernels/CPPCornerCandidatesKernel.h
+++ b/arm_compute/core/CPP/kernels/CPPCornerCandidatesKernel.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2017-2018 ARM Limited.
+ * Copyright (c) 2017-2019 ARM Limited.
  *
  * SPDX-License-Identifier: MIT
  *
@@ -21,8 +21,8 @@
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
  * SOFTWARE.
  */
-#ifndef __ARM_COMPUTE_CPPCORNERCANDIDATESKERNEL_H__
-#define __ARM_COMPUTE_CPPCORNERCANDIDATESKERNEL_H__
+#ifndef ARM_COMPUTE_CPPCORNERCANDIDATESKERNEL_H
+#define ARM_COMPUTE_CPPCORNERCANDIDATESKERNEL_H
 
 #include "arm_compute/core/IArray.h"
 #include "arm_compute/core/NEON/INEKernel.h"
@@ -76,4 +76,4 @@
     InternalKeypoint *_output;                   /**< Array of NEInternalKeypoint */
 };
 } // namespace arm_compute
-#endif /* __ARM_COMPUTE_CPPCORNERCANDIDATESKERNEL_H__ */
+#endif /* ARM_COMPUTE_CPPCORNERCANDIDATESKERNEL_H */
diff --git a/arm_compute/core/CPP/kernels/CPPDetectionWindowNonMaximaSuppressionKernel.h b/arm_compute/core/CPP/kernels/CPPDetectionWindowNonMaximaSuppressionKernel.h
index 512d2d8..cf8e4f0 100644
--- a/arm_compute/core/CPP/kernels/CPPDetectionWindowNonMaximaSuppressionKernel.h
+++ b/arm_compute/core/CPP/kernels/CPPDetectionWindowNonMaximaSuppressionKernel.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2017-2018 ARM Limited.
+ * Copyright (c) 2017-2019 ARM Limited.
  *
  * SPDX-License-Identifier: MIT
  *
@@ -21,8 +21,8 @@
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
  * SOFTWARE.
  */
-#ifndef __ARM_COMPUTE_CPPDETECTIONWINDOWNONMAXIMASUPPRESSIONKERNEL_H__
-#define __ARM_COMPUTE_CPPDETECTIONWINDOWNONMAXIMASUPPRESSIONKERNEL_H__
+#ifndef ARM_COMPUTE_CPPDETECTIONWINDOWNONMAXIMASUPPRESSIONKERNEL_H
+#define ARM_COMPUTE_CPPDETECTIONWINDOWNONMAXIMASUPPRESSIONKERNEL_H
 
 #include "arm_compute/core/IArray.h"
 #include "arm_compute/core/IHOG.h"
@@ -72,4 +72,4 @@
     float                  _min_distance;
 };
 } // namespace arm_compute
-#endif /* __ARM_COMPUTE_CPPDETECTIONWINDOWNONMAXIMASUPPRESSIONKERNEL_H__ */
+#endif /* ARM_COMPUTE_CPPDETECTIONWINDOWNONMAXIMASUPPRESSIONKERNEL_H */
diff --git a/arm_compute/core/CPP/kernels/CPPFlipWeightsKernel.h b/arm_compute/core/CPP/kernels/CPPFlipWeightsKernel.h
index 04567ed..285aa58 100644
--- a/arm_compute/core/CPP/kernels/CPPFlipWeightsKernel.h
+++ b/arm_compute/core/CPP/kernels/CPPFlipWeightsKernel.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2018 ARM Limited.
+ * Copyright (c) 2018-2019 ARM Limited.
  *
  * SPDX-License-Identifier: MIT
  *
@@ -21,8 +21,8 @@
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
  * SOFTWARE.
  */
-#ifndef __ARM_COMPUTE_CPP_FLIP_WEIGHTS_KERNEL_H__
-#define __ARM_COMPUTE_CPP_FLIP_WEIGHTS_KERNEL_H__
+#ifndef ARM_COMPUTE_CPP_FLIP_WEIGHTS_KERNEL_H
+#define ARM_COMPUTE_CPP_FLIP_WEIGHTS_KERNEL_H
 
 #include "arm_compute/core/CPP/ICPPKernel.h"
 
@@ -80,4 +80,4 @@
     FlipWeightsFunction _func;
 };
 } // namespace arm_compute
-#endif /*__ARM_COMPUTE_CPP_FLIP_WEIGHTS_KERNEL_H__ */
+#endif /*ARM_COMPUTE_CPP_FLIP_WEIGHTS_KERNEL_H */
diff --git a/arm_compute/core/CPP/kernels/CPPNonMaximumSuppressionKernel.h b/arm_compute/core/CPP/kernels/CPPNonMaximumSuppressionKernel.h
index 351b984..cb416af 100644
--- a/arm_compute/core/CPP/kernels/CPPNonMaximumSuppressionKernel.h
+++ b/arm_compute/core/CPP/kernels/CPPNonMaximumSuppressionKernel.h
@@ -21,8 +21,8 @@
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
  * SOFTWARE.
  */
-#ifndef __ARM_COMPUTE_CPP_NONMAXIMUMSUPPRESSIONKERNEL_LAYER_H__
-#define __ARM_COMPUTE_CPP_NONMAXIMUMSUPPRESSIONKERNEL_LAYER_H__
+#ifndef ARM_COMPUTE_CPP_NONMAXIMUMSUPPRESSIONKERNEL_LAYER_H
+#define ARM_COMPUTE_CPP_NONMAXIMUMSUPPRESSIONKERNEL_LAYER_H
 
 #include "arm_compute/runtime/CPP/ICPPSimpleFunction.h"
 
@@ -94,4 +94,4 @@
     unsigned int _num_boxes;
 };
 } // namespace arm_compute
-#endif /* __ARM_COMPUTE_CPP_NONMAXIMUMSUPPRESSIONKERNEL_LAYER_H__ */
+#endif /* ARM_COMPUTE_CPP_NONMAXIMUMSUPPRESSIONKERNEL_LAYER_H */
diff --git a/arm_compute/core/CPP/kernels/CPPPermuteKernel.h b/arm_compute/core/CPP/kernels/CPPPermuteKernel.h
index 5e9ae43..dffc0da 100644
--- a/arm_compute/core/CPP/kernels/CPPPermuteKernel.h
+++ b/arm_compute/core/CPP/kernels/CPPPermuteKernel.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2017-2018 ARM Limited.
+ * Copyright (c) 2017-2019 ARM Limited.
  *
  * SPDX-License-Identifier: MIT
  *
@@ -21,8 +21,8 @@
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
  * SOFTWARE.
  */
-#ifndef __ARM_COMPUTE_CPPPERMUTEKERNEL_H__
-#define __ARM_COMPUTE_CPPPERMUTEKERNEL_H__
+#ifndef ARM_COMPUTE_CPPPERMUTEKERNEL_H
+#define ARM_COMPUTE_CPPPERMUTEKERNEL_H
 
 #include "arm_compute/core/CPP/ICPPKernel.h"
 
@@ -94,4 +94,4 @@
     PermutationVector  _perm;
 };
 } // namespace arm_compute
-#endif /*__ARM_COMPUTE_CPPPERMUTEKERNEL_H__ */
+#endif /*ARM_COMPUTE_CPPPERMUTEKERNEL_H */
diff --git a/arm_compute/core/CPP/kernels/CPPSortEuclideanDistanceKernel.h b/arm_compute/core/CPP/kernels/CPPSortEuclideanDistanceKernel.h
index 1f16177..d127ef8 100644
--- a/arm_compute/core/CPP/kernels/CPPSortEuclideanDistanceKernel.h
+++ b/arm_compute/core/CPP/kernels/CPPSortEuclideanDistanceKernel.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2017-2018 ARM Limited.
+ * Copyright (c) 2017-2019 ARM Limited.
  *
  * SPDX-License-Identifier: MIT
  *
@@ -21,8 +21,8 @@
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
  * SOFTWARE.
  */
-#ifndef __ARM_COMPUTE_CPPSORTEUCLIDEANDISTANCEKERNEL_H__
-#define __ARM_COMPUTE_CPPSORTEUCLIDEANDISTANCEKERNEL_H__
+#ifndef ARM_COMPUTE_CPPSORTEUCLIDEANDISTANCEKERNEL_H
+#define ARM_COMPUTE_CPPSORTEUCLIDEANDISTANCEKERNEL_H
 
 #include "arm_compute/core/CPP/ICPPKernel.h"
 #include "arm_compute/core/IArray.h"
@@ -70,4 +70,4 @@
     IKeyPointArray   *_output;                /**< Destination array of IKeyPointArray */
 };
 } // namespace arm_compute
-#endif /* __ARM_COMPUTE_CPPSORTEUCLIDEANDISTANCEKERNEL_H__ */
+#endif /* ARM_COMPUTE_CPPSORTEUCLIDEANDISTANCEKERNEL_H */
diff --git a/arm_compute/core/CPP/kernels/CPPTopKVKernel.h b/arm_compute/core/CPP/kernels/CPPTopKVKernel.h
index 8d2456f..fc62b42 100644
--- a/arm_compute/core/CPP/kernels/CPPTopKVKernel.h
+++ b/arm_compute/core/CPP/kernels/CPPTopKVKernel.h
@@ -21,8 +21,8 @@
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
  * SOFTWARE.
  */
-#ifndef __ARM_COMPUTE_CPPTOPKVERNEL_H__
-#define __ARM_COMPUTE_CPPTOPKVERNEL_H__
+#ifndef ARM_COMPUTE_CPPTOPKVERNEL_H
+#define ARM_COMPUTE_CPPTOPKVERNEL_H
 
 #include "arm_compute/core/CPP/ICPPKernel.h"
 
@@ -89,4 +89,4 @@
     unsigned int _num_classes;
 };
 } // namespace arm_compute
-#endif /*__ARM_COMPUTE_CPPTOPKVKERNEL_H__ */
+#endif /*ARM_COMPUTE_CPPTOPKVKERNEL_H */
diff --git a/arm_compute/core/CPP/kernels/CPPUpsampleKernel.h b/arm_compute/core/CPP/kernels/CPPUpsampleKernel.h
index 571debe..375ff55 100644
--- a/arm_compute/core/CPP/kernels/CPPUpsampleKernel.h
+++ b/arm_compute/core/CPP/kernels/CPPUpsampleKernel.h
@@ -21,8 +21,8 @@
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
  * SOFTWARE.
  */
-#ifndef __ARM_COMPUTE_CPPUPSAMPLEKERNEL_H__
-#define __ARM_COMPUTE_CPPUPSAMPLEKERNEL_H__
+#ifndef ARM_COMPUTE_CPPUPSAMPLEKERNEL_H
+#define ARM_COMPUTE_CPPUPSAMPLEKERNEL_H
 
 #include "arm_compute/core/CPP/ICPPKernel.h"
 
@@ -71,4 +71,4 @@
     PadStrideInfo  _info;
 };
 } // namespace arm_compute
-#endif /*__ARM_COMPUTE_CPPUPSAMPLEKERNEL_H__ */
+#endif /*ARM_COMPUTE_CPPUPSAMPLEKERNEL_H */
