| From | Sent On | Attachments |
|---|---|---|
| Akins, Brian | Nov 4, 2009 2:58 pm | |
| Cliff Wells | Nov 4, 2009 4:51 pm | |
| 张立冰 | Nov 4, 2009 5:27 pm | |
| Maxim Dounin | Nov 4, 2009 6:08 pm | |
| Maxim Dounin | Nov 4, 2009 6:12 pm | |
| Adrian Perez de Castro | Nov 5, 2009 2:41 am | |
| Akins, Brian | Nov 5, 2009 10:40 am |
| Subject: | Re: Clang scan-build output | |
|---|---|---|
| From: | Maxim Dounin (mdou...@mdounin.ru) | |
| Date: | Nov 4, 2009 6:12:43 pm | |
| List: | ru.sysoev.nginx | |
Hello!
On Wed, Nov 04, 2009 at 04:51:50PM -0800, Cliff Wells wrote:
That's a pretty cool tool. Surprising though that some really simplistic stuff generated false positives, e.g.:
"Value stored to 'qclass' is never read"
qtype = (an->type_hi << 8) + an->type_lo; qclass = (an->class_hi << 8) + an->class_lo; len = (an->len_hi << 8) + an->len_lo; ngx_log_debug3(NGX_LOG_DEBUG_CORE, r->log, 0, "resolver qt:%ui cl:%ui len:%uz", qtype, qclass, len);
Brian aparently analyzed build without debug, and ngx_log_debug3() resolves to nop there. So it's not really false positive, but wrapping such cases into "#if (NGX_DEBUG)" just to make analyzer happy looks like overkill.
Maxim Dounin
Cliff
On Wed, 2009-11-04 at 14:59 -0800, Akins, Brian wrote:
Output from the clang static analyzer ( http://clang-analyzer.llvm.org/ ) for nginx-0.7.63





