<html>
<head>
<meta content="text/html; charset=windows-1252"
http-equiv="Content-Type">
</head>
<body text="#000000" bgcolor="#FFFFFF">
forgot [PATCH] in subject and fixed typo, sorry...<br>
<div class="moz-cite-prefix">On 10/23/2014 07:14 PM, Steve MacKenzie
wrote:<br>
</div>
<blockquote
cite="mid:BLU436-SMTP657E5900EBB345060C88C58D930@phx.gbl"
type="cite">Summary:
<br>
Number of warnings before this patch:450
<br>
Number of warnings reduced by this patch:323<br>
</blockquote>
<blockquote
cite="mid:BLU436-SMTP657E5900EBB345060C88C58D930@phx.gbl"
type="cite">Number of warnings uninvestigated: 0
<br>
Regression Testing: no regressions found (x64 Linux, release,
debug, links to logs below)
<br>
</blockquote>
<br>
<blockquote
cite="mid:BLU436-SMTP657E5900EBB345060C88C58D930@phx.gbl"
type="cite">
<br>
Bugs found:
<br>
"Bug
ID","Product","Component","Assignee","Status","Resolution","Summary","Changed"<br>
21326,"clang","Static
Analyzer",<a class="moz-txt-link-rfc2396E" href="mailto:kremenek@apple.com">"kremenek@apple.com"</a>,"NEW","---","False position CERT
MEM04 zero-length allocation error","2014-10-21 14:13:26"
<br>
21333,"clang","Static
Analyzer",<a class="moz-txt-link-rfc2396E" href="mailto:kremenek@apple.com">"kremenek@apple.com"</a>,"NEW","---","false positive
smartptr release (unique_ptr) in std::<memory>","2014-10-21
18:55:49"
<br>
21335,"clang","Static
Analyzer",<a class="moz-txt-link-rfc2396E" href="mailto:kremenek@apple.com">"kremenek@apple.com"</a>,"NEW","---","False positive scoping
issues, deref pointer, dead init, uninit arg, val,
etc.","2014-10-21 19:45:51"
<br>
21342,"clang","Static
Analyzer",<a class="moz-txt-link-rfc2396E" href="mailto:kremenek@apple.com">"kremenek@apple.com"</a>,"NEW","---","False positive:
std::valarray standard conforming operator[] triggers null
reference warning","2014-10-22 15:56:16"
<br>
21344,"clang","Static
Analyzer",<a class="moz-txt-link-rfc2396E" href="mailto:kremenek@apple.com">"kremenek@apple.com"</a>,"NEW","---","False positive garbage
value reported in std::<random> param_type in distribution
templates","2014-10-22 20:11:07"
<br>
<br>
Links:
<br>
Instructions on how to do a scan-build run against libc++:
<a class="moz-txt-link-freetext" href="http://1drv.ms/1wfR37J">http://1drv.ms/1wfR37J</a> This mirrors the steps that I took to
validate the patch.
<br>
<br>
Regerssion Testing Logs;
<br>
Release Baseline: <a class="moz-txt-link-freetext" href="http://1drv.ms/1D290FF">http://1drv.ms/1D290FF</a>
<br>
Released Patched: <a class="moz-txt-link-freetext" href="http://1drv.ms/12mcOGr">http://1drv.ms/12mcOGr</a>
<br>
Scan-build baseline: <a class="moz-txt-link-freetext" href="http://1drv.ms/1D290FF">http://1drv.ms/1D290FF</a>
<br>
Scan-build patched: <a class="moz-txt-link-freetext" href="http://1drv.ms/1tPy5EL">http://1drv.ms/1tPy5EL</a>
<br>
Related False Positive Warnings (with associated bugs):
<a class="moz-txt-link-freetext" href="http://1drv.ms/12mkOHo">http://1drv.ms/12mkOHo</a>
<br>
<br>
Details:
<br>
The warning count was at 450 when the work on this patch started.
The patch fixes 323 of those warnings.
<br>
<br>
I am recommending 3 minor changes to the libc++ headers. The
fixes consist of merely initializing 2 variables in <random>
and one variable in <regex>. While these uninitialized
variables assessed individually seem benign, they have a cascading
affect that manifest downstream as "garbage value" warnings.
<br>
<br>
There was a significant amount of noise created by uninitialized
and unused variables, mostly in tests. There was one somewhat
interesting issue, the tool triggered a CERT MEM04, passing zero
size to realloc warning (see bug:21326 for details).
<br>
<br>
Also, this activity is confined to scan-build warnings, it does
not include fixing general compiler warnings or already failing
tests.
<br>
<br>
There will probably need to be some follow up pending the
resolution of the false-positive scan-build bugs. Those issues
are captured here: <a class="moz-txt-link-freetext" href="http://1drv.ms/12mkOHo">http://1drv.ms/12mkOHo</a>
<br>
<br>
It is likely that for future runs, we'll need some sort of tooling
for filtering out "won't fix" issues.
<br>
<br>
Thanks,
<br>
Steve MacKenzie
<br>
<a class="moz-txt-link-freetext" href="http://stevemac123.wordpress.com/">http://stevemac123.wordpress.com/</a>
<br>
<br>
<br>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
cfe-commits mailing list
<a class="moz-txt-link-abbreviated" href="mailto:cfe-commits@cs.uiuc.edu">cfe-commits@cs.uiuc.edu</a>
<a class="moz-txt-link-freetext" href="http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits">http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits</a>
</pre>
</blockquote>
<br>
</body>
</html>