summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.suppress.cppcheck1
-rw-r--r--include/ingen/client/PortModel.hpp4
-rw-r--r--meson/suppressions/meson.build1
-rw-r--r--src/client/PortModel.cpp13
4 files changed, 16 insertions, 3 deletions
diff --git a/.suppress.cppcheck b/.suppress.cppcheck
index 55309381..226742e1 100644
--- a/.suppress.cppcheck
+++ b/.suppress.cppcheck
@@ -13,7 +13,6 @@ noExplicitConstructor
normalCheckLevelMaxBranches
nullPointerArithmetic
passedByValue
-rethrowNoCurrentException
shadowFunction
unsafeClassCanLeak
useStlAlgorithm
diff --git a/include/ingen/client/PortModel.hpp b/include/ingen/client/PortModel.hpp
index 903a435d..eb85eb6c 100644
--- a/include/ingen/client/PortModel.hpp
+++ b/include/ingen/client/PortModel.hpp
@@ -86,8 +86,8 @@ private:
, _direction(dir)
{}
- void add_child(const std::shared_ptr<ObjectModel>& c) override { throw; }
- bool remove_child(const std::shared_ptr<ObjectModel>& c) override { throw; }
+ void add_child(const std::shared_ptr<ObjectModel>& c) override;
+ bool remove_child(const std::shared_ptr<ObjectModel>& c) override;
void set(const std::shared_ptr<ObjectModel>& model) override;
diff --git a/meson/suppressions/meson.build b/meson/suppressions/meson.build
index d1366d00..4ebd0ce7 100644
--- a/meson/suppressions/meson.build
+++ b/meson/suppressions/meson.build
@@ -98,6 +98,7 @@ if is_variable('cpp')
'-Wno-strict-overflow',
'-Wno-suggest-attribute=const',
'-Wno-suggest-attribute=format',
+ '-Wno-suggest-attribute=noreturn',
'-Wno-suggest-attribute=pure',
'-Wno-suggest-final-methods',
'-Wno-suggest-final-types',
diff --git a/src/client/PortModel.cpp b/src/client/PortModel.cpp
index 73f273c7..48d70774 100644
--- a/src/client/PortModel.cpp
+++ b/src/client/PortModel.cpp
@@ -23,6 +23,7 @@
#include "lv2/urid/urid.h"
#include <cstdint>
+#include <exception>
#include <map>
#include <memory>
#include <utility>
@@ -71,6 +72,18 @@ PortModel::is_uri() const
}
void
+PortModel::add_child(const std::shared_ptr<ObjectModel>&)
+{
+ std::terminate();
+}
+
+bool
+PortModel::remove_child(const std::shared_ptr<ObjectModel>&)
+{
+ std::terminate();
+}
+
+void
PortModel::set(const std::shared_ptr<ObjectModel>& model)
{
ObjectModel::set(model);