Skip to content

Commit b3d08f1

Browse files
Update checkstl.cpp
1 parent 93bc251 commit b3d08f1

1 file changed

Lines changed: 4 additions & 2 deletions

File tree

lib/checkstl.cpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -637,12 +637,14 @@ void CheckStlImpl::iterators()
637637
void CheckStlImpl::mismatchingContainerIteratorError(const Token* containerTok, const Token* iterTok, const Token* containerTok2)
638638
{
639639
const std::string container(containerTok ? containerTok->expressionString() : std::string("v1"));
640+
const std::string containerTemp(isTemporary(containerTok, &mSettings.library) ? " temporary " : " ");
640641
const std::string container2(containerTok2 ? containerTok2->expressionString() : std::string("v2"));
642+
const std::string containerTemp2(isTemporary(containerTok2, &mSettings.library) ? " temporary " : " ");
641643
const std::string iter(iterTok ? iterTok->expressionString() : std::string("it"));
642644
reportError(containerTok,
643645
Severity::error,
644646
"mismatchingContainerIterator",
645-
"Iterator '" + iter + "' referring to container '" + container2 + "' is used with container '" + container + "'.",
647+
"Iterator '" + iter + "' referring to" + containerTemp2 + "container '" + container2 + "' is used with" + containerTemp + "container '" + container + "'.",
646648
CWE664,
647649
Certainty::normal);
648650
}
@@ -884,7 +886,7 @@ void CheckStlImpl::mismatchingContainerIterator()
884886
const std::vector<const Token *> args = getArguments(ftok);
885887

886888
const Library::Container * c = tok->valueType()->container;
887-
const Library::Container::Action action = c->getAction(tok->strAt(2));
889+
const Library::Container::Action action = c->getAction(ftok->str());
888890
const Token* iterTok = nullptr;
889891
if (action == Library::Container::Action::INSERT && args.size() == 2) {
890892
// Skip if iterator pair

0 commit comments

Comments
 (0)