Tidy-up: move GCC warning fix to constant_time_impl.h

Signed-off-by: Dave Rodgman <dave.rodgman@arm.com>
diff --git a/library/constant_time_impl.h b/library/constant_time_impl.h
index 8570928..1fa655d 100644
--- a/library/constant_time_impl.h
+++ b/library/constant_time_impl.h
@@ -37,6 +37,17 @@
 #include "mbedtls/bignum.h"
 #endif
 
+/* constant_time_impl.h contains all the static inline implementations,
+ * so that constant_time_internal.h is more readable.
+ *
+ * gcc generates warnings about duplicate declarations, so disable this
+ * warning.
+ */
+#ifdef __GNUC__
+    #pragma GCC diagnostic push
+    #pragma GCC diagnostic ignored "-Wredundant-decls"
+#endif
+
 /* Disable asm under Memsan because it confuses Memsan and generates false errors */
 #if defined(MBEDTLS_TEST_CONSTANT_FLOW_MEMSAN)
 #define MBEDTLS_CT_NO_ASM
@@ -288,4 +299,8 @@
     return (mbedtls_ct_condition_t) (~x);
 }
 
+#ifdef __GNUC__
+    #pragma GCC diagnostic pop
+#endif
+
 #endif /* MBEDTLS_CONSTANT_TIME_IMPL_H */
diff --git a/library/constant_time_internal.h b/library/constant_time_internal.h
index 1411e14..6d549f1 100644
--- a/library/constant_time_internal.h
+++ b/library/constant_time_internal.h
@@ -68,6 +68,9 @@
  * architectures, it uses a plain C fallback designed to yield constant-time code
  * (this has been observed to be constant-time on latest gcc, clang and MSVC
  * as of May 2023).
+ *
+ * For readability, the static inline definitions are separated out into
+ * constant_time_impl.h.
  */
 
 #if (SIZE_MAX > 0xffffffffffffffffULL)
@@ -91,19 +94,6 @@
 #endif
 #define MBEDTLS_CT_FALSE ((mbedtls_ct_condition_t) mbedtls_ct_compiler_opaque(0))
 
-/* constant_time_impl.h contains all the static inline implementations,
- * so that constant_time_internal.h is more readable.
- *
- * gcc generates warnings about duplicate declarations, so disable this
- * warning.
- */
-#ifdef __GNUC__
-    #pragma GCC diagnostic push
-    #pragma GCC diagnostic ignored "-Wredundant-decls"
-#endif
-
-#include "constant_time_impl.h"
-
 /* ============================================================================
  * Boolean operations
  */
@@ -483,8 +473,7 @@
                          size_t n);
  */
 
-#ifdef __GNUC__
-    #pragma GCC diagnostic pop
-#endif
+/* Include the implementation of static inline functions above. */
+#include "constant_time_impl.h"
 
 #endif /* MBEDTLS_CONSTANT_TIME_INTERNAL_H */