<p>I've been looking for a tool to extract exception information from a C++ program. The most wanted feature I'm looking for: I want to know all the exceptions that can be thrown from a function (which would include all the function that is called from that function recursively).</p>

<p>I've always thought that documenting errors and exceptions in particular is very hard (and takes a lot of effort to keep up to date). But if there is some way to automate that, it would be very helpful.</p>

<p>A tool for windows and Visual Studio would be preferred but not necessary, I could always work around that.</p>

PC-Lint
claims to do static exception analysis of C++ code.
Coverity
is another static C++ code analysis tool that apparently informs you of unhandled exceptions.
AQtime
claims to have exception tracing as part of its code analysis. Plus, they advertise Visual Studio integration.
Here
is a list of several static code analysis tools.