diff --git a/src/plugins/baremetal/iarewtoolchain.cpp b/src/plugins/baremetal/iarewtoolchain.cpp index f40798cdb91..a094d47329a 100644 --- a/src/plugins/baremetal/iarewtoolchain.cpp +++ b/src/plugins/baremetal/iarewtoolchain.cpp @@ -226,12 +226,6 @@ IarToolChain::IarToolChain(Detection d) : ToolChain(Constants::IAREW_TOOLCHAIN_TYPEID, d) { } -IarToolChain::IarToolChain(Core::Id language, Detection d) : - IarToolChain(d) -{ - setLanguage(language); -} - QString IarToolChain::typeDisplayName() const { return Internal::IarToolChainFactory::tr("IAREW"); @@ -465,9 +459,9 @@ bool IarToolChainFactory::canCreate() return true; } -ToolChain *IarToolChainFactory::create(Core::Id language) +ToolChain *IarToolChainFactory::create() { - return new IarToolChain(language, ToolChain::ManualDetection); + return new IarToolChain(ToolChain::ManualDetection); } ToolChain *IarToolChainFactory::restore(const QVariantMap &data) diff --git a/src/plugins/baremetal/iarewtoolchain.h b/src/plugins/baremetal/iarewtoolchain.h index 902288e611b..751bd78b444 100644 --- a/src/plugins/baremetal/iarewtoolchain.h +++ b/src/plugins/baremetal/iarewtoolchain.h @@ -90,7 +90,6 @@ protected: private: explicit IarToolChain(Detection d); - explicit IarToolChain(Core::Id language, Detection d); ProjectExplorer::Abi m_targetAbi; Utils::FileName m_compilerCommand; @@ -112,7 +111,7 @@ public: const QList &alreadyKnown) final; bool canCreate() final; - ProjectExplorer::ToolChain *create(Core::Id language) final; + ProjectExplorer::ToolChain *create() final; ProjectExplorer::ToolChain *restore(const QVariantMap &data) final; diff --git a/src/plugins/baremetal/keiltoolchain.cpp b/src/plugins/baremetal/keiltoolchain.cpp index c7d639e9738..984fb3341ea 100644 --- a/src/plugins/baremetal/keiltoolchain.cpp +++ b/src/plugins/baremetal/keiltoolchain.cpp @@ -243,12 +243,6 @@ KeilToolchain::KeilToolchain(Detection d) : ToolChain(Constants::KEIL_TOOLCHAIN_TYPEID, d) { } -KeilToolchain::KeilToolchain(Core::Id language, Detection d) : - KeilToolchain(d) -{ - setLanguage(language); -} - QString KeilToolchain::typeDisplayName() const { return Internal::KeilToolchainFactory::tr("KEIL"); @@ -469,9 +463,9 @@ bool KeilToolchainFactory::canCreate() return true; } -ToolChain *KeilToolchainFactory::create(Core::Id language) +ToolChain *KeilToolchainFactory::create() { - return new KeilToolchain(language, ToolChain::ManualDetection); + return new KeilToolchain(ToolChain::ManualDetection); } ToolChain *KeilToolchainFactory::restore(const QVariantMap &data) diff --git a/src/plugins/baremetal/keiltoolchain.h b/src/plugins/baremetal/keiltoolchain.h index e2c6d749925..475edc90268 100644 --- a/src/plugins/baremetal/keiltoolchain.h +++ b/src/plugins/baremetal/keiltoolchain.h @@ -90,7 +90,6 @@ protected: private: explicit KeilToolchain(Detection d); - explicit KeilToolchain(Core::Id language, Detection d); ProjectExplorer::Abi m_targetAbi; Utils::FileName m_compilerCommand; @@ -112,7 +111,7 @@ public: const QList &alreadyKnown) final; bool canCreate() final; - ProjectExplorer::ToolChain *create(Core::Id language) final; + ProjectExplorer::ToolChain *create() final; ProjectExplorer::ToolChain *restore(const QVariantMap &data) final; diff --git a/src/plugins/baremetal/sdcctoolchain.cpp b/src/plugins/baremetal/sdcctoolchain.cpp index 79f245b5862..c3ca2f5d77e 100644 --- a/src/plugins/baremetal/sdcctoolchain.cpp +++ b/src/plugins/baremetal/sdcctoolchain.cpp @@ -220,12 +220,6 @@ SdccToolChain::SdccToolChain(Detection d) : ToolChain(Constants::SDCC_TOOLCHAIN_TYPEID, d) { } -SdccToolChain::SdccToolChain(Core::Id language, Detection d) : - SdccToolChain(d) -{ - setLanguage(language); -} - QString SdccToolChain::typeDisplayName() const { return Internal::SdccToolChainFactory::tr("SDCC"); @@ -446,9 +440,9 @@ bool SdccToolChainFactory::canCreate() return true; } -ToolChain *SdccToolChainFactory::create(Core::Id language) +ToolChain *SdccToolChainFactory::create() { - return new SdccToolChain(language, ToolChain::ManualDetection); + return new SdccToolChain(ToolChain::ManualDetection); } ToolChain *SdccToolChainFactory::restore(const QVariantMap &data) diff --git a/src/plugins/baremetal/sdcctoolchain.h b/src/plugins/baremetal/sdcctoolchain.h index e98675e7e3b..0675e49c0fb 100644 --- a/src/plugins/baremetal/sdcctoolchain.h +++ b/src/plugins/baremetal/sdcctoolchain.h @@ -90,7 +90,6 @@ protected: private: explicit SdccToolChain(Detection d); - explicit SdccToolChain(Core::Id language, Detection d); ProjectExplorer::Abi m_targetAbi; Utils::FileName m_compilerCommand; @@ -112,7 +111,7 @@ public: const QList &alreadyKnown) final; bool canCreate() final; - ProjectExplorer::ToolChain *create(Core::Id language) final; + ProjectExplorer::ToolChain *create() final; ProjectExplorer::ToolChain *restore(const QVariantMap &data) final; diff --git a/src/plugins/nim/project/nimtoolchainfactory.cpp b/src/plugins/nim/project/nimtoolchainfactory.cpp index e38b9db4b25..abc16c0721c 100644 --- a/src/plugins/nim/project/nimtoolchainfactory.cpp +++ b/src/plugins/nim/project/nimtoolchainfactory.cpp @@ -52,13 +52,9 @@ bool NimToolChainFactory::canCreate() return true; } -ToolChain *NimToolChainFactory::create(Core::Id l) +ToolChain *NimToolChainFactory::create() { - if (l != Constants::C_NIMLANGUAGE_ID) - return nullptr; - auto result = new NimToolChain(ToolChain::ManualDetection); - result->setLanguage(l); - return result; + return new NimToolChain(ToolChain::ManualDetection); } ToolChain *NimToolChainFactory::restore(const QVariantMap &data) diff --git a/src/plugins/nim/project/nimtoolchainfactory.h b/src/plugins/nim/project/nimtoolchainfactory.h index e601b71cf6b..2790496083e 100644 --- a/src/plugins/nim/project/nimtoolchainfactory.h +++ b/src/plugins/nim/project/nimtoolchainfactory.h @@ -42,7 +42,7 @@ public: NimToolChainFactory(); bool canCreate() final; - ProjectExplorer::ToolChain *create(Core::Id l) final; + ProjectExplorer::ToolChain *create() final; ProjectExplorer::ToolChain *restore(const QVariantMap &data) final; QList autoDetect(const QList &alreadyKnown) final; QList autoDetect(const Utils::FileName &compilerPath, const Core::Id &language) final; diff --git a/src/plugins/projectexplorer/customtoolchain.cpp b/src/plugins/projectexplorer/customtoolchain.cpp index 566ce93c513..8784848c7bb 100644 --- a/src/plugins/projectexplorer/customtoolchain.cpp +++ b/src/plugins/projectexplorer/customtoolchain.cpp @@ -86,12 +86,6 @@ CustomToolChain::CustomToolChain(Detection d) : m_outputParserId(GccParser::id()) { } -CustomToolChain::CustomToolChain(Core::Id language, Detection d) : CustomToolChain(d) -{ - setLanguage(language); -} - - QString CustomToolChain::typeDisplayName() const { return Internal::CustomToolChainFactory::tr("Custom"); @@ -434,9 +428,9 @@ bool CustomToolChainFactory::canCreate() return true; } -ToolChain *CustomToolChainFactory::create(Core::Id language) +ToolChain *CustomToolChainFactory::create() { - return new CustomToolChain(language, ToolChain::ManualDetection); + return new CustomToolChain(ToolChain::ManualDetection); } ToolChain *CustomToolChainFactory::restore(const QVariantMap &data) diff --git a/src/plugins/projectexplorer/customtoolchain.h b/src/plugins/projectexplorer/customtoolchain.h index 97ba205e47e..5720fa06f42 100644 --- a/src/plugins/projectexplorer/customtoolchain.h +++ b/src/plugins/projectexplorer/customtoolchain.h @@ -118,7 +118,6 @@ protected: private: explicit CustomToolChain(Detection d); - explicit CustomToolChain(Core::Id language, Detection d); Utils::FileName m_compilerCommand; Utils::FileName m_makeCommand; @@ -146,7 +145,7 @@ public: CustomToolChainFactory(); bool canCreate() override; - ToolChain *create(Core::Id language) override; + ToolChain *create() override; ToolChain *restore(const QVariantMap &data) override; }; diff --git a/src/plugins/projectexplorer/gcctoolchain.cpp b/src/plugins/projectexplorer/gcctoolchain.cpp index 7390da453bc..64536f9ab7d 100644 --- a/src/plugins/projectexplorer/gcctoolchain.cpp +++ b/src/plugins/projectexplorer/gcctoolchain.cpp @@ -884,11 +884,9 @@ bool GccToolChainFactory::canCreate() return true; } -ToolChain *GccToolChainFactory::create(Core::Id language) +ToolChain *GccToolChainFactory::create() { - ToolChain *tc = createToolChain(false); - tc->setLanguage(language); - return tc; + return createToolChain(false); } QList GccToolChainFactory::autoDetect(const QList &alreadyKnown) diff --git a/src/plugins/projectexplorer/gcctoolchainfactories.h b/src/plugins/projectexplorer/gcctoolchainfactories.h index 4db9131f763..b59b532ed4b 100644 --- a/src/plugins/projectexplorer/gcctoolchainfactories.h +++ b/src/plugins/projectexplorer/gcctoolchainfactories.h @@ -58,7 +58,7 @@ public: QList autoDetect(const Utils::FileName &compilerPath, const Core::Id &language) override; bool canCreate() override; - ToolChain *create(Core::Id language) override; + ToolChain *create() override; ToolChain *restore(const QVariantMap &data) override; diff --git a/src/plugins/projectexplorer/msvctoolchain.cpp b/src/plugins/projectexplorer/msvctoolchain.cpp index 24857e18ae4..4d40a47d5e9 100644 --- a/src/plugins/projectexplorer/msvctoolchain.cpp +++ b/src/plugins/projectexplorer/msvctoolchain.cpp @@ -782,9 +782,8 @@ MsvcToolChain::MsvcToolChain(const QString &name, const Abi &abi, const QString &varsBat, const QString &varsBatArg, - Core::Id l, Detection d) - : MsvcToolChain(Constants::MSVC_TOOLCHAIN_TYPEID, name, abi, varsBat, varsBatArg, l, d) + : MsvcToolChain(Constants::MSVC_TOOLCHAIN_TYPEID, name, abi, varsBat, varsBatArg, d) {} MsvcToolChain::MsvcToolChain(const MsvcToolChain &other) @@ -828,7 +827,6 @@ MsvcToolChain::MsvcToolChain(Core::Id typeId, const Abi &abi, const QString &varsBat, const QString &varsBatArg, - Core::Id l, Detection d) : ToolChain(typeId, d) , m_headerPathsMutex(new QMutex) @@ -839,7 +837,6 @@ MsvcToolChain::MsvcToolChain(Core::Id typeId, { addToAvailableMsvcToolchains(this); - setLanguage(l); initEnvModWatcher(Utils::runAsync(envModThreadPool(), &MsvcToolChain::environmentModifications, varsBat, @@ -1429,7 +1426,8 @@ static QList detectClangClToolChainInPath(const QString &clangClPat clangClPath); })); if (!tc) { - tc = new ClangClToolChain(name, clangClPath, language, ToolChain::AutoDetection); + tc = new ClangClToolChain(name, clangClPath, ToolChain::AutoDetection); + tc->setLanguage(language); tc->resetMsvcToolChain(toolChain); } res << tc; @@ -1491,9 +1489,8 @@ void ClangClToolChainConfigWidget::makeReadOnlyImpl() ClangClToolChain::ClangClToolChain(const QString &name, const QString &clangPath, - Core::Id language, Detection d) - : MsvcToolChain(Constants::CLANG_CL_TOOLCHAIN_TYPEID, name, Abi(), "", "", language, d) + : MsvcToolChain(Constants::CLANG_CL_TOOLCHAIN_TYPEID, name, Abi(), "", "", d) , m_clangPath(clangPath) {} @@ -1679,8 +1676,10 @@ static QList findOrCreateToolChain(const QList &alread auto mtc = static_cast(tc); return mtc->varsBat() == varsBat && mtc->varsBatArg() == varsBatArg; }); - if (!tc) - tc = new MsvcToolChain(name, abi, varsBat, varsBatArg, language, d); + if (!tc) { + tc = new MsvcToolChain(name, abi, varsBat, varsBatArg, d); + tc->setLanguage(language); + } res << tc; } return res; @@ -1715,12 +1714,13 @@ static void detectCppBuildTools2015(QList *list) e.format, e.wordSize); for (auto language : {Constants::C_LANGUAGE_ID, Constants::CXX_LANGUAGE_ID}) { - list->append(new MsvcToolChain(name + QLatin1String(e.postFix), - abi, - vcVarsBat, - QLatin1String(e.varsBatArg), - language, - ToolChain::AutoDetection)); + auto tc = new MsvcToolChain(name + QLatin1String(e.postFix), + abi, + vcVarsBat, + QLatin1String(e.varsBatArg), + ToolChain::AutoDetection); + tc->setLanguage(language); + list->append(tc); } } } @@ -1865,9 +1865,9 @@ QList ClangClToolChainFactory::autoDetect(const QList return results; } -ToolChain *ClangClToolChainFactory::create(Core::Id l) +ToolChain *ClangClToolChainFactory::create() { - return new ClangClToolChain("clang-cl", "", l, ToolChain::ManualDetection); + return new ClangClToolChain("clang-cl", "", ToolChain::ManualDetection); } bool MsvcToolChain::operator==(const ToolChain &other) const diff --git a/src/plugins/projectexplorer/msvctoolchain.h b/src/plugins/projectexplorer/msvctoolchain.h index cdfcb761979..3dee7ac7e76 100644 --- a/src/plugins/projectexplorer/msvctoolchain.h +++ b/src/plugins/projectexplorer/msvctoolchain.h @@ -59,7 +59,6 @@ public: const Abi &abi, const QString &varsBat, const QString &varsBatArg, - Core::Id l, Detection d = ManualDetection); MsvcToolChain(const MsvcToolChain &other); MsvcToolChain(); @@ -130,7 +129,6 @@ protected: const Abi &abi, const QString &varsBat, const QString &varsBatArg, - Core::Id l, Detection d); explicit MsvcToolChain(Core::Id typeId); @@ -182,7 +180,7 @@ protected: class ClangClToolChain : public MsvcToolChain { public: - ClangClToolChain(const QString &name, const QString &llvmDir, Core::Id language, Detection d); + ClangClToolChain(const QString &name, const QString &llvmDir, Detection d); ClangClToolChain(); bool isValid() const override; @@ -246,7 +244,7 @@ public: ToolChain *restore(const QVariantMap &data) override; bool canCreate() override; - ToolChain *create(Core::Id l) override; + ToolChain *create() override; }; // -------------------------------------------------------------------------- diff --git a/src/plugins/projectexplorer/toolchain.cpp b/src/plugins/projectexplorer/toolchain.cpp index 56796b1d5b7..841d62c37ce 100644 --- a/src/plugins/projectexplorer/toolchain.cpp +++ b/src/plugins/projectexplorer/toolchain.cpp @@ -443,9 +443,8 @@ bool ToolChainFactory::canCreate() return false; } -ToolChain *ToolChainFactory::create(Core::Id l) +ToolChain *ToolChainFactory::create() { - Q_UNUSED(l); return nullptr; } diff --git a/src/plugins/projectexplorer/toolchain.h b/src/plugins/projectexplorer/toolchain.h index c54c539c7c3..c1d9fbde40b 100644 --- a/src/plugins/projectexplorer/toolchain.h +++ b/src/plugins/projectexplorer/toolchain.h @@ -198,7 +198,7 @@ public: virtual QList autoDetect(const Utils::FileName &compilerPath, const Core::Id &language); virtual bool canCreate(); - virtual ToolChain *create(Core::Id l); + virtual ToolChain *create(); virtual ToolChain *restore(const QVariantMap &data); diff --git a/src/plugins/projectexplorer/toolchainoptionspage.cpp b/src/plugins/projectexplorer/toolchainoptionspage.cpp index a7a780edd39..a7b763d888e 100644 --- a/src/plugins/projectexplorer/toolchainoptionspage.cpp +++ b/src/plugins/projectexplorer/toolchainoptionspage.cpp @@ -509,10 +509,12 @@ void ToolChainOptionsWidget::createToolChain(ToolChainFactory *factory, const Co QTC_ASSERT(factory->canCreate(), return); QTC_ASSERT(language.isValid(), return); - ToolChain *tc = factory->create(language); + ToolChain *tc = factory->create(); if (!tc) return; + tc->setLanguage(language); + auto item = insertToolChain(tc, true); m_toAddList.append(item); diff --git a/src/plugins/qnx/qnxtoolchain.cpp b/src/plugins/qnx/qnxtoolchain.cpp index d2dc1f50c45..ea36c22e719 100644 --- a/src/plugins/qnx/qnxtoolchain.cpp +++ b/src/plugins/qnx/qnxtoolchain.cpp @@ -106,13 +106,6 @@ QnxToolChain::QnxToolChain(ToolChain::Detection d) setOptionsReinterpreter(&reinterpretOptions); } -QnxToolChain::QnxToolChain(Core::Id l, ToolChain::Detection d) - : QnxToolChain(d) -{ - setLanguage(l); -} - - QString QnxToolChain::typeDisplayName() const { return QnxToolChainFactory::tr("QCC"); @@ -243,9 +236,9 @@ bool QnxToolChainFactory::canCreate() return true; } -ToolChain *QnxToolChainFactory::create(Core::Id l) +ToolChain *QnxToolChainFactory::create() { - return new QnxToolChain(l, ToolChain::ManualDetection); + return new QnxToolChain(ToolChain::ManualDetection); } //--------------------------------------------------------------------------------- diff --git a/src/plugins/qnx/qnxtoolchain.h b/src/plugins/qnx/qnxtoolchain.h index a700f20b178..321a25f3521 100644 --- a/src/plugins/qnx/qnxtoolchain.h +++ b/src/plugins/qnx/qnxtoolchain.h @@ -35,7 +35,6 @@ class QnxToolChain : public ProjectExplorer::GccToolChain { public: explicit QnxToolChain(Detection d); - explicit QnxToolChain(Core::Id l, Detection d); QString typeDisplayName() const override; @@ -79,7 +78,7 @@ public: ProjectExplorer::ToolChain *restore(const QVariantMap &data) override; bool canCreate() override; - ProjectExplorer::ToolChain *create(Core::Id l) override; + ProjectExplorer::ToolChain *create() override; }; //----------------------------------------------------------------------------