<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>

[{'answer_id': 28392, 'author': 'postfuturist', 'author_id': 1892, 'author_profile': 'https://Stackoverflow.com/users/1892', 'pm_score': 3, 'selected': False, 'text': '<p><a href="http://www.gimpel.com/" rel="nofollow noreferrer">PC-Lint</a> claims to do static exception analysis of C++ code.<br>\n<a href="http://www.coverity.com/" rel="nofollow noreferrer">Coverity</a> is another static C++ code analysis tool that apparently informs you of unhandled exceptions.<br>\n<a href="http://www.automatedqa.com/products/aqtime/index.asp" rel="nofollow noreferrer">AQtime</a> claims to have exception tracing as part of its code analysis. Plus, they advertise Visual Studio integration.<br>\n<a href="https://web.archive.org/web/20111007220353/http://testingfaqs.org/t-static.html" rel="nofollow noreferrer">Here</a> is a list of several static code analysis tools.</p>\n'}, {'answer_id': 725317, 'author': 'Richard Corden', 'author_id': 11698, 'author_profile': 'https://Stackoverflow.com/users/11698', 'pm_score': 3, 'selected': False, 'text': '<p><strong>DISCLAIMER:</strong> Working on this tool is my day job.</p>\n\n<p>Its hard for me to write this without it looking like a sales pitch, so I apologise in advance.</p>\n\n<p>As well as other analysis, <a href="http://www.programmingresearch.com/QACPP_MAIN.html" rel="noreferrer">QA C++</a> outputs the list of types that are thrown from the body of functions and the call tree.  I believe that this would be all the information that you require.</p>\n'}, {'answer_id': 930228, 'author': 'chila', 'author_id': 104104, 'author_profile': 'https://Stackoverflow.com/users/104104', 'pm_score': 1, 'selected': False, 'text': '<p>EDoC++ (<a href="http://edoc.sourceforge.net" rel="nofollow noreferrer">http://edoc.sourceforge.net</a>) is another alternative.</p>\n'}]
['https://Stackoverflow.com/questions/28261', 'https://Stackoverflow.com', 'https://Stackoverflow.com/users/2957/']