gh-121249: adjust formatting codes for complex types in struct/ctypes (#132827)

* F - for float _Complex
* D - for double _Complex
* G - for long double _Complex (not supported by the struct module)
This commit is contained in:
Sergey B Kirpichev 2025-04-23 16:38:24 +03:00 committed by GitHub
parent 41dec4158d
commit 85f89cb3e6
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
8 changed files with 58 additions and 58 deletions

View file

@ -913,11 +913,11 @@ static const formatdef native_table[] = {
{'f', sizeof(float), FLOAT_ALIGN, nu_float, np_float},
{'d', sizeof(double), DOUBLE_ALIGN, nu_double, np_double},
#ifdef Py_HAVE_C_COMPLEX
{'E', sizeof(float complex), FLOAT_COMPLEX_ALIGN, nu_float_complex, np_float_complex},
{'C', sizeof(double complex), DOUBLE_COMPLEX_ALIGN, nu_double_complex, np_double_complex},
{'F', sizeof(float complex), FLOAT_COMPLEX_ALIGN, nu_float_complex, np_float_complex},
{'D', sizeof(double complex), DOUBLE_COMPLEX_ALIGN, nu_double_complex, np_double_complex},
#else
{'E', 1, 0, nu_complex_stub, np_complex_stub},
{'C', 1, 0, nu_complex_stub, np_complex_stub},
{'F', 1, 0, nu_complex_stub, np_complex_stub},
{'D', 1, 0, nu_complex_stub, np_complex_stub},
#endif
{'P', sizeof(void *), VOID_P_ALIGN, nu_void_p, np_void_p},
{0}
@ -1253,11 +1253,11 @@ static formatdef bigendian_table[] = {
{'f', 4, 0, bu_float, bp_float},
{'d', 8, 0, bu_double, bp_double},
#ifdef Py_HAVE_C_COMPLEX
{'E', 8, 0, bu_float_complex, bp_float_complex},
{'C', 16, 0, bu_double_complex, bp_double_complex},
{'F', 8, 0, bu_float_complex, bp_float_complex},
{'D', 16, 0, bu_double_complex, bp_double_complex},
#else
{'E', 1, 0, nu_complex_stub, np_complex_stub},
{'C', 1, 0, nu_complex_stub, np_complex_stub},
{'F', 1, 0, nu_complex_stub, np_complex_stub},
{'D', 1, 0, nu_complex_stub, np_complex_stub},
#endif
{0}
};
@ -1577,11 +1577,11 @@ static formatdef lilendian_table[] = {
{'f', 4, 0, lu_float, lp_float},
{'d', 8, 0, lu_double, lp_double},
#ifdef Py_HAVE_C_COMPLEX
{'E', 8, 0, lu_float_complex, lp_float_complex},
{'C', 16, 0, lu_double_complex, lp_double_complex},
{'F', 8, 0, lu_float_complex, lp_float_complex},
{'D', 16, 0, lu_double_complex, lp_double_complex},
#else
{'E', 1, 0, nu_complex_stub, np_complex_stub},
{'C', 1, 0, nu_complex_stub, np_complex_stub},
{'F', 1, 0, nu_complex_stub, np_complex_stub},
{'D', 1, 0, nu_complex_stub, np_complex_stub},
#endif
{0}
};