Skip to content

Commit b3d699d

Browse files
committed
moved Language from settings.h to standards.h
1 parent 2026887 commit b3d699d

13 files changed

Lines changed: 91 additions & 93 deletions

Makefile

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -455,7 +455,7 @@ validateRules:
455455

456456
###### Build
457457

458-
$(libcppdir)/analyzerinfo.o: lib/analyzerinfo.cpp externals/tinyxml2/tinyxml2.h lib/analyzerinfo.h lib/color.h lib/config.h lib/errorlogger.h lib/errortypes.h lib/importproject.h lib/library.h lib/mathlib.h lib/path.h lib/platform.h lib/settings.h lib/standards.h lib/suppressions.h lib/timer.h lib/utils.h
458+
$(libcppdir)/analyzerinfo.o: lib/analyzerinfo.cpp externals/tinyxml2/tinyxml2.h lib/analyzerinfo.h lib/color.h lib/config.h lib/errorlogger.h lib/errortypes.h lib/importproject.h lib/path.h lib/platform.h lib/standards.h lib/suppressions.h lib/utils.h
459459
$(CXX) ${INCLUDE_FOR_LIB} $(CPPFLAGS) $(CXXFLAGS) -c -o $@ $(libcppdir)/analyzerinfo.cpp
460460

461461
$(libcppdir)/astutils.o: lib/astutils.cpp lib/astutils.h lib/check.h lib/checkclass.h lib/config.h lib/errortypes.h lib/importproject.h lib/infer.h lib/library.h lib/mathlib.h lib/platform.h lib/settings.h lib/smallvector.h lib/sourcelocation.h lib/standards.h lib/suppressions.h lib/symboldatabase.h lib/templatesimplifier.h lib/token.h lib/tokenize.h lib/tokenlist.h lib/utils.h lib/valueflow.h lib/valueptr.h lib/vfvalue.h
@@ -572,22 +572,22 @@ $(libcppdir)/infer.o: lib/infer.cpp lib/calculate.h lib/config.h lib/errortypes.
572572
$(libcppdir)/keywords.o: lib/keywords.cpp lib/config.h lib/keywords.h lib/standards.h lib/utils.h
573573
$(CXX) ${INCLUDE_FOR_LIB} $(CPPFLAGS) $(CXXFLAGS) -c -o $@ $(libcppdir)/keywords.cpp
574574

575-
$(libcppdir)/library.o: lib/library.cpp externals/tinyxml2/tinyxml2.h lib/astutils.h lib/config.h lib/errortypes.h lib/importproject.h lib/library.h lib/mathlib.h lib/path.h lib/platform.h lib/settings.h lib/smallvector.h lib/sourcelocation.h lib/standards.h lib/suppressions.h lib/symboldatabase.h lib/templatesimplifier.h lib/timer.h lib/token.h lib/tokenlist.h lib/utils.h lib/valueflow.h lib/vfvalue.h
575+
$(libcppdir)/library.o: lib/library.cpp externals/tinyxml2/tinyxml2.h lib/astutils.h lib/config.h lib/errortypes.h lib/library.h lib/mathlib.h lib/path.h lib/smallvector.h lib/sourcelocation.h lib/standards.h lib/symboldatabase.h lib/templatesimplifier.h lib/token.h lib/tokenlist.h lib/utils.h lib/valueflow.h lib/vfvalue.h
576576
$(CXX) ${INCLUDE_FOR_LIB} $(CPPFLAGS) $(CXXFLAGS) -c -o $@ $(libcppdir)/library.cpp
577577

578578
$(libcppdir)/mathlib.o: lib/mathlib.cpp externals/simplecpp/simplecpp.h lib/config.h lib/errortypes.h lib/mathlib.h lib/utils.h
579579
$(CXX) ${INCLUDE_FOR_LIB} $(CPPFLAGS) $(CXXFLAGS) -c -o $@ $(libcppdir)/mathlib.cpp
580580

