https://bugs.llvm.org/show_bug.cgi?id=39913
Bug ID: 39913
Summary: alpha.deadcode.UnreachableCode trivial false positive
Product: clang
Version: trunk
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P
Component: Static Analyzer
Assignee: dcough...@apple.com
Reporter: abramo.bagn...@bugseng.com
CC: dcough...@apple.com, llvm-bugs@lists.llvm.org
The typescript below shows the wrong warning and the proof it is wrong:
abramo@igor:/tmp$ cat p.c
#include <stdio.h>
void g() {
printf("reached\n");
}
void f(int btn) {
static int x = 0;
if (btn == x) {
if (btn != 0) {
g();
} else {
x = 2;
}
}
}
abramo@igor:/tmp$ cat q.c
extern void f(int);
int main() {
f(0);
f(2);
}
abramo@igor:/tmp$ scan-build-8 -enable-checker alpha.deadcode.UnreachableCode
gcc p.c q.c
scan-build: Using '/usr/lib/llvm-8/bin/clang' for static analysis
p.c:11:9: warning: This statement is never executed
g();
^
1 warning generated.
scan-build: 1 bug found.
scan-build: Run 'scan-view /tmp/scan-build-2018-12-07-124451-16359-1' to
examine bug reports.
abramo@igor:/tmp$ ./a.out
reached
--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs