Further cleanup of exceptions. All interpolation-related exceptions
now derive from InterpolationError, which is not raised directly (only
subclasses get raised). This matches what the docs already said.
diff --git a/Doc/lib/libcfgparser.tex b/Doc/lib/libcfgparser.tex
index 9951645..1f33df4 100644
--- a/Doc/lib/libcfgparser.tex
+++ b/Doc/lib/libcfgparser.tex
@@ -90,17 +90,26 @@
\end{excdesc}
\begin{excdesc}{InterpolationError}
-Exception raised when problems occur performing string interpolation.
+Base class for exceptions raised when problems occur performing string
+interpolation.
\end{excdesc}
\begin{excdesc}{InterpolationDepthError}
Exception raised when string interpolation cannot be completed because
the number of iterations exceeds \constant{MAX_INTERPOLATION_DEPTH}.
+Subclass of \exception{InterpolationError}.
+\end{excdesc}
+
+\begin{excdesc}{InterpolationMissingOptionError}
+Exception raised when an option referenced from a value does not exist.
+Subclass of \exception{InterpolationError}.
+\versionadded{2.3}
\end{excdesc}
\begin{excdesc}{InterpolationSyntaxError}
Exception raised when the source text into which substitutions are
made does not conform to the required syntax.
+Subclass of \exception{InterpolationError}.
\versionadded{2.3}
\end{excdesc}
@@ -122,8 +131,8 @@
\begin{seealso}
\seemodule{shlex}{Support for a creating \UNIX{} shell-like
- minilanguages which can be used as an alternate format
- for application configuration files.}
+ mini-languages which can be used as an alternate
+ format for application configuration files.}
\end{seealso}