581-
$(libcppdir)/path.o: lib/path.cpp externals/simplecpp/simplecpp.h lib/config.h lib/errortypes.h lib/importproject.h lib/library.h lib/mathlib.h lib/path.h lib/platform.h lib/settings.h lib/standards.h lib/suppressions.h lib/timer.h lib/utils.h
581+
$(libcppdir)/path.o: lib/path.cpp externals/simplecpp/simplecpp.h lib/config.h lib/path.h lib/standards.h lib/utils.h
582582
$(CXX) ${INCLUDE_FOR_LIB} $(CPPFLAGS) $(CXXFLAGS) -c -o $@ $(libcppdir)/path.cpp
583583

584584
$(libcppdir)/pathanalysis.o: lib/pathanalysis.cpp lib/astutils.h lib/config.h lib/errortypes.h lib/library.h lib/mathlib.h lib/pathanalysis.h lib/smallvector.h lib/sourcelocation.h lib/standards.h lib/symboldatabase.h lib/templatesimplifier.h lib/token.h lib/utils.h lib/vfvalue.h
585585
$(CXX) ${INCLUDE_FOR_LIB} $(CPPFLAGS) $(CXXFLAGS) -c -o $@ $(libcppdir)/pathanalysis.cpp
586586

587-
$(libcppdir)/pathmatch.o: lib/pathmatch.cpp lib/config.h lib/errortypes.h lib/importproject.h lib/library.h lib/mathlib.h lib/path.h lib/pathmatch.h lib/platform.h lib/settings.h lib/standards.h lib/suppressions.h lib/timer.h lib/utils.h
587+
$(libcppdir)/pathmatch.o: lib/pathmatch.cpp lib/config.h lib/path.h lib/pathmatch.h lib/standards.h lib/utils.h
588588
$(CXX) ${INCLUDE_FOR_LIB} $(CPPFLAGS) $(CXXFLAGS) -c -o $@ $(libcppdir)/pathmatch.cpp
589589

590-
$(libcppdir)/platform.o: lib/platform.cpp externals/tinyxml2/tinyxml2.h lib/config.h lib/errortypes.h lib/importproject.h lib/library.h lib/mathlib.h lib/path.h lib/platform.h lib/settings.h lib/standards.h lib/suppressions.h lib/timer.h lib/utils.h
590+
$(libcppdir)/platform.o: lib/platform.cpp externals/tinyxml2/tinyxml2.h lib/config.h lib/path.h lib/platform.h lib/standards.h lib/utils.h
591591
$(CXX) ${INCLUDE_FOR_LIB} $(CPPFLAGS) $(CXXFLAGS) -c -o $@ $(libcppdir)/platform.cpp
592592

593593
$(libcppdir)/preprocessor.o: lib/preprocessor.cpp externals/simplecpp/simplecpp.h lib/color.h lib/config.h lib/errorlogger.h lib/errortypes.h lib/importproject.h lib/library.h lib/mathlib.h lib/path.h lib/platform.h lib/preprocessor.h lib/settings.h lib/standards.h lib/suppressions.h lib/utils.h
@@ -605,7 +605,7 @@ $(libcppdir)/settings.o: lib/settings.cpp externals/picojson/picojson.h lib/conf
605605
$(libcppdir)/summaries.o: lib/summaries.cpp lib/analyzerinfo.h lib/config.h lib/errortypes.h lib/importproject.h lib/library.h lib/mathlib.h lib/platform.h lib/settings.h lib/sourcelocation.h lib/standards.h lib/summaries.h lib/suppressions.h lib/symboldatabase.h lib/templatesimplifier.h lib/token.h lib/tokenize.h lib/tokenlist.h lib/utils.h lib/vfvalue.h
606606
$(CXX) ${INCLUDE_FOR_LIB} $(CPPFLAGS) $(CXXFLAGS) -c -o $@ $(libcppdir)/summaries.cpp
607607

