Skip to content

Commit

Permalink
patch 9.0.1685: silence Python 3.11 depreciations for gcc
Browse files Browse the repository at this point in the history
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>
  • Loading branch information
pheiduck authored and chrisbra committed Aug 11, 2023
1 parent b00df7a commit 422b9dc
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 2 deletions.
5 changes: 3 additions & 2 deletions src/if_python3.c
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
2 changes: 2 additions & 0 deletions src/version.c
Original file line number Diff line number Diff line change
Expand Up @@ -695,6 +695,8 @@ static char *(features[]) =

static int included_patches[] =
{ /* Add new patch number below this line */
/**/
1685,
/**/
1684,
/**/
Expand Down

0 comments on commit 422b9dc

Please sign in to comment.