update to new C roles and directives
diff --git a/Doc/c-api/none.rst b/Doc/c-api/none.rst
index 1bb603e..aeaca97 100644
--- a/Doc/c-api/none.rst
+++ b/Doc/c-api/none.rst
@@ -7,22 +7,22 @@
 
 .. index:: object: None
 
-Note that the :ctype:`PyTypeObject` for ``None`` is not directly exposed in the
+Note that the :c:type:`PyTypeObject` for ``None`` is not directly exposed in the
 Python/C API.  Since ``None`` is a singleton, testing for object identity (using
-``==`` in C) is sufficient. There is no :cfunc:`PyNone_Check` function for the
+``==`` in C) is sufficient. There is no :c:func:`PyNone_Check` function for the
 same reason.
 
 
-.. cvar:: PyObject* Py_None
+.. c:var:: PyObject* Py_None
 
    The Python ``None`` object, denoting lack of value.  This object has no methods.
    It needs to be treated just like any other object with respect to reference
    counts.
 
 
-.. cmacro:: Py_RETURN_NONE
+.. c:macro:: Py_RETURN_NONE
 
-   Properly handle returning :cdata:`Py_None` from within a C function.
+   Properly handle returning :c:data:`Py_None` from within a C function.
 
    .. versionadded:: 2.4