Skip to content

Commit 1f0cd1e

Browse files
committed
Check for misra addon in Settings::addonInfos
1 parent 58fdabc commit 1f0cd1e

1 file changed

Lines changed: 13 additions & 5 deletions

File tree

lib/suppressions.cpp

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -651,6 +651,19 @@ std::string SuppressionList::Suppression::toString() const
651651

652652
polyspace::Parser::Parser(const Settings &settings)
653653
{
654+
const auto it = std::find_if(
655+
settings.addonInfos.cbegin(),
656+
settings.addonInfos.cend(),
657+
[] (const AddonInfo &info) {
658+
return info.name == "misra";
659+
}
660+
);
661+
662+
if (it != settings.addonInfos.cend()) {
663+
mFamilyMap["MISRA-C3"] = "misra-c2012-";
664+
mFamilyMap["MISRA2012"] = "misra-c2012-";
665+
}
666+
654667
const auto matchArg = [&](const std::string &arg) {
655668
const std::string args = settings.premiumArgs;
656669
const std::string::size_type pos = args.find(arg);
@@ -664,11 +677,6 @@ polyspace::Parser::Parser(const Settings &settings)
664677
return pos == args.size() - arg.size() || args[pos + arg.size()] == ' ';
665678
};
666679

667-
if (settings.addons.count("misra") != 0) {
668-
mFamilyMap["MISRA-C3"] = "misra-c2012-";
669-
mFamilyMap["MISRA2012"] = "misra-c2012-";
670-
}
671-
672680
if (matchArg("--misra-c-2012")) {
673681
mFamilyMap["MISRA-C3"] = "premium-misra-c-2012-";
674682
mFamilyMap["MISRA2012"] = "premium-misra-c-2012-";

0 commit comments

Comments
 (0)