aboutsummaryrefslogtreecommitdiff
path: root/src/util
diff options
context:
space:
mode:
Diffstat (limited to 'src/util')
-rw-r--r--src/util/settings.h2
-rw-r--r--src/util/system.cpp9
-rw-r--r--src/util/system.h1
3 files changed, 7 insertions, 5 deletions
diff --git a/src/util/settings.h b/src/util/settings.h
index bbb6abe2c0..1d03639fa2 100644
--- a/src/util/settings.h
+++ b/src/util/settings.h
@@ -9,7 +9,7 @@
#include <string>
#include <vector>
-#include <univalue.h> // For util::SettingsValue = UniValue
+class UniValue;
namespace util {
diff --git a/src/util/system.cpp b/src/util/system.cpp
index b0a538b527..69a7be96dc 100644
--- a/src/util/system.cpp
+++ b/src/util/system.cpp
@@ -226,10 +226,11 @@ static bool CheckValid(const std::string& key, const util::SettingsValue& val, u
return true;
}
-ArgsManager::ArgsManager()
-{
- // nothing to do
-}
+// Define default constructor and destructor that are not inline, so code instantiating this class doesn't need to
+// #include class definitions for all members.
+// For example, m_settings has an internal dependency on univalue.
+ArgsManager::ArgsManager() {}
+ArgsManager::~ArgsManager() {}
const std::set<std::string> ArgsManager::GetUnsuitableSectionOnlyArgs() const
{
diff --git a/src/util/system.h b/src/util/system.h
index 3138522b5c..96f51e6074 100644
--- a/src/util/system.h
+++ b/src/util/system.h
@@ -192,6 +192,7 @@ protected:
public:
ArgsManager();
+ ~ArgsManager();
/**
* Select the network in use