Check other regex parameters

This commit is contained in:
Miodrag Milanovic 2020-02-22 10:31:56 +01:00
parent 419e67c170
commit 596bb2d443
1 changed files with 30 additions and 15 deletions

View File

@ -94,31 +94,46 @@ struct LoggerPass : public Pass {
if (args[argidx] == "-warn" && argidx+1 < args.size()) {
std::string pattern = args[++argidx];
if (pattern.front() == '\"' && pattern.back() == '\"') pattern = pattern.substr(1, pattern.size() - 2);
try {
log("Added regex '%s' for warnings to warn list.", pattern.c_str());
log_warn_regexes.push_back(std::regex(pattern,
std::regex_constants::nosubs |
std::regex_constants::optimize |
std::regex_constants::egrep));
}
catch (const std::regex_error& e) {
log_cmd_error("Error in regex expression '%s' !\n", pattern.c_str());
}
continue;
}
if (args[argidx] == "-nowarn" && argidx+1 < args.size()) {
std::string pattern = args[++argidx];
if (pattern.front() == '\"' && pattern.back() == '\"') pattern = pattern.substr(1, pattern.size() - 2);
try {
log("Added regex '%s' for warnings to nowarn list.", pattern.c_str());
log_nowarn_regexes.push_back(std::regex(pattern,
std::regex_constants::nosubs |
std::regex_constants::optimize |
std::regex_constants::egrep));
}
catch (const std::regex_error& e) {
log_cmd_error("Error in regex expression '%s' !\n", pattern.c_str());
}
continue;
}
if (args[argidx] == "-werror" && argidx+1 < args.size()) {
std::string pattern = args[++argidx];
if (pattern.front() == '\"' && pattern.back() == '\"') pattern = pattern.substr(1, pattern.size() - 2);
try {
log("Added regex '%s' for warnings to werror list.", pattern.c_str());
log_werror_regexes.push_back(std::regex(pattern,
std::regex_constants::nosubs |
std::regex_constants::optimize |
std::regex_constants::egrep));
}
catch (const std::regex_error& e) {
log_cmd_error("Error in regex expression '%s' !\n", pattern.c_str());
}
continue;
}
if (args[argidx] == "-debug") {