summaryrefslogtreecommitdiffstats
path: root/Misc
diff options
context:
space:
mode:
authorVictor Stinner <victor.stinner@gmail.com>2016-01-20 10:12:38 (GMT)
committerVictor Stinner <victor.stinner@gmail.com>2016-01-20 10:12:38 (GMT)
commitbfd316e750bc3040c08d1b5872e2de188e8c1e5f (patch)
treea0f5fc0ce8c171cd2b1f875c33b6089471c07447 /Misc
parentaebb6d3682e08c93d8468a9291180c5cbdc2df1b (diff)
downloadcpython-bfd316e750bc3040c08d1b5872e2de188e8c1e5f.zip
cpython-bfd316e750bc3040c08d1b5872e2de188e8c1e5f.tar.gz
cpython-bfd316e750bc3040c08d1b5872e2de188e8c1e5f.tar.bz2
Add _PyThreadState_UncheckedGet()
Issue #26154: Add a new private _PyThreadState_UncheckedGet() function which gets the current thread state, but don't call Py_FatalError() if it is NULL. Python 3.5.1 removed the _PyThreadState_Current symbol from the Python C API to no more expose complex and private atomic types. Atomic types depends on the compiler or can even depend on compiler options. The new function _PyThreadState_UncheckedGet() allows to get the variable value without having to care of the exact implementation of atomic types. Changes: * Replace direct usage of the _PyThreadState_Current variable with a call to _PyThreadState_UncheckedGet(). * In pystate.c, replace direct usage of the _PyThreadState_Current variable with the PyThreadState_GET() macro for readability. * Document also PyThreadState_Get() in pystate.h
Diffstat (limited to 'Misc')
-rw-r--r--Misc/NEWS7
1 files changed, 7 insertions, 0 deletions
diff --git a/Misc/NEWS b/Misc/NEWS
index 3fe9bd0..4baf757 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -10,6 +10,13 @@ Release date: tba
Core and Builtins
-----------------
+- Issue #26154: Add a new private _PyThreadState_UncheckedGet() function to get
+ the current Python thread state, but don't issue a fatal error if it is NULL.
+ This new function must be used instead of accessing directly the
+ _PyThreadState_Current variable. The variable is no more exposed since
+ Python 3.5.1 to hide the exact implementation of atomic C types, to avoid
+ compiler issues.
+
- Issue #25731: Fix set and deleting __new__ on a class.
- Issue #22995: [UPDATE] Comment out the one of the pickleability tests in