Bug 1221014 - GCC 14: python-multidict package fails
Summary: GCC 14: python-multidict package fails
Status: RESOLVED FIXED
Alias: None
Product: openSUSE Tumbleweed
Classification: openSUSE
Component: Python (show other bugs)
Version: Current
Hardware: Other Other
: P5 - None : Normal (vote)
Target Milestone: ---
Assignee: Daniel Garcia
QA Contact: E-mail List
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: modern_C
  Show dependency treegraph
 
Reported: 2024-03-06 07:27 UTC by Michal Jireš
Modified: 2024-03-11 16:35 UTC (History)
1 user (show)

See Also:
Found By: ---
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Michal Jireš 2024-03-06 07:27:42 UTC
Building python-multidict with GCC 14 fails here:
https://build.opensuse.org/package/live_build_log/openSUSE:Factory:Staging:Gcc7/python-multidict/standard/x86_64

Due to (exhaustive list of errors):

multidict/_multidict.c: In function ‘multidict_getall’:
multidict/_multidict.c:458:37: error: initialization of ‘int’ from ‘void *’ makes integer from pointer without a cast [-Wint-conversion]
  458 |     static _PyArg_Parser _parser = {NULL, _keywords, "getall", 0};
      |                                     ^~~~
multidict/_multidict.c:458:37: note: (near initialization for ‘_parser.initialized’)
multidict/_multidict.c:458:43: error: initialization of ‘const char *’ from incompatible pointer type ‘const char * const*’ [-Wincompatible-pointer-types]
  458 |     static _PyArg_Parser _parser = {NULL, _keywords, "getall", 0};
      |                                           ^~~~~~~~~
multidict/_multidict.c:458:43: note: (near initialization for ‘_parser.format’)
multidict/_multidict.c:458:54: error: initialization of ‘const char * const*’ from incompatible pointer type ‘char *’ [-Wincompatible-pointer-types]
  458 |     static _PyArg_Parser _parser = {NULL, _keywords, "getall", 0};
      |                                                      ^~~~~~~~
multidict/_multidict.c:458:54: note: (near initialization for ‘_parser.keywords’)
multidict/_multidict.c: In function ‘multidict_getone’:
multidict/_multidict.c:503:37: error: initialization of ‘int’ from ‘void *’ makes integer from pointer without a cast [-Wint-conversion]
  503 |     static _PyArg_Parser _parser = {NULL, _keywords, "getone", 0};
      |                                     ^~~~
multidict/_multidict.c:503:43: error: initialization of ‘const char *’ from incompatible pointer type ‘const char * const*’ [-Wincompatible-pointer-types]
  503 |     static _PyArg_Parser _parser = {NULL, _keywords, "getone", 0};
      |                                           ^~~~~~~~~
multidict/_multidict.c:503:54: error: initialization of ‘const char * const*’ from incompatible pointer type ‘char *’ [-Wincompatible-pointer-types]
  503 |     static _PyArg_Parser _parser = {NULL, _keywords, "getone", 0};
      |                                                      ^~~~~~~~
multidict/_multidict.c: In function ‘multidict_get’:
multidict/_multidict.c:538:37: error: initialization of ‘int’ from ‘void *’ makes integer from pointer without a cast [-Wint-conversion]
  538 |     static _PyArg_Parser _parser = {NULL, _keywords, "get", 0};
      |                                     ^~~~
multidict/_multidict.c:538:43: error: initialization of ‘const char *’ from incompatible pointer type ‘const char * const*’ [-Wincompatible-pointer-types]
  538 |     static _PyArg_Parser _parser = {NULL, _keywords, "get", 0};
      |                                           ^~~~~~~~~
multidict/_multidict.c:538:54: error: initialization of ‘const char * const*’ from incompatible pointer type ‘char *’ [-Wincompatible-pointer-types]
  538 |     static _PyArg_Parser _parser = {NULL, _keywords, "get", 0};
      |                                                      ^~~~~
multidict/_multidict.c: In function ‘multidict_add’:
multidict/_multidict.c:780:37: error: initialization of ‘int’ from ‘void *’ makes integer from pointer without a cast [-Wint-conversion]
  780 |     static _PyArg_Parser _parser = {NULL, _keywords, "add", 0};
      |                                     ^~~~
multidict/_multidict.c:780:43: error: initialization of ‘const char *’ from incompatible pointer type ‘const char * const*’ [-Wincompatible-pointer-types]
  780 |     static _PyArg_Parser _parser = {NULL, _keywords, "add", 0};
      |                                           ^~~~~~~~~
