[Python-Dev] Add Py_REPLACE and Py_XREPLACE macros

2014年1月29日 10:26:29 -0800

The Py_CLEAR macros is used as safe alternative for following unsafe idiomatic code:
 Py_XDECREF(ptr);
 ptr = NULL;
But other unsafe idiomatic code is widely used in the sources:
 Py_XDECREF(ptr);
 ptr = new_value;
Every occurrence of such code is potential bug for same reasons as for Py_CLEAR. It was offered [1] to introduce new macros Py_REPLACE and Py_XREPLACE for safe replace with Py_DECREF and Py_XDECREF respectively. Automatically generated patch contains about 50 replaces [2].
[1] http://bugs.python.org/issue16447
[2] http://bugs.python.org/issue20440
_______________________________________________
Python-Dev mailing list
[email protected]
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to