diff options
author | Chandler Carruth <chandlerc@gmail.com> | 2011-01-04 06:52:15 +0000 |
---|---|---|
committer | Chandler Carruth <chandlerc@gmail.com> | 2011-01-04 06:52:15 +0000 |
commit | 9f7a6eeee441bcbb1b17208cb3abd65a0017525a (patch) | |
tree | b5300481faa1ce3f47e23d2887b1db7f6591c85a /lib/Frontend/CompilerInvocation.cpp | |
parent | b2b5cc0cf908d516a107d373db963f692449a8a8 (diff) |
Implement -Wself-assign, which warns on code such as:
int x = 42;
x = x; // Warns here.
The warning avoids macro expansions, templates, user-defined assignment
operators, and volatile types, so false positives are expected to be low.
The common (mis-)use of this code pattern is to silence unused variable
warnings, but a more idiomatic way of doing that is '(void)x;'.
A follow-up to this will add a note and fix-it hint suggesting this
replacement in cases where the StmtExpr consists precisely of the self
assignment.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122804 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions