about summary refs log tree commit diff
path: root/pkgs/development/interpreters/python/cpython/3.12/0001-Fix-build-with-_PY_SHORT_FLOAT_REPR-0.patch
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/interpreters/python/cpython/3.12/0001-Fix-build-with-_PY_SHORT_FLOAT_REPR-0.patch')
-rw-r--r--pkgs/development/interpreters/python/cpython/3.12/0001-Fix-build-with-_PY_SHORT_FLOAT_REPR-0.patch53
1 files changed, 53 insertions, 0 deletions
diff --git a/pkgs/development/interpreters/python/cpython/3.12/0001-Fix-build-with-_PY_SHORT_FLOAT_REPR-0.patch b/pkgs/development/interpreters/python/cpython/3.12/0001-Fix-build-with-_PY_SHORT_FLOAT_REPR-0.patch
new file mode 100644
index 0000000000000..a978413a676a6
--- /dev/null
+++ b/pkgs/development/interpreters/python/cpython/3.12/0001-Fix-build-with-_PY_SHORT_FLOAT_REPR-0.patch
@@ -0,0 +1,53 @@
+From 04bfb877c8ccbd431dcae429abb487c1e3390801 Mon Sep 17 00:00:00 2001
+From: Yureka <yuka@yuka.dev>
+Date: Sun, 30 Jun 2024 09:37:49 +0200
+Subject: [PATCH] Fix build with _PY_SHORT_FLOAT_REPR == 0
+
+---
+ Include/internal/pycore_dtoa.h | 10 +++-------
+ 1 file changed, 3 insertions(+), 7 deletions(-)
+
+diff --git a/Include/internal/pycore_dtoa.h b/Include/internal/pycore_dtoa.h
+index 4d9681d59a..899d413b05 100644
+--- a/Include/internal/pycore_dtoa.h
++++ b/Include/internal/pycore_dtoa.h
+@@ -11,8 +11,6 @@ extern "C" {
+ #include "pycore_pymath.h"        // _PY_SHORT_FLOAT_REPR
+ 
+ 
+-#if _PY_SHORT_FLOAT_REPR == 1
+-
+ typedef uint32_t ULong;
+ 
+ struct
+@@ -22,15 +20,15 @@ Bigint {
+     ULong x[1];
+ };
+ 
+-#ifdef Py_USING_MEMORY_DEBUGGER
++#if defined(Py_USING_MEMORY_DEBUGGER) || _PY_SHORT_FLOAT_REPR == 0
+ 
+ struct _dtoa_state {
+     int _not_used;
+ };
+-#define _dtoa_interp_state_INIT(INTERP) \
++#define _dtoa_state_INIT(INTERP) \
+     {0}
+ 
+-#else  // !Py_USING_MEMORY_DEBUGGER
++#else  // !Py_USING_MEMORY_DEBUGGER && _PY_SHORT_FLOAT_REPR != 0
+ 
+ /* The size of the Bigint freelist */
+ #define Bigint_Kmax 7
+@@ -65,8 +63,6 @@ PyAPI_FUNC(char *) _Py_dg_dtoa(double d, int mode, int ndigits,
+                         int *decpt, int *sign, char **rve);
+ PyAPI_FUNC(void) _Py_dg_freedtoa(char *s);
+ 
+-#endif // _PY_SHORT_FLOAT_REPR == 1
+-
+ #ifdef __cplusplus
+ }
+ #endif
+-- 
+2.45.1
+