Change all the function attributes from func_* -> __*__. This gets rid
of func_name, func_dict and func_doc as they already exist as __name__,
__dict__ and __doc__.
diff --git a/Doc/lib/libdis.tex b/Doc/lib/libdis.tex
index 3f00fa8..84841e4 100644
--- a/Doc/lib/libdis.tex
+++ b/Doc/lib/libdis.tex
@@ -622,7 +622,7 @@
\end{opcodedesc}
\begin{opcodedesc}{MAKE_CLOSURE}{argc}
-Creates a new function object, sets its \var{func_closure} slot, and
+Creates a new function object, sets its \var{__closure__} slot, and
pushes it on the stack. TOS is the code associated with the function.
If the code object has N free variables, the next N items on the stack
are the cells for these variables. The function also has \var{argc}
diff --git a/Doc/lib/libinspect.tex b/Doc/lib/libinspect.tex
index 85651f0..c9a63fc 100644
--- a/Doc/lib/libinspect.tex
+++ b/Doc/lib/libinspect.tex
@@ -45,11 +45,9 @@
\hline
\lineiv{function}{__doc__}{documentation string}{}
\lineiv{}{__name__}{name with which this function was defined}{}
- \lineiv{}{func_code}{code object containing compiled function bytecode}{}
- \lineiv{}{func_defaults}{tuple of any default values for arguments}{}
- \lineiv{}{func_doc}{(same as __doc__)}{}
- \lineiv{}{func_globals}{global namespace in which this function was defined}{}
- \lineiv{}{func_name}{(same as __name__)}{}
+ \lineiv{}{__code__}{code object containing compiled function bytecode}{}
+ \lineiv{}{__defaults__}{tuple of any default values for arguments}{}
+ \lineiv{}{__globals__}{global namespace in which this function was defined}{}
\hline
\lineiv{traceback}{tb_frame}{frame object at this level}{}
\lineiv{}{tb_lasti}{index of last attempted instruction in bytecode}{}
diff --git a/Doc/lib/libstdtypes.tex b/Doc/lib/libstdtypes.tex
index cc117ab..f3ce92a 100644
--- a/Doc/lib/libstdtypes.tex
+++ b/Doc/lib/libstdtypes.tex
@@ -1964,10 +1964,10 @@
They differ from function objects because they don't contain a
reference to their global execution environment. Code objects are
returned by the built-in \function{compile()} function and can be
-extracted from function objects through their \member{func_code}
+extracted from function objects through their \member{__code__}
attribute.
\bifuncindex{compile}
-\withsubitem{(function object attribute)}{\ttindex{func_code}}
+\withsubitem{(function object attribute)}{\ttindex{__code__}}
A code object can be executed or evaluated by passing it (instead of a
source string) to the \function{exec()} or \function{eval()}