This diagnostic rule is based on the MISRA (Motor Industry Software Reliability Association) software development guide.
This rule only applies to programs written in C. A continuation token ('\') should not stand at the end of single-line comments.
Example:
// Some comment \
It may as well comment out the code line that follows the comment. In the following example, the condition, in fact, is not checked, because 'if' gets commented out, and the code block is always executed:
int startsWith(const char *str, const char *prefix);
void foo();
void foobar(const char *str)
{
// Check that the string doesn't start with foo\bar\
if (startsWith(str, "foo\\bar\\") == 0)
{
foo();
}
....
}
Such code can be successfully compiled, and the compiler may not issue warnings.
If any characters other than '\' or a newline follow the '\' character, the next line will not be considered a comment, and the analyzer will not issue a warning:
int startsWith(const char *str, const char *prefix);
void foo();
void foobar(const char *str)
{
// Check that the string doesn't start with "foo\bar\"
if (startsWith(str, "foo\\bar\\") == 0)
{
foo();
}
....
}
This diagnostic rule is classified as:
|
Was this page helpful?
Your message has been sent. We will email you at
If you do not see the email in your inbox, please check if it is filtered to one of the following folders: