diff options
Diffstat (limited to 'Python/ceval.c')
-rw-r--r-- | Python/ceval.c | 55 |
1 files changed, 0 insertions, 55 deletions
diff --git a/Python/ceval.c b/Python/ceval.c index 52a42b0072..af5eb99d6c 100644 --- a/Python/ceval.c +++ b/Python/ceval.c @@ -1574,61 +1574,6 @@ _PyEval_EvalFrameDefault(PyFrameObject *f, int throwflag) DISPATCH(); } - TARGET(STORE_ANNOTATION) { - _Py_IDENTIFIER(__annotations__); - PyObject *ann_dict; - PyObject *ann = POP(); - PyObject *name = GETITEM(names, oparg); - int err; - if (f->f_locals == NULL) { - PyErr_Format(PyExc_SystemError, - "no locals found when storing annotation"); - Py_DECREF(ann); - goto error; - } - /* first try to get __annotations__ from locals... */ - if (PyDict_CheckExact(f->f_locals)) { - ann_dict = _PyDict_GetItemId(f->f_locals, - &PyId___annotations__); - if (ann_dict == NULL) { - PyErr_SetString(PyExc_NameError, - "__annotations__ not found"); - Py_DECREF(ann); - goto error; - } - Py_INCREF(ann_dict); - } - else { - PyObject *ann_str = _PyUnicode_FromId(&PyId___annotations__); - if (ann_str == NULL) { - Py_DECREF(ann); - goto error; - } - ann_dict = PyObject_GetItem(f->f_locals, ann_str); - if (ann_dict == NULL) { - if (PyErr_ExceptionMatches(PyExc_KeyError)) { - PyErr_SetString(PyExc_NameError, - "__annotations__ not found"); - } - Py_DECREF(ann); - goto error; - } - } - /* ...if succeeded, __annotations__[name] = ann */ - if (PyDict_CheckExact(ann_dict)) { - err = PyDict_SetItem(ann_dict, name, ann); - } - else { - err = PyObject_SetItem(ann_dict, name, ann); - } - Py_DECREF(ann_dict); - Py_DECREF(ann); - if (err != 0) { - goto error; - } - DISPATCH(); - } - TARGET(DELETE_SUBSCR) { PyObject *sub = TOP(); PyObject *container = SECOND(); |