mirror of https://github.com/python/cpython
gh-117549: Don't use designated initializers in headers (#118580)
The designated initializer syntax in static inline functions in pycore_backoff.h causes problems for C++ or MSVC users who aren't yet using C++20. While internal, pycore_backoff.h is included (indirectly, via pycore_code.h) by some key 3rd party software that does so for speed.
This commit is contained in:
parent
44f67916da
commit
40cc809902
|
@ -44,13 +44,18 @@ make_backoff_counter(uint16_t value, uint16_t backoff)
|
|||
{
|
||||
assert(backoff <= 15);
|
||||
assert(value <= 0xFFF);
|
||||
return (_Py_BackoffCounter){.backoff = backoff, .value = value};
|
||||
_Py_BackoffCounter result;
|
||||
result.value = value;
|
||||
result.backoff = backoff;
|
||||
return result;
|
||||
}
|
||||
|
||||
static inline _Py_BackoffCounter
|
||||
forge_backoff_counter(uint16_t counter)
|
||||
{
|
||||
return (_Py_BackoffCounter){.as_counter = counter};
|
||||
_Py_BackoffCounter result;
|
||||
result.as_counter = counter;
|
||||
return result;
|
||||
}
|
||||
|
||||
static inline _Py_BackoffCounter
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
Don't use designated initializer syntax in inline functions in internal
|
||||
headers. They cause problems for C++ or MSVC users who aren't yet using the
|
||||
latest C++ standard (C++20). While internal, pycore_backoff.h, is included
|
||||
(indirectly, via pycore_code.h) by some key 3rd party software that does so
|
||||
for speed.
|
Loading…
Reference in New Issue