multidict/_multidict.c:780:54: error: initialization of ‘const char * const*’ from incompatible pointer type ‘char *’ [-Wincompatible-pointer-types]
  780 |     static _PyArg_Parser _parser = {NULL, _keywords, "add", 0};
      |                                                      ^~~~~
multidict/_multidict.c: In function ‘multidict_setdefault’:
multidict/_multidict.c:839:37: error: initialization of ‘int’ from ‘void *’ makes integer from pointer without a cast [-Wint-conversion]
  839 |     static _PyArg_Parser _parser = {NULL, _keywords, "setdefault", 0};
      |                                     ^~~~
multidict/_multidict.c:839:43: error: initialization of ‘const char *’ from incompatible pointer type ‘const char * const*’ [-Wincompatible-pointer-types]
  839 |     static _PyArg_Parser _parser = {NULL, _keywords, "setdefault", 0};
      |                                           ^~~~~~~~~
multidict/_multidict.c:839:54: error: initialization of ‘const char * const*’ from incompatible pointer type ‘char *’ [-Wincompatible-pointer-types]
  839 |     static _PyArg_Parser _parser = {NULL, _keywords, "setdefault", 0};
      |                                                      ^~~~~~~~~~~~
multidict/_multidict.c: In function ‘multidict_popone’:
multidict/_multidict.c:875:37: error: initialization of ‘int’ from ‘void *’ makes integer from pointer without a cast [-Wint-conversion]
  875 |     static _PyArg_Parser _parser = {NULL, _keywords, "popone", 0};
      |                                     ^~~~
multidict/_multidict.c:875:43: error: initialization of ‘const char *’ from incompatible pointer type ‘const char * const*’ [-Wincompatible-pointer-types]
  875 |     static _PyArg_Parser _parser = {NULL, _keywords, "popone", 0};
      |                                           ^~~~~~~~~
multidict/_multidict.c:875:54: error: initialization of ‘const char * const*’ from incompatible pointer type ‘char *’ [-Wincompatible-pointer-types]
  875 |     static _PyArg_Parser _parser = {NULL, _keywords, "popone", 0};
      |                                                      ^~~~~~~~
multidict/_multidict.c: In function ‘multidict_pop’:
multidict/_multidict.c:922:37: error: initialization of ‘int’ from ‘void *’ makes integer from pointer without a cast [-Wint-conversion]
  922 |     static _PyArg_Parser _parser = {NULL, _keywords, "pop", 0};
      |                                     ^~~~
multidict/_multidict.c:922:43: error: initialization of ‘const char *’ from incompatible pointer type ‘const char * const*’ [-Wincompatible-pointer-types]
  922 |     static _PyArg_Parser _parser = {NULL, _keywords, "pop", 0};
      |                                           ^~~~~~~~~
multidict/_multidict.c:922:54: error: initialization of ‘const char * const*’ from incompatible pointer type ‘char *’ [-Wincompatible-pointer-types]
  922 |     static _PyArg_Parser _parser = {NULL, _keywords, "pop", 0};
      |                                                      ^~~~~
multidict/_multidict.c: In function ‘multidict_popall’:
multidict/_multidict.c:970:37: error: initialization of ‘int’ from ‘void *’ makes integer from pointer without a cast [-Wint-conversion]
  970 |     static _PyArg_Parser _parser = {NULL, _keywords, "popall", 0};
      |                                     ^~~~
multidict/_multidict.c:970:43: error: initialization of ‘const char *’ from incompatible pointer type ‘const char * const*’ [-Wincompatible-pointer-types]
  970 |     static _PyArg_Parser _parser = {NULL, _keywords, "popall", 0};
      |                                           ^~~~~~~~~
multidict/_multidict.c:970:54: error: initialization of ‘const char * const*’ from incompatible pointer type ‘char *’ [-Wincompatible-pointer-types]
  970 |     static _PyArg_Parser _parser = {NULL, _keywords, "popall", 0};
      |                                                      ^~~~~~~~
error: command '/usr/bin/gcc' failed with exit code 1



See the meta bug#1220571 for more info.
Comment 1 Daniel Garcia 2024-03-07 10:27:40 UTC
Fixed upstream in 6.0.5, here's the request for Factory:
https://build.opensuse.org/request/show/1155850
Comment 2 Daniel Garcia 2024-03-11 16:35:43 UTC
Fix landed factory