I just submitted a patch (Phabricator diff #28096) for a new 'Loss of Sign' checker, that would help diagnose the case when a negative value is assigned to an unsigned variable. The test case is included.
Unfortunately, there are no existing diagnostics for such assignments that lose the sign, which can cause nasty silent runtime failures.
Can someone please review the above changes? Since I do not have commit privilege, I would need someone to please help me with committing the changes once the review is over.
Please do let me know in case I missed anything.
I failed to find your patch #28096 in Phabricator.
Maybe it is a wrong id.
If you follow the instruction here http://llvm.org/docs/Phabricator.html and especially "If your patch is for LLVM, add llvm-commits as a subscriber; if your patch is for Clang, add cfe-commits”, the patch will be sent automatically by phabricator to the correct mailing-list (llvm-commits of cfe-commits).
Looks like my submission was incomplete and the id I mentioned was hence incorrect. Apologies for that.
I *think* I have now completed the submission correctly on Phabricator as #D10634: http://reviews.llvm.org/D10634