Skip to content

Commit fbf5858

Browse files
authored
fixed and enabled several clang-tidy warnings (#2816)
1 parent f816cc8 commit fbf5858

11 files changed

Lines changed: 28 additions & 30 deletions

.clang-tidy

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
Checks: '*,-abseil-*,-android-*,-cert-*,-cppcoreguidelines-*,-fuchsia-*,-google-*,-hicpp-*,-llvm-*,-linuxkernel-*,-mpi-*,-objc-*,-openmp-*,-zircon-*,-readability-braces-around-statements,-readability-magic-numbers,-bugprone-macro-parentheses,-readability-isolate-declaration,-readability-function-size,-modernize-use-trailing-return-type,-readability-implicit-bool-conversion,-readability-uppercase-literal-suffix,-modernize-use-auto,-readability-else-after-return,-modernize-use-default-member-init,-readability-named-parameter,-readability-redundant-member-init,-performance-faster-string-find,-modernize-avoid-c-arrays,-modernize-use-equals-default,-modernize-use-using,-readability-container-size-empty,-readability-simplify-boolean-expr,-modernize-use-override,-modernize-pass-by-value,-bugprone-branch-clone,-bugprone-narrowing-conversions,-modernize-raw-string-literal,-readability-convert-member-functions-to-static,-modernize-loop-convert,-misc-unused-using-decls,-modernize-use-emplace,-readability-const-return-type,-performance-unnecessary-value-param,-readability-static-accessed-through-instance,-modernize-return-braced-init-list,-performance-inefficient-string-concatenation,-performance-for-range-copy,-misc-throw-by-value-catch-by-reference,-modernize-use-bool-literals,-readability-avoid-const-params-in-decls,-readability-redundant-control-flow,-bugprone-argument-comment,-readability-redundant-string-cstr,-readability-non-const-parameter,-misc-non-private-member-variables-in-classes,-performance-unnecessary-copy-initialization,-readability-redundant-string-init,-bugprone-suspicious-string-compare,-bugprone-use-after-move,-readability-misleading-indentation,-misc-unused-parameters-,-clang-analyzer-*,-bugprone-signed-char-misuse,-readability-make-member-function-const,-llvmlibc-*'
2+
Checks: '*,-abseil-*,-android-*,-cert-*,-cppcoreguidelines-*,-fuchsia-*,-google-*,-hicpp-*,-llvm-*,-llvmlibc-*,-linuxkernel-*,-mpi-*,-objc-*,-openmp-*,-zircon-*,-readability-braces-around-statements,-readability-magic-numbers,-bugprone-macro-parentheses,-readability-isolate-declaration,-readability-function-size,-modernize-use-trailing-return-type,-readability-implicit-bool-conversion,-readability-uppercase-literal-suffix,-modernize-use-auto,-readability-else-after-return,-modernize-use-default-member-init,-readability-named-parameter,-readability-redundant-member-init,-performance-faster-string-find,-modernize-avoid-c-arrays,-modernize-use-equals-default,-modernize-use-using,-readability-container-size-empty,-readability-simplify-boolean-expr,-modernize-use-override,-modernize-pass-by-value,-bugprone-branch-clone,-bugprone-narrowing-conversions,-modernize-raw-string-literal,-readability-convert-member-functions-to-static,-modernize-loop-convert,-misc-unused-using-decls,-modernize-use-emplace,-readability-const-return-type,-performance-unnecessary-value-param,-modernize-return-braced-init-list,-performance-inefficient-string-concatenation,-performance-for-range-copy,-misc-throw-by-value-catch-by-reference,-readability-avoid-const-params-in-decls,-readability-redundant-control-flow,-bugprone-argument-comment,-readability-non-const-parameter,-misc-non-private-member-variables-in-classes,-bugprone-suspicious-string-compare,-bugprone-use-after-move,-readability-misleading-indentation,-misc-unused-parameters-,-clang-analyzer-*,-bugprone-signed-char-misuse,-readability-make-member-function-const,-readability-inconsistent-declaration-parameter-name'
33
CheckOptions:
44
- key: misc-non-private-member-variables-in-classes.IgnoreClassesWithAllMemberVariablesBeingPublic
55
value: '1'

cli/threadexecutor.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -355,7 +355,7 @@ void ThreadExecutor::reportInfo(const ErrorMessage &msg)
355355

356356
void ThreadExecutor::bughuntingReport(const std::string &str)
357357
{
358-
writeToPipe(REPORT_VERIFICATION, str.c_str());
358+
writeToPipe(REPORT_VERIFICATION, str);
359359
}
360360

361361
void ThreadExecutor::reportInternalChildErr(const std::string &childname, const std::string &msg)

gui/main.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -73,17 +73,17 @@ int main(int argc, char *argv[])
7373
TranslationHandler* th = new TranslationHandler(&app);
7474
th->setLanguage(settings->value(SETTINGS_LANGUAGE, th->suggestLanguage()).toString());
7575

76-
if (!CheckArgs(app.arguments()))
76+
if (!CheckArgs(QApplication::arguments()))
7777
return 0;
7878

79-
app.setWindowIcon(QIcon(":cppcheck-gui.png"));
79+
QApplication::setWindowIcon(QIcon(":cppcheck-gui.png"));
8080

8181
// Register this metatype that is used to transfer error info
8282
qRegisterMetaType<ErrorItem>("ErrorItem");
8383

8484
MainWindow window(th, settings);
8585
window.show();
86-
return app.exec();
86+
return QApplication::exec();
8787
}
8888

