Created attachment 20567
Minimal example illustrating contradicting assumptions
Running scan-build-6.0 on the attached code results in contradicting
assumptions:
Step 2) Assuming 'empty()' is false
Step 5) Assuming 'empty()' is true
Workaround (enable the WORKAROUND define) allows scan-build to reason about
memberPlus100 locally thus avoiding this false positive.
Should scan-build be able to reason about this, knowing that both 'empty()'
calls should result in the same outcome?
main.cpp
(1171 bytes, text/plain)report.zip
(11268 bytes, application/zip)