Fix some doc problems.
diff --git a/Doc/api/concrete.tex b/Doc/api/concrete.tex
index 4dc3f4c..ddb19d0 100644
--- a/Doc/api/concrete.tex
+++ b/Doc/api/concrete.tex
@@ -1013,7 +1013,7 @@
    Create a Unicode object from an UTF-8 encoded null-terminated
    char buffer \var{u}.
    \versionadded{3.0}
-\end{funcdesc}
+\end{cfuncdesc}
 
 \begin{cfuncdesc}{PyObject*}{PyUnicode_FromFormat}{const char *format, ...}
   Take a C \cfunction{printf()}-style \var{format} string and a
diff --git a/Doc/api/utilities.tex b/Doc/api/utilities.tex
index 961f200..037c087 100644
--- a/Doc/api/utilities.tex
+++ b/Doc/api/utilities.tex
@@ -429,7 +429,7 @@
 
   \item[\samp{y\#} (bytes object)
   {[const char *, int]}]
-  This variant on \samp{s#} stores into two C variables, the first one
+  This variant on \samp{s\#} stores into two C variables, the first one
   a pointer to a character string, the second one its length.  This only
   accepts bytes objects.
 
@@ -974,7 +974,7 @@
 
 The wrappers ensure that \var{str}[\var{size}-1] is always
 \character{\textbackslash0} upon return. They never write more than
-\var{size} bytes (including the trailing \character{\textbackslash0}
+\var{size} bytes (including the trailing \character{\textbackslash0})
 into str. Both functions require that \code{\var{str} != NULL},
 \code{\var{size} > 0} and \code{\var{format} != NULL}.