diff --git a/Doc/api/concrete.tex b/Doc/api/concrete.tex
index 2face20..bf4456a 100644
--- a/Doc/api/concrete.tex
+++ b/Doc/api/concrete.tex
@@ -1325,23 +1325,27 @@
   match, \var{direction} == 1 a suffix match), 0 otherwise.
 \end{cfuncdesc}
 
-\begin{cfuncdesc}{PyObject*}{PyUnicode_Find}{PyObject *str,
-                                                  PyObject *substr,
-                                                  int start,
-                                                  int end,
-                                                  int direction}
+\begin{cfuncdesc}{int}{PyUnicode_Find}{PyObject *str,
+                                       PyObject *substr,
+                                       int start,
+                                       int end,
+                                       int direction}
   Return the first position of \var{substr} in
   \var{str}[\var{start}:\var{end}] using the given \var{direction}
   (\var{direction} == 1 means to do a forward search,
-  \var{direction} == -1 a backward search), 0 otherwise.
+  \var{direction} == -1 a backward search).  The return value is the
+  index of the first match; a value of \code{-1} indicates that no
+  match was found, and \code{-2} indicates that an error occurred and
+  an exception has been set.
 \end{cfuncdesc}
 
-\begin{cfuncdesc}{PyObject*}{PyUnicode_Count}{PyObject *str,
-                                                  PyObject *substr,
-                                                  int start,
-                                                  int end}
-  Count the number of occurrences of \var{substr} in
-  \var{str}[\var{start}:\var{end}]
+\begin{cfuncdesc}{int}{PyUnicode_Count}{PyObject *str,
+                                        PyObject *substr,
+                                        int start,
+                                        int end}
+  Return the number of non-overlapping occurrences of \var{substr} in
+  \code{\var{str}[\var{start}:\var{end}]}.  Returns \code{-1} if an
+  error occurred.
 \end{cfuncdesc}
 
 \begin{cfuncdesc}{PyObject*}{PyUnicode_Replace}{PyObject *str,
diff --git a/Doc/api/refcounts.dat b/Doc/api/refcounts.dat
index dcc66bc..ecc82e1 100644
--- a/Doc/api/refcounts.dat
+++ b/Doc/api/refcounts.dat
@@ -1393,14 +1393,14 @@
 PyUnicode_Tailmatch:int:end::
 PyUnicode_Tailmatch:int:direction::
 
-PyUnicode_Find:PyObject*::+1:
+PyUnicode_Find:int:::
 PyUnicode_Find:PyObject*:str:0:
 PyUnicode_Find:PyObject*:substr:0:
 PyUnicode_Find:int:start::
 PyUnicode_Find:int:end::
 PyUnicode_Find:int:direction::
 
-PyUnicode_Count:PyObject*::+1:
+PyUnicode_Count:int:::
 PyUnicode_Count:PyObject*:str:0:
 PyUnicode_Count:PyObject*:substr:0:
 PyUnicode_Count:int:start::
