diff --git a/Objects/sliceobject.c b/Objects/sliceobject.c index e6776ac92b669c..5a33977f064421 100644 --- a/Objects/sliceobject.c +++ b/Objects/sliceobject.c @@ -26,7 +26,7 @@ ellipsis_new(PyTypeObject *type, PyObject *args, PyObject *kwargs) PyErr_SetString(PyExc_TypeError, "EllipsisType takes no arguments"); return NULL; } - return Py_NewRef(Py_Ellipsis); + return Py_Ellipsis; } static void diff --git a/Python/compile.c b/Python/compile.c index a0ad3687f586d8..2dfa06eaac810a 100644 --- a/Python/compile.c +++ b/Python/compile.c @@ -892,10 +892,10 @@ static PyObject* merge_consts_recursive(PyObject *const_cache, PyObject *o) { assert(PyDict_CheckExact(const_cache)); - // None and Ellipsis are singleton, and key is the singleton. + // None and Ellipsis are immortal objects, and key is the singleton. // No need to merge object and key. if (o == Py_None || o == Py_Ellipsis) { - return Py_NewRef(o); + return o; } PyObject *key = _PyCode_ConstantKey(o); @@ -5706,7 +5706,7 @@ compiler_error(struct compiler *c, location loc, } PyObject *loc_obj = PyErr_ProgramTextObject(c->c_filename, loc.lineno); if (loc_obj == NULL) { - loc_obj = Py_NewRef(Py_None); + loc_obj = Py_None; } PyObject *args = Py_BuildValue("O(OiiOii)", msg, c->c_filename, loc.lineno, loc.col_offset + 1, loc_obj, diff --git a/Python/marshal.c b/Python/marshal.c index 2966139cec9ae9..7f5d5d71529300 100644 --- a/Python/marshal.c +++ b/Python/marshal.c @@ -1015,7 +1015,7 @@ r_object(RFILE *p) break; case TYPE_NONE: - retval = Py_NewRef(Py_None); + retval = Py_None; break; case TYPE_STOPITER: @@ -1023,15 +1023,15 @@ r_object(RFILE *p) break; case TYPE_ELLIPSIS: - retval = Py_NewRef(Py_Ellipsis); + retval = Py_Ellipsis; break; case TYPE_FALSE: - retval = Py_NewRef(Py_False); + retval = Py_False; break; case TYPE_TRUE: - retval = Py_NewRef(Py_True); + retval = Py_True; break; case TYPE_INT: