diff --git a/Doc/api/concrete.tex b/Doc/api/concrete.tex
index d569228..a77a584 100644
--- a/Doc/api/concrete.tex
+++ b/Doc/api/concrete.tex
@@ -121,13 +121,13 @@
   \withsubitem{(in modules types)}{\ttindex{IntType}}
 \end{cvardesc}
 
-\begin{cfuncdesc}{int}{PyInt_Check}{PyObject* o}
+\begin{cfuncdesc}{int}{PyInt_Check}{PyObject *o}
   Returns true if \var{o} is of type \cdata{PyInt_Type} or a subtype
   of \cdata{PyInt_Type}.
   \versionchanged[Allowed subtypes to be accepted]{2.2}
 \end{cfuncdesc}
 
-\begin{cfuncdesc}{int}{PyInt_CheckExact}{PyObject* o}
+\begin{cfuncdesc}{int}{PyInt_CheckExact}{PyObject *o}
   Returns true if \var{o} is of type \cdata{PyInt_Type}, but not a
   subtype of \cdata{PyInt_Type}.
   \versionadded{2.2}
@@ -199,7 +199,7 @@
 such, the normal creation and deletion functions don't apply to
 booleans.  The following macros are available, however.
 
-\begin{cfuncdesc}{int}{PyBool_Check}{PyObject* o}
+\begin{cfuncdesc}{int}{PyBool_Check}{PyObject *o}
   Returns true if \var{o} is of type \cdata{PyBool_Type}.
   \versionadded{2.3}
 \end{cfuncdesc}
@@ -221,16 +221,11 @@
 \end{csimplemacrodesc}
 
 \begin{csimplemacrodesc}{Py_RETURN_TRUE}
-Return Py_True from a function, properly incrementing its reference
-count.
+  Return \constant{Py_True} from a function, properly incrementing its
+  reference count.
 \versionadded{2.4}
 \end{csimplemacrodesc}
 
-\begin{cfuncdesc}{int}{PyBool_Check}{PyObject* o}
-  Returns true if \var{o} is of type \cdata{PyBool_Type}.
-  \versionadded{2.3}
-\end{cfuncdesc}
-
 \begin{cfuncdesc}{int}{PyBool_FromLong}{long v}
 Returns \constant{Py_True} or \constant{Py_False} depending on the
 truth value of \var{v}.
