manual: Document the cwe attribute

This commit is contained in:
Daniel Marjamäki 2015-05-02 11:43:42 +02:00
parent 42e82eda96
commit 28985d1baa
3 changed files with 11 additions and 13 deletions

View File

@ -1535,14 +1535,10 @@ void CheckStl::readingEmptyStlContainer()
if (i->type != Scope::eFunction)
continue;
const Token* restartTok = nullptr;
for (const Token *tok = i->classStart->next(); tok != i->classEnd; tok = tok->next()) {
if (Token::Match(tok, "for|while")) { // Loops and end of scope clear the sets.
restartTok = tok->linkAt(1); // Check condition to catch looping over empty containers
} else if (tok == restartTok || Token::Match(tok, "do|}")) {
if (Token::Match(tok, "for|while|do|}")) { // Loops and end of scope clear the sets.
empty_map.clear();
empty_nonmap.clear();
restartTok = nullptr;
}
if (!tok->varId())

View File

@ -305,7 +305,7 @@ cppcheck -DA --force file.c</programlisting>
&lt;cppcheck version="1.66"&gt;
&lt;errors&gt;
&lt;error id="someError" severity="error" msg="short error text"
verbose="long error text" inconclusive="true"&gt;
verbose="long error text" inconclusive="true" cwe="312"&gt;
&lt;location file="file.c" line="1"/&gt;
&lt;/error&gt;
&lt;/errors&gt;
@ -361,6 +361,15 @@ cppcheck -DA --force file.c</programlisting>
inconclusive.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><sgmltag>cwe</sgmltag></term>
<listitem>
<para>CWE ID for message. This attribute is only used
when the CWE ID for the message is known.</para>
</listitem>
</varlistentry>
</variablelist>
</section>

View File

@ -2664,13 +2664,6 @@ private:
" std::string strValue2 = CMap[1];\n"
"}\n", true);
ASSERT_EQUALS("[test.cpp:3]: (style, inconclusive) Reading from empty STL container\n", errout.str());
// #4306
check("void f(std::vector<int> v) {\n"
" v.clear();\n"
" for(int i = 0; i < v.size(); i++) { cout << v[i]; }\n"
"}", true);
ASSERT_EQUALS("[test.cpp:3]: (style, inconclusive) Reading from empty STL container\n", errout.str());
}
};