Skip to content

Commit e8c5e0c

Browse files
committed
moved enforcedLang from Settings to CmdLineParser
1 parent c2c4aca commit e8c5e0c

5 files changed

Lines changed: 15 additions & 16 deletions

File tree

cli/cmdlineparser.cpp

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -221,14 +221,14 @@ bool CmdLineParser::fillSettingsFromArgs(int argc, const char* const argv[])
221221

222222
mFileSettings.clear();
223223

224-
if (mSettings.enforcedLang != Standards::Language::None)
224+
if (mEnforcedLang != Standards::Language::None)
225225
{
226226
// apply enforced language
227227
for (auto& fs : fileSettings)
228228
{
229229
if (mSettings.library.markupFile(fs.filename()))
230230
continue;
231-
fs.file.setLang(mSettings.enforcedLang);
231+
fs.file.setLang(mEnforcedLang);
232232
}
233233
}
234234
else
@@ -324,14 +324,14 @@ bool CmdLineParser::fillSettingsFromArgs(int argc, const char* const argv[])
324324
files = std::move(filesResolved);
325325
}
326326

327-
if (mSettings.enforcedLang != Standards::Language::None)
327+
if (mEnforcedLang != Standards::Language::None)
328328
{
329329
// apply enforced language
330330
for (auto& f : files)
331331
{
332332
if (mSettings.library.markupFile(f.path()))
333333
continue;
334-
f.setLang(mSettings.enforcedLang);
334+
f.setLang(mEnforcedLang);
335335
}
336336
}
337337
else
@@ -985,9 +985,9 @@ CmdLineParser::Result CmdLineParser::parseFromArgs(int argc, const char* const a
985985
}
986986

987987
if (str == "c")
988-
mSettings.enforcedLang = Standards::Language::C;
988+
mEnforcedLang = Standards::Language::C;
989989
else if (str == "c++")
990-
mSettings.enforcedLang = Standards::Language::CPP;
990+
mEnforcedLang = Standards::Language::CPP;
991991
else {
992992
mLogger.printError("unknown language '" + str + "' enforced.");
993993
return Result::Fail;

cli/cmdlineparser.h

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727

2828
#include "cmdlinelogger.h"
2929
#include "filesettings.h"
30+
#include "standards.h"
3031
#include "utils.h"
3132

3233
class Settings;
@@ -46,6 +47,7 @@ class Library;
4647
* class internal options.
4748
*/
4849
class CmdLineParser {
50+
friend class TestCmdlineParser;
4951
public:
5052
/**
5153
* The constructor.
@@ -175,8 +177,8 @@ class CmdLineParser {
175177
Settings &mSettings;
176178
Suppressions &mSuppressions;
177179
bool mAnalyzeAllVsConfigsSetOnCmdLine = false;
178-
179-
friend class TestCmdlineParser;
180+
/** @brief Name of the language that is enforced. Empty per default. */
181+
Standards::Language mEnforcedLang{Standards::Language::None};
180182
};
181183

182184
/// @}

gui/mainwindow.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1208,7 +1208,7 @@ bool MainWindow::getCppcheckSettings(Settings& settings, Suppressions& supprs)
12081208
settings.platform.set(static_cast<Platform::Type>(mSettings->value(SETTINGS_CHECKED_PLATFORM, 0).toInt()));
12091209
settings.standards.setCPP(mSettings->value(SETTINGS_STD_CPP, QString()).toString().toStdString());
12101210
settings.standards.setC(mSettings->value(SETTINGS_STD_C, QString()).toString().toStdString());
1211-
settings.enforcedLang = static_cast<Standards::Language>(mSettings->value(SETTINGS_ENFORCED_LANGUAGE, 0).toInt());
1211+
Standards::Language enforcedLang = static_cast<Standards::Language>(mSettings->value(SETTINGS_ENFORCED_LANGUAGE, 0).toInt());
12121212

12131213
settings.jobs = std::max(settings.jobs, 1u);
12141214

lib/settings.h

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -236,9 +236,6 @@ class CPPCHECKLIB WARN_UNUSED Settings {
236236
/** @brief Do not filter duplicated errors. */
237237
bool emitDuplicates{};
238238

239-
/** @brief Name of the language that is enforced. Empty per default. */
240-
Standards::Language enforcedLang{};
241-
242239
#if defined(USE_WINDOWS_SEH) || defined(USE_UNIX_SIGNAL_HANDLING)
243240
/** @brief Is --exception-handling given */
244241
bool exceptionHandling{};

test/testcmdlineparser.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -765,14 +765,14 @@ class TestCmdlineParser : public TestFixture {
765765
REDIRECT;
766766
const char * const argv[] = {"cppcheck", "file.cpp"};
767767
ASSERT_EQUALS_ENUM(CmdLineParser::Result::Success, parseFromArgs(argv));
768-
ASSERT_EQUALS(Standards::Language::None, settings->enforcedLang);
768+
ASSERT_EQUALS(Standards::Language::None, parser->mEnforcedLang);
769769
}
770770

771771
void enforceLanguage2() {
772772
REDIRECT;
773773
const char * const argv[] = {"cppcheck", "-x", "c++", "file.cpp"};
774774
ASSERT_EQUALS_ENUM(CmdLineParser::Result::Success, parseFromArgs(argv));
775-
ASSERT_EQUALS(Standards::Language::CPP, settings->enforcedLang);
775+
ASSERT_EQUALS(Standards::Language::CPP, parser->mEnforcedLang);
776776
}
777777

778778
void enforceLanguage3() {
@@ -793,14 +793,14 @@ class TestCmdlineParser : public TestFixture {
793793
REDIRECT;
794794
const char * const argv[] = {"cppcheck", "--language=c++", "file.cpp"};
795795
ASSERT_EQUALS_ENUM(CmdLineParser::Result::Success, parseFromArgs(argv));
796-
ASSERT_EQUALS(Standards::Language::CPP, settings->enforcedLang);
796+
ASSERT_EQUALS(Standards::Language::CPP, parser->mEnforcedLang);
797797
}
798798

799799
void enforceLanguage6() {
800800
REDIRECT;
801801
const char * const argv[] = {"cppcheck", "--language=c", "file.cpp"};
802802
ASSERT_EQUALS_ENUM(CmdLineParser::Result::Success, parseFromArgs(argv));
803-
ASSERT_EQUALS(Standards::Language::C, settings->enforcedLang);
803+
ASSERT_EQUALS(Standards::Language::C, parser->mEnforcedLang);
804804
}
805805

806806
void enforceLanguage7() {

0 commit comments

Comments
 (0)