<div dir="ltr"><div>Hi all,</div><div>I'm interested into developing a static analyzer checker that detects exceptions that escape a destructor. It even seems there is a similar suggestion in <a href="http://clang-analyzer.llvm.org/potential_checkers.html">http://clang-analyzer.llvm.org/potential_checkers.html</a> (ctordtor.ExptInsideDtor).</div><div><br></div><div>As a first step, I modified the alpha.cplusplus.VirtualCall checker to walk call hierarchies under destructors searching for throw statements (CXXThrowExpr). It works fine for many cases but there are also some limitations. One of them is that when we want to visit the body of a virtual method call "foo.bar()", the call (IIUC) is resolved statically -according to foo's static type-. Is there any way/API to walk/get all possible "bar" method implementations? Any examples to look at?</div><div><br></div><div>Of course, any other implementation suggestions are welcome.</div><div><br></div><div>Cheers,</div><div>George</div></div>