<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On 10 April 2013 19:54, John Regehr <span dir="ltr"><<a href="mailto:regehr@cs.utah.edu" target="_blank">regehr@cs.utah.edu</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div class="im"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
I would like to work on improving support for C++ in the static analyzer. Specifically, I think it<br>
would be valuable to improve the checkers for undefined behavior including those already suggested.<br>
</blockquote>
<br></div>
I'd be happy to provide feedback on a more specific version of this part of the proposal.<br>
<br>
In particular, a useful starting point (maybe this already exists?) would be a list of all C/C++ undefined behaviors broken down by whether Clang/LLVM...<br>
<br>
- can reliably provide a compile-time diagnostic<br>
<br>
- can reliably provide a runtime diagnostic<br>
<br>
- cannot provide any diagnostic, but implements a predictable behavior<br>
<br>
- cannot provide any diagnostic and also implements unpredictable behavior<br>
<br>
Obviously the last category is the interesting place for future work.<br></blockquote><div><br><div>A list of all undefined/implementation defined/unspecified behaviour 
in ANSI-C and a classification of which can be determined statically and/or 
dynamically can be found in Les Hatton's Safer C. Perhaps that could be 
of help when examining where Clang is on those items?<br><br></div>Best Regards<br>Magnus Reftel<br></div></div></div></div>