diff --git a/lix/libcmd/repl-interacter.hh b/lix/libcmd/repl-interacter.hh index 970368ec0..d3d7578d0 100644 --- a/lix/libcmd/repl-interacter.hh +++ b/lix/libcmd/repl-interacter.hh @@ -32,7 +32,7 @@ public: virtual ~ReplInteracter(){}; }; -class ReadlineLikeInteracter : public virtual ReplInteracter +class ReadlineLikeInteracter final : public ReplInteracter { std::string historyFile; public: @@ -50,7 +50,7 @@ public: virtual ~ReadlineLikeInteracter() override; }; -class AutomationInteracter : public virtual ReplInteracter +class AutomationInteracter final : public ReplInteracter { public: AutomationInteracter() = default; diff --git a/lix/libstore/build/local-derivation-goal.cc b/lix/libstore/build/local-derivation-goal.cc index d9d08082e..89ebc816d 100644 --- a/lix/libstore/build/local-derivation-goal.cc +++ b/lix/libstore/build/local-derivation-goal.cc @@ -966,7 +966,7 @@ bool LocalDerivationGoal::isAllowed(const DerivedPath & req) } -struct RestrictedStoreConfig : virtual LocalFSStoreConfig +struct RestrictedStoreConfig final : LocalFSStoreConfig { using LocalFSStoreConfig::LocalFSStoreConfig; const std::string name() override { return "Restricted Store"; } diff --git a/lix/libstore/dummy-store.cc b/lix/libstore/dummy-store.cc index 97fb484c4..caf333d80 100644 --- a/lix/libstore/dummy-store.cc +++ b/lix/libstore/dummy-store.cc @@ -3,7 +3,7 @@ namespace nix { -struct DummyStoreConfig : virtual StoreConfig { +struct DummyStoreConfig final : StoreConfig { using StoreConfig::StoreConfig; const std::string name() override { return "Dummy Store"; } @@ -16,7 +16,7 @@ struct DummyStoreConfig : virtual StoreConfig { } }; -struct DummyStore : public virtual Store +struct DummyStore final : public Store { DummyStoreConfig config_; diff --git a/lix/libstore/http-binary-cache-store.cc b/lix/libstore/http-binary-cache-store.cc index c4f1922e7..3ed5dac01 100644 --- a/lix/libstore/http-binary-cache-store.cc +++ b/lix/libstore/http-binary-cache-store.cc @@ -8,7 +8,7 @@ namespace nix { MakeError(UploadToHTTP, Error); -struct HttpBinaryCacheStoreConfig : virtual BinaryCacheStoreConfig +struct HttpBinaryCacheStoreConfig final : BinaryCacheStoreConfig { using BinaryCacheStoreConfig::BinaryCacheStoreConfig; @@ -22,7 +22,7 @@ struct HttpBinaryCacheStoreConfig : virtual BinaryCacheStoreConfig } }; -class HttpBinaryCacheStore : public virtual BinaryCacheStore +class HttpBinaryCacheStore final : public BinaryCacheStore { private: diff --git a/lix/libstore/legacy-ssh-store.cc b/lix/libstore/legacy-ssh-store.cc index e9fbf543d..3c36fefe6 100644 --- a/lix/libstore/legacy-ssh-store.cc +++ b/lix/libstore/legacy-ssh-store.cc @@ -44,7 +44,7 @@ struct LegacySSHStoreConfigWithLog : LegacySSHStoreConfig const Setting logFD{this, -1, "log-fd", "file descriptor to which SSH's stderr is connected"}; }; -struct LegacySSHStore : public virtual Store +struct LegacySSHStore final : public Store { LegacySSHStoreConfigWithLog config_; diff --git a/lix/libstore/local-binary-cache-store.cc b/lix/libstore/local-binary-cache-store.cc index 9772289bf..008f56ef6 100644 --- a/lix/libstore/local-binary-cache-store.cc +++ b/lix/libstore/local-binary-cache-store.cc @@ -7,7 +7,7 @@ namespace nix { -struct LocalBinaryCacheStoreConfig : virtual BinaryCacheStoreConfig +struct LocalBinaryCacheStoreConfig final : BinaryCacheStoreConfig { using BinaryCacheStoreConfig::BinaryCacheStoreConfig; @@ -21,7 +21,7 @@ struct LocalBinaryCacheStoreConfig : virtual BinaryCacheStoreConfig } }; -class LocalBinaryCacheStore : public virtual BinaryCacheStore +class LocalBinaryCacheStore final : public BinaryCacheStore { private: diff --git a/lix/libstore/local-store.hh b/lix/libstore/local-store.hh index 81ae6f573..7ea86e1e0 100644 --- a/lix/libstore/local-store.hh +++ b/lix/libstore/local-store.hh @@ -37,7 +37,7 @@ struct OptimiseStats uint64_t blocksFreed = 0; }; -struct LocalStoreConfig : virtual LocalFSStoreConfig +struct LocalStoreConfig final : LocalFSStoreConfig { using LocalFSStoreConfig::LocalFSStoreConfig; diff --git a/lix/libstore/s3-binary-cache-store.cc b/lix/libstore/s3-binary-cache-store.cc index 2cf6bac27..eb2927d44 100644 --- a/lix/libstore/s3-binary-cache-store.cc +++ b/lix/libstore/s3-binary-cache-store.cc @@ -184,7 +184,7 @@ S3Helper::FileTransferResult S3Helper::getObject( return res; } -struct S3BinaryCacheStoreConfig : virtual BinaryCacheStoreConfig +struct S3BinaryCacheStoreConfig final : BinaryCacheStoreConfig { using BinaryCacheStoreConfig::BinaryCacheStoreConfig; diff --git a/lix/libstore/ssh-store.cc b/lix/libstore/ssh-store.cc index 65bb28ddb..2c76cb707 100644 --- a/lix/libstore/ssh-store.cc +++ b/lix/libstore/ssh-store.cc @@ -27,7 +27,7 @@ struct SSHStoreConfig : virtual RemoteStoreConfig, virtual CommonSSHStoreConfig } }; -class SSHStore : public virtual RemoteStore +class SSHStore final : public RemoteStore { SSHStoreConfig config_; diff --git a/lix/nix/config.cc b/lix/nix/config.cc index 5f744e9ec..6448af184 100644 --- a/lix/nix/config.cc +++ b/lix/nix/config.cc @@ -7,7 +7,7 @@ using namespace nix; -struct CmdConfig : virtual MultiCommand +struct CmdConfig final : MultiCommand { CmdConfig() : MultiCommand(RegisterCommand::getCommandsFor({"config"})) { } diff --git a/lix/nix/derivation.cc b/lix/nix/derivation.cc index 8df5e64c6..5d0f4c2bb 100644 --- a/lix/nix/derivation.cc +++ b/lix/nix/derivation.cc @@ -2,7 +2,7 @@ using namespace nix; -struct CmdDerivation : virtual MultiCommand +struct CmdDerivation final : MultiCommand { CmdDerivation() : MultiCommand(RegisterCommand::getCommandsFor({"derivation"})) { } diff --git a/lix/nix/realisation.cc b/lix/nix/realisation.cc index 80308e99f..4d02ca136 100644 --- a/lix/nix/realisation.cc +++ b/lix/nix/realisation.cc @@ -5,7 +5,7 @@ using namespace nix; -struct CmdRealisation : virtual MultiCommand +struct CmdRealisation final : MultiCommand { CmdRealisation() : MultiCommand(RegisterCommand::getCommandsFor({"realisation"})) { } diff --git a/lix/nix/registry.cc b/lix/nix/registry.cc index 5bdba362b..80fd83760 100644 --- a/lix/nix/registry.cc +++ b/lix/nix/registry.cc @@ -204,7 +204,7 @@ struct CmdRegistryPin : RegistryCommand, EvalCommand } }; -struct CmdRegistry : virtual MultiCommand +struct CmdRegistry final : MultiCommand { CmdRegistry() : MultiCommand({ diff --git a/lix/nix/store.cc b/lix/nix/store.cc index 00f980088..599f544d1 100644 --- a/lix/nix/store.cc +++ b/lix/nix/store.cc @@ -2,7 +2,7 @@ using namespace nix; -struct CmdStore : virtual MultiCommand +struct CmdStore final : MultiCommand { CmdStore() : MultiCommand(RegisterCommand::getCommandsFor({"store"})) { }