diff --git a/Doc/api/concrete.tex b/Doc/api/concrete.tex
index 001d0ad..111725f 100644
--- a/Doc/api/concrete.tex
+++ b/Doc/api/concrete.tex
@@ -1449,7 +1449,7 @@
   resulting Unicode string.
 \end{cfuncdesc}
 
-\begin{cfuncdesc}{PyObject*}{PyUnicode_Tailmatch}{PyObject *str,
+\begin{cfuncdesc}{int}{PyUnicode_Tailmatch}{PyObject *str,
                                                   PyObject *substr,
                                                   int start,
                                                   int end,
@@ -1457,6 +1457,7 @@
   Return 1 if \var{substr} matches \var{str}[\var{start}:\var{end}] at
   the given tail end (\var{direction} == -1 means to do a prefix
   match, \var{direction} == 1 a suffix match), 0 otherwise.
+  Returns \code{-1} if an error occurred.                         
 \end{cfuncdesc}
 
 \begin{cfuncdesc}{int}{PyUnicode_Find}{PyObject *str,
