Make __module__ writable except in restricted mode (like for classic classes).
diff --git a/Objects/funcobject.c b/Objects/funcobject.c
index fa24131..6f0fa26 100644
--- a/Objects/funcobject.c
+++ b/Objects/funcobject.c
@@ -159,7 +159,7 @@
RESTRICTED|READONLY},
{"func_name", T_OBJECT, OFF(func_name), READONLY},
{"__name__", T_OBJECT, OFF(func_name), READONLY},
- {"__module__", T_OBJECT, OFF(func_module)},
+ {"__module__", T_OBJECT, OFF(func_module), WRITE_RESTRICTED},
{NULL} /* Sentinel */
};
diff --git a/Objects/methodobject.c b/Objects/methodobject.c
index 5e967d3..3a92fa4 100644
--- a/Objects/methodobject.c
+++ b/Objects/methodobject.c
@@ -189,7 +189,7 @@
#define OFF(x) offsetof(PyCFunctionObject, x)
static PyMemberDef meth_members[] = {
- {"__module__", T_OBJECT, OFF(m_module)},
+ {"__module__", T_OBJECT, OFF(m_module), WRITE_RESTRICTED},
{NULL}
};