On 06/11/2017 07:39 PM, Xi Ruoyao wrote:
This patch adds document of -Wstring-plus-int and -Wstring-plus-char.
+@item -Wstring-plus-char
+@opindex Wstring-plus-char
+@opindex Wno-string-plus-char
+Warn for adding a character to a string pointer, which seems like a failed
+attempt to append to the string. For example, this option will issue a
+warning for the code below.
The text above should be corrected for grammar:
Warn when a character is added to a character pointer. Such
addition it may be an incorrect attempt to append the character
to a string.
Similarly, the text below should be corrected (though as I mentioned
in my earlier response to one of the prior patches, I would prefer
to see the out-of-bounds warning(s) phrased in terms the (undefined)
effects of the addition and included in -Warray-bounds rather than
adding a new option based on assumptions about the intended effects,
and extended to all arrays of known bound rather than applied only
to string literals).
+@item -Wstring-plus-int
+@opindex Wstring-plus-int
+@opindex Wno-string-plus-int
+Warn for adding an integer to a string literal, which may forms a pointer
+out of the bound of the string. The typical examples this warns about are
+@samp{"abc" + 'd'}, @samp{"abc" + getchar()} and @samp{"abc" + 5}, but
+not @samp{"abc" + 1}.
Warn when an integer constant in excess of its upper bound is
added to a string literal.
Martin