Add printing of map 'DestroyRetVal'.
Details
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
This patch makes one TODO less and it is possible to debug cases like in the next (in stack) change.
That's what i like to see!
You can test this via clang_analyzer_printState().
clang/lib/StaticAnalyzer/Checkers/PthreadLockChecker.cpp | ||
---|---|---|
344 | I think this should be passive. The mutex doesn't actively destroy anybody. |
clang/lib/StaticAnalyzer/Checkers/PthreadLockChecker.cpp | ||
---|---|---|
344 | Maybe "Mutex destroy calls with unknown result:"? This is a title of a list, not about a single mutex. |
clang/test/Analysis/pthreadlock_state.c | ||
---|---|---|
56 | Out of curiosity, what is the purpose of this 'empty' line? I've seen it many times in other tests but I still don't know. | |
71 | I recommend not hardcoding symbol identifier numbers. reg$NN, conj_$NN, LCNN, SNNNN |
clang/test/Analysis/pthreadlock_state.c | ||
---|---|---|
56 | This is an issue with the state dump, the checker does not print the empty line but the state dump shows it always. |
clang/test/Analysis/pthreadlock_state.c | ||
---|---|---|
71 | AFAIK only the line prefix is checked. Make sure you mask the number out of the reg_$12 as well, etc. |
clang/test/Analysis/pthreadlock_state.c | ||
---|---|---|
60 | This test fails at some buildbots because ordering of the lines ("mtx" and "SymRegion") is reversed. |
clang/test/Analysis/pthreadlock_state.c | ||
---|---|---|
60 | Uh yea. That's a mapping over pointer values - which is nondeterministic. You have two options. Either rework the test to have a single entry in that mapping at most, or sort them somehow. |
Test failures occurred, fix of the problem is not trivial, probably the test file should be split.
clang/test/Analysis/pthreadlock_state.c | ||
---|---|---|
2 | AFAIK core should be enabled for all checks. Same for the other file. |
I think this should be passive. The mutex doesn't actively destroy anybody.