patch 9.0.1685: silence Python 3.11 depreciations for gcc

Problem: Python 3.11 interface throws deprecation warnings
Solution: ignore those warnings for gcc and clang

Python 3.11 deprecation warnings are already silenced for clang using
the pragma
```
 # pragma clang diagnostic ignored "-Wdeprecated-declarations"
```

However those warnings are also emitted when using gcc. To avoid them
for both compilers, change use the __GNUC__ ifdef, which is defined for
gcc as well as clang.

Additionally, instead of using the "clang diagnostic ignored" pragma,
let's make use of 'GCC diagnostic ignored' which is again supported by
clang and GCC

closes: #12610

Signed-off-by: Christian Brabandt <cb@256bit.org>
Co-authored-by: Philip H <47042125+pheiduck@users.noreply.github.com>
diff --git a/src/if_python3.c b/src/if_python3.c
index 240b88f..06c02ce 100644
--- a/src/if_python3.c
+++ b/src/if_python3.c
@@ -82,8 +82,9 @@
 #endif
 
 // Suppress Python 3.11 depreciations to see useful warnings
-#if defined(__clang__) && defined(__clang_major__) && __clang_major__ > 11
-# pragma clang diagnostic ignored "-Wdeprecated-declarations"
+#ifdef __GNUC__
+# pragma GCC diagnostic push
+# pragma GCC diagnostic ignored "-Wdeprecated-declarations"
 #endif
 
 // Python 3 does not support CObjects, always use Capsules