From: Aaron Puchert Date: Fri, 31 May 2019 21:27:39 +0000 (+0000) Subject: Clarify when fix-it hints on warnings are appropriate X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=83b6db970ca7d26ee646a0d7a2087941280b936f;p=clang Clarify when fix-it hints on warnings are appropriate Summary: This is not a change in the rules, it's meant as a clarification about warnings. Since the recovery from warnings is a no-op, the fix-it hints on warnings shouldn't change anything. Anything that doesn't just suppress the warning and changes the meaning of the code (even if it's for the better) should be on an additional note. Reviewers: rsmith, aaron.ballman Reviewed By: aaron.ballman Subscribers: cfe-commits, thakis Tags: #clang Differential Revision: https://reviews.llvm.org/D62470 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@362266 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/docs/InternalsManual.rst b/docs/InternalsManual.rst index 7779310ee4..e1b5bd7c78 100644 --- a/docs/InternalsManual.rst +++ b/docs/InternalsManual.rst @@ -423,6 +423,9 @@ Fix-it hints on errors and warnings need to obey these rules: driver, they should only be used when it's very likely they match the user's intent. * Clang must recover from errors as if the fix-it had been applied. +* Fix-it hints on a warning must not change the meaning of the code. + However, a hint may clarify the meaning as intentional, for example by adding + parentheses when the precedence of operators isn't obvious. If a fix-it can't obey these rules, put the fix-it on a note. Fix-its on notes are not applied automatically.