https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107646
--- Comment #6 from David Malcolm <dmalcolm at gcc dot gnu.org> --- (In reply to David Malcolm from comment #5) > How precisely to track behavior of API entrypoints? We can’t implement > known_functions that precisely model every entrypoint. > > Consider: > https://docs.python.org/3/c-api/dict.html#c.PyDict_SetItem Some attribute ideas: extern int PyDict_SetItem(PyObject *p, PyObject *key, PyObject *val) __attribute__((cpython_param_must_be_hashable (key)) __attribute__((return_val_on_success (0)) __attribute__((return_val_on_failure (-1)) __attribute__((cpython_param_incremented_on_success (key)) __attribute__((cpython_param_untouched_on_success (val)) ;