608-
$(libcppdir)/suppressions.o: lib/suppressions.cpp externals/tinyxml2/tinyxml2.h lib/color.h lib/config.h lib/errorlogger.h lib/errortypes.h lib/importproject.h lib/library.h lib/mathlib.h lib/path.h lib/platform.h lib/settings.h lib/standards.h lib/suppressions.h lib/templatesimplifier.h lib/timer.h lib/token.h lib/tokenize.h lib/tokenlist.h lib/utils.h lib/vfvalue.h
608+
$(libcppdir)/suppressions.o: lib/suppressions.cpp externals/tinyxml2/tinyxml2.h lib/color.h lib/config.h lib/errorlogger.h lib/errortypes.h lib/mathlib.h lib/path.h lib/standards.h lib/suppressions.h lib/templatesimplifier.h lib/token.h lib/tokenize.h lib/tokenlist.h lib/utils.h lib/vfvalue.h
609609
$(CXX) ${INCLUDE_FOR_LIB} $(CPPFLAGS) $(CXXFLAGS) -c -o $@ $(libcppdir)/suppressions.cpp
610610

611611
$(libcppdir)/symboldatabase.o: lib/symboldatabase.cpp lib/astutils.h lib/color.h lib/config.h lib/errorlogger.h lib/errortypes.h lib/importproject.h lib/keywords.h lib/library.h lib/mathlib.h lib/path.h lib/platform.h lib/settings.h lib/smallvector.h lib/sourcelocation.h lib/standards.h lib/suppressions.h lib/symboldatabase.h lib/templatesimplifier.h lib/token.h lib/tokenize.h lib/tokenlist.h lib/utils.h lib/valueflow.h lib/vfvalue.h
@@ -650,7 +650,7 @@ cli/cppcheckexecutorsig.o: cli/cppcheckexecutorsig.cpp cli/cppcheckexecutor.h cl
650650
cli/executor.o: cli/executor.cpp cli/executor.h lib/color.h lib/config.h lib/errorlogger.h lib/errortypes.h lib/importproject.h lib/library.h lib/mathlib.h lib/platform.h lib/settings.h lib/standards.h lib/suppressions.h lib/utils.h
651651
$(CXX) ${INCLUDE_FOR_CLI} $(CPPFLAGS) $(CXXFLAGS) -c -o $@ cli/executor.cpp
652652

653-
cli/filelister.o: cli/filelister.cpp cli/filelister.h lib/config.h lib/errortypes.h lib/importproject.h lib/library.h lib/mathlib.h lib/path.h lib/pathmatch.h lib/platform.h lib/settings.h lib/standards.h lib/suppressions.h lib/timer.h lib/utils.h
653+
cli/filelister.o: cli/filelister.cpp cli/filelister.h lib/config.h lib/path.h lib/pathmatch.h lib/standards.h lib/utils.h
654654
$(CXX) ${INCLUDE_FOR_CLI} $(CPPFLAGS) $(CXXFLAGS) -c -o $@ cli/filelister.cpp
655655

656656
cli/main.o: cli/main.cpp cli/cppcheckexecutor.h lib/color.h lib/config.h lib/errorlogger.h lib/errortypes.h lib/suppressions.h
@@ -779,7 +779,7 @@ test/testoptions.o: test/testoptions.cpp lib/check.h lib/color.h lib/config.h li
779779
test/testother.o: test/testother.cpp externals/simplecpp/simplecpp.h lib/check.h lib/checkother.h lib/color.h lib/config.h lib/errorlogger.h lib/errortypes.h lib/importproject.h lib/library.h lib/mathlib.h lib/platform.h lib/preprocessor.h lib/settings.h lib/standards.h lib/suppressions.h lib/templatesimplifier.h lib/token.h lib/tokenize.h lib/tokenlist.h lib/utils.h lib/vfvalue.h test/fixture.h
780780
$(CXX) ${INCLUDE_FOR_TEST} $(CPPFLAGS) $(CXXFLAGS) -c -o $@ test/testother.cpp
781781