8989
// Check only arguments needing action before GUI is shown.

gui/mainwindow.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1000,7 +1000,7 @@ Settings MainWindow::getCppcheckSettings()
10001000
result.jobs = 1;
10011001
}
10021002

1003-
result.terminate(false);
1003+
Settings::terminate(false);
10041004

10051005
return result;
10061006
}

lib/checkcondition.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1104,7 +1104,7 @@ void CheckCondition::checkIncorrectLogicOperator()
11041104
const std::string cond2 = expr1;
11051105

11061106
const std::string cond1VerboseMsg = expr1VerboseMsg + " " + tok->str() + " " + expr2VerboseMsg + " " + tok->astOperand2()->str() + " " + expr3VerboseMsg;
1107-
const std::string cond2VerboseMsg = expr1VerboseMsg;
1107+
const std::string& cond2VerboseMsg = expr1VerboseMsg;
11081108
// for the --verbose message, transform the actual condition and print it
11091109
const std::string msg = tok2->expressionString() + ". '" + cond1 + "' is equivalent to '" + cond2 + "'\n"
11101110
"The condition '" + cond1VerboseMsg + "' is equivalent to '" + cond2VerboseMsg + "'.";

lib/cppcheck.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ namespace {
8888
}
8989

9090
std::string parseAddonInfo(const picojson::value &json, const std::string &fileName, const std::string &exename) {
91-
std::string json_error = picojson::get_last_error();
91+
const std::string& json_error = picojson::get_last_error();
9292
if (!json_error.empty()) {
9393
return "Loading " + fileName + " failed. " + json_error;
9494
}
@@ -1434,7 +1434,7 @@ void CppCheck::getErrorMessages()
14341434

14351435
void CppCheck::analyseClangTidy(const ImportProject::FileSettings &fileSettings)
14361436
{
1437-
std::string allIncludes = "";
1437+
std::string allIncludes;
14381438
for (const std::string &inc : fileSettings.includePaths) {
14391439
allIncludes = allIncludes + "-I\"" + inc + "\" ";
14401440
}

lib/exprengine.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2388,13 +2388,13 @@ static ExprEngine::ValuePtr executeNumber(const Token *tok, Data &data)
23882388

23892389
static ExprEngine::ValuePtr executeStringLiteral(const Token *tok, Data &data)
23902390
{
2391-
std::string s = tok->str();
2391+
const std::string& s = tok->str();
23922392
return std::make_shared<ExprEngine::StringLiteralValue>(data.getNewSymbolName(), s.substr(1, s.size()-2));
23932393
}
23942394

23952395
static ExprEngine::ValuePtr executeExpression1(const Token *tok, Data &data)
23962396
{
2397-
if (data.settings->terminated())
2397+
if (Settings::terminated())
23982398
throw TerminateExpression();
23992399

24002400
if (tok->str() == "return")

lib/symboldatabase.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5583,7 +5583,7 @@ void SymbolDatabase::setValueType(Token *tok, const ValueType &valuetype)
55835583
const Token *op1 = parent->astOperand2()->astOperand1();
55845584
while (op1 && op1->str() == "[")
55855585
op1 = op1->astOperand1();
5586-
ValueType vt(valuetype);
5586+
const ValueType& vt(valuetype);
55875587
if (op1 && op1->variable() && op1->variable()->nameToken() == op1) {
55885588
setValueType(parent, vt);
55895589
return;

lib/templatesimplifier.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1509,7 +1509,7 @@ void TemplateSimplifier::addNamespace(const TokenAndName &templateDeclaration, c
15091509

15101510
bool TemplateSimplifier::alreadyHasNamespace(const TokenAndName &templateDeclaration, const Token *tok)
15111511
{
1512-
std::string scope = templateDeclaration.scope();
1512+
const std::string& scope = templateDeclaration.scope();
15131513

15141514
// get the length in tokens of the namespace
15151515
std::string::size_type pos = 0;

lib/tokenize.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5170,7 +5170,7 @@ void Tokenizer::simplifyHeadersAndUnusedTemplates()
51705170
if (!tok->previous() || Token::Match(tok->previous(), "[;{}]")) {
51715171
// Remove unused function declarations
51725172
if (isIncluded && removeUnusedIncludedFunctions) {
5173-
while (1) {
5173+
while (true) {
51745174
Token *start = tok;
51755175
while (start && functionStart.find(start->str()) != functionStart.end())
51765176
start = start->next();
@@ -9856,7 +9856,7 @@ void Tokenizer::findGarbageCode() const
98569856
syntaxError(tok);
98579857
}
98589858
if (Token::Match(tok, "%or%|%oror%|~|^|!|%comp%|+|-|/|%")) {
9859-
std::string code = "";
9859+
std::string code;
98609860
if (Token::Match(tok->next(), ")|]|}"))
98619861
code = tok->str() + tok->next()->str();
98629862
if (Token::simpleMatch(tok->next(), "( )"))

0 commit comments

Comments
 (0)