782-
test/testpath.o: test/testpath.cpp lib/check.h lib/color.h lib/config.h lib/errorlogger.h lib/errortypes.h lib/importproject.h lib/library.h lib/mathlib.h lib/path.h lib/platform.h lib/settings.h lib/standards.h lib/suppressions.h lib/timer.h lib/utils.h test/fixture.h
782+
test/testpath.o: test/testpath.cpp lib/check.h lib/color.h lib/config.h lib/errorlogger.h lib/errortypes.h lib/path.h lib/standards.h lib/suppressions.h lib/utils.h test/fixture.h
783783
$(CXX) ${INCLUDE_FOR_TEST} $(CPPFLAGS) $(CXXFLAGS) -c -o $@ test/testpath.cpp
784784

785785
test/testpathmatch.o: test/testpathmatch.cpp lib/check.h lib/color.h lib/config.h lib/errorlogger.h lib/errortypes.h lib/importproject.h lib/library.h lib/mathlib.h lib/pathmatch.h lib/platform.h lib/settings.h lib/standards.h lib/suppressions.h lib/utils.h test/fixture.h

cli/cmdlineparser.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -560,9 +560,9 @@ bool CmdLineParser::parseFromArgs(int argc, const char* const argv[])
560560
}
561561

562562
if (str == "c")
563-
mSettings.enforcedLang = Settings::Language::C;
563+
mSettings.enforcedLang = Standards::Language::C;
564564
else if (str == "c++")
565-
mSettings.enforcedLang = Settings::Language::CPP;
565+
mSettings.enforcedLang = Standards::Language::CPP;
566566
else {
567567
printError("unknown language '" + str + "' enforced.");
568568
return false;

gui/mainwindow.cpp

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -387,10 +387,10 @@ void MainWindow::loadSettings()
387387
mUI->mActionToolBarFilter->setChecked(showFilterToolbar);
388388
mUI->mToolBarFilter->setVisible(showFilterToolbar);
389389

390-
const Settings::Language enforcedLanguage = (Settings::Language)mSettings->value(SETTINGS_ENFORCED_LANGUAGE, 0).toInt();
391-
if (enforcedLanguage == Settings::CPP)
390+
const Standards::Language enforcedLanguage = (Standards::Language)mSettings->value(SETTINGS_ENFORCED_LANGUAGE, 0).toInt();
391+
if (enforcedLanguage == Standards::Language::CPP)
392392
mUI->mActionEnforceCpp->setChecked(true);
393-
else if (enforcedLanguage == Settings::C)
393+
else if (enforcedLanguage == Standards::Language::C)
394394
mUI->mActionEnforceC->setChecked(true);
395395
else
396396
mUI->mActionAutoDetectLanguage->setChecked(true);
@@ -464,11 +464,11 @@ void MainWindow::saveSettings() const
464464
mSettings->setValue(SETTINGS_TOOLBARS_FILTER_SHOW, mUI->mToolBarFilter->isVisible());
465465

466466
if (mUI->mActionEnforceCpp->isChecked())
467-
mSettings->setValue(SETTINGS_ENFORCED_LANGUAGE, Settings::CPP);
467+
mSettings->setValue(SETTINGS_ENFORCED_LANGUAGE, Standards::Language::CPP);
468468
else if (mUI->mActionEnforceC->isChecked())
469-
mSettings->setValue(SETTINGS_ENFORCED_LANGUAGE, Settings::C);
469+
mSettings->setValue(SETTINGS_ENFORCED_LANGUAGE, Standards::Language::C);
470470
else
471-
mSettings->setValue(SETTINGS_ENFORCED_LANGUAGE, Settings::None);
471+
mSettings->setValue(SETTINGS_ENFORCED_LANGUAGE, Standards::Language::None);
472472

473473
mApplications->saveSettings();
474474

@@ -1058,7 +1058,7 @@ Settings MainWindow::getCppcheckSettings()
10581058
result.platform.set((cppcheck::Platform::Type) mSettings->value(SETTINGS_CHECKED_PLATFORM, 0).toInt());
10591059
result.standards.setCPP(mSettings->value(SETTINGS_STD_CPP, QString()).toString().toStdString());
10601060
result.standards.setC(mSettings->value(SETTINGS_STD_C, QString()).toString().toStdString());
1061-
result.enforcedLang = (Settings::Language)mSettings->value(SETTINGS_ENFORCED_LANGUAGE, 0).toInt();
1061+
result.enforcedLang = (Standards::Language)mSettings->value(SETTINGS_ENFORCED_LANGUAGE, 0).toInt();
10621062

10631063
if (result.jobs <= 1) {
10641064
result.jobs = 1;

lib/cppcheck.cpp

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -285,18 +285,18 @@ static void createDumpFile(const Settings& settings,
285285

286286
std::string language;
287287
switch (settings.enforcedLang) {
288-
case Settings::Language::C:
288+
case Standards::Language::C:
289289
language = " language=\"c\"";
290290
break;
291-
case Settings::Language::CPP:
291+
case Standards::Language::CPP:
292292
language = " language=\"cpp\"";
293293
break;
294-
case Settings::Language::None:
294+
case Standards::Language::None:
295295
// TODO: error out on unknown language?
296-
const Settings::Language lang = Path::identify(filename);
297-
if (lang == Settings::Language::CPP)
296+
const Standards::Language lang = Path::identify(filename);
297+
if (lang == Standards::Language::CPP)
298298
language = " language=\"cpp\"";
299-
else if (lang == Settings::Language::C)
299+
else if (lang == Standards::Language::C)
300300
language = " language=\"c\"";
301301
break;
302302
}
@@ -478,7 +478,7 @@ unsigned int CppCheck::check(const std::string &path)
478478
if (!mSettings.quiet)
479479
mErrorLogger.reportOut(std::string("Checking ") + path + "...", Color::FgGreen);
480480

481-
const bool isCpp = Path::identify(path) == Settings::Language::CPP;
481+
const bool isCpp = Path::identify(path) == Standards::Language::CPP;
482482

483483
const std::string langOpt = isCpp ? "-x c++" : "-x c";
484484
const std::string analyzerInfo = mSettings.buildDir.empty() ? std::string() : AnalyzerInformation::getAnalyzerInfoFile(mSettings.buildDir, path, emptyString);

lib/path.cpp

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -233,7 +233,7 @@ bool Path::isCPP(const std::string &path)
233233
bool Path::acceptFile(const std::string &path, const std::set<std::string> &extra)
234234
{
235235
bool header = false;
236-
return (identify(path, &header) != Settings::Language::None && !header) || extra.find(getFilenameExtension(path)) != extra.end();
236+
return (identify(path, &header) != Standards::Language::None && !header) || extra.find(getFilenameExtension(path)) != extra.end();
237237
}
238238

239239
bool Path::isHeader(const std::string &path)
@@ -242,32 +242,32 @@ bool Path::isHeader(const std::string &path)
242242
return (extension.compare(0, 2, ".h") == 0);
243243
}
244244

245-
Settings::Language Path::identify(const std::string &path, bool *header)
245+
Standards::Language Path::identify(const std::string &path, bool *header)
246246
{
247247
if (header)
248248
*header = false;
249249

250250
std::string ext = getFilenameExtension(path);
251251
if (ext == ".C")
252-
return Settings::Language::CPP;
252+
return Standards::Language::CPP;
253253
if (c_src_exts.find(ext) != c_src_exts.end())
254-
return Settings::Language::C;
254+
return Standards::Language::C;
255255
// cppcheck-suppress knownConditionTrueFalse - TODO: FP
256256
if (!caseInsensitiveFilesystem())
257257
strTolower(ext);
258258
if (ext == ".h") {
259259
if (header)
260260
*header = true;
261-
return Settings::Language::C; // treat as C for now
261+
return Standards::Language::C; // treat as C for now
262262
}
263263
if (cpp_src_exts.find(ext) != cpp_src_exts.end())
264-
return Settings::Language::CPP;
264+
return Standards::Language::CPP;
265265
if (header_exts.find(ext) != header_exts.end()) {
266266
if (header)
267267
*header = true;
268-
return Settings::Language::CPP;
268+
return Standards::Language::CPP;
269269
}
270-
return Settings::Language::None;
270+
return Standards::Language::None;
271271
}
272272

273273
bool Path::isHeader2(const std::string &path)

lib/path.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
//---------------------------------------------------------------------------
2323

2424
#include "config.h"
25-
#include "settings.h"
25+
#include "standards.h"
2626

2727
#include <set>
2828
#include <string>
@@ -190,7 +190,7 @@ class CPPCHECKLIB Path {
190190
* @param header if provided indicates if the file is a header
191191
* @return the language type
192192
*/
193-
static Settings::Language identify(const std::string &path, bool *header = nullptr);
193+
static Standards::Language identify(const std::string &path, bool *header = nullptr);
194194

195195
/**
196196
* @brief Get filename without a directory path part.

lib/preprocessor.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -620,10 +620,10 @@ static simplecpp::DUI createDUI(const Settings &mSettings, const std::string &cf
620620
dui.includes = mSettings.userIncludes; // --include
621621
// TODO: use mSettings.standards.stdValue instead
622622
// TODO: error out on unknown language?
623-
const Settings::Language lang = Path::identify(filename);
624-
if (lang == Settings::Language::CPP)
623+
const Standards::Language lang = Path::identify(filename);
624+
if (lang == Standards::Language::CPP)
625625
dui.std = mSettings.standards.getCPP();
626-
else if (lang == Settings::Language::C)
626+
else if (lang == Standards::Language::C)
627627
dui.std = mSettings.standards.getC();
628628
dui.clearIncludeCache = mSettings.clearIncludeCache;
629629
return dui;

lib/settings.h

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -176,12 +176,8 @@ class CPPCHECKLIB WARN_UNUSED Settings {
176176
bool dump{};
177177
std::string dumpFile;
178178

179-
enum Language {
180-
None, C, CPP
181-
};
182-
183179
/** @brief Name of the language that is enforced. Empty per default. */
184-
Language enforcedLang{};
180+
Standards::Language enforcedLang{};
185181

186182
/** @brief Is --exception-handling given */
187183
bool exceptionHandling{};

lib/standards.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,8 @@
3434
* This struct contains all possible standards that cppcheck recognize.
3535
*/
3636
struct Standards {
37+
enum Language { None, C, CPP };
38+
3739
/** C code standard */
3840
enum cstd_t { C89, C99, C11, CLatest = C11 } c = CLatest;
3941

lib/tokenlist.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -82,14 +82,14 @@ void TokenList::deallocateTokens()
8282

8383
void TokenList::determineCppC()
8484
{
85-
Settings::Language lang;
85+
Standards::Language lang;
8686
bool header = false;
8787
lang = Path::identify(getSourceFilePath(), &header);
88-
if (mSettings && mSettings->enforcedLang != Settings::Language::None)
88+
if (mSettings && mSettings->enforcedLang != Standards::Language::None)
8989
lang = mSettings->enforcedLang;
9090

91-
mIsC = lang == Settings::Language::C;
92-
mIsCpp = lang == Settings::Language::CPP;
91+
mIsC = lang == Standards::Language::C;
92+
mIsCpp = lang == Standards::Language::CPP;
9393
mIsHeader = header;
9494
}
9595

0 commit comments

Comments
 (0)