Fixed warnings on GCC 12

This commit is contained in:
Bartek Kryza
2022-06-11 18:30:02 +02:00
parent bcd6c06003
commit 0dec595d20
7 changed files with 30 additions and 8 deletions

View File

@@ -30,6 +30,8 @@ public:
class_method(common::model::access_t access, const std::string &name,
const std::string &type);
virtual ~class_method() = default;
bool is_pure_virtual() const;
void is_pure_virtual(bool is_pure_virtual);

View File

@@ -30,9 +30,9 @@ public:
enum_(const common::model::namespace_ &using_namespaces);
enum_(const enum_ &) = delete;
enum_(enum_ &&) = default;
enum_(enum_ &&) = delete;
enum_ &operator=(const enum_ &) = delete;
enum_ &operator=(enum_ &&) = default;
enum_ &operator=(enum_ &&) = delete;
// TODO: Do we need this?
friend bool operator==(const enum_ &l, const enum_ &r);

View File

@@ -58,6 +58,8 @@ class filter_visitor {
public:
filter_visitor(filter_t type);
virtual ~filter_visitor() = default;
virtual tvl::value_t match(
const diagram &d, const common::model::element &e) const;
@@ -86,6 +88,8 @@ struct anyof_filter : public filter_visitor {
anyof_filter(
filter_t type, std::vector<std::unique_ptr<filter_visitor>> filters);
virtual ~anyof_filter() = default;
tvl::value_t match(
const diagram &d, const common::model::element &e) const override;
@@ -99,6 +103,8 @@ private:
struct namespace_filter : public filter_visitor {
namespace_filter(filter_t type, std::vector<namespace_> namespaces);
virtual ~namespace_filter() = default;
tvl::value_t match(const diagram &d, const namespace_ &ns) const override;
tvl::value_t match(const diagram &d, const element &e) const override;
@@ -110,6 +116,8 @@ private:
struct element_filter : public filter_visitor {
element_filter(filter_t type, std::vector<std::string> elements);
virtual ~element_filter() = default;
tvl::value_t match(const diagram &d, const element &e) const override;
private:
@@ -119,6 +127,8 @@ private:
struct subclass_filter : public filter_visitor {
subclass_filter(filter_t type, std::vector<std::string> roots);
virtual ~subclass_filter() = default;
tvl::value_t match(const diagram &d, const element &e) const override;
private:
@@ -137,6 +147,8 @@ struct edge_traversal_filter : public filter_visitor {
{
}
virtual ~edge_traversal_filter() = default;
tvl::value_t match(const diagram &d, const MatchOverrideT &e) const override
{
// This filter should only be run on the completely generated diagram
@@ -203,7 +215,7 @@ private:
decltype(matching_elements_) parents;
util::for_each(
matching_elements_, [this, &cd, &parents](const auto &element) {
matching_elements_, [&cd, &parents](const auto &element) {
auto parent = detail::get<ElementT, DiagramT>(
cd, element.get().path().to_string());
@@ -269,6 +281,8 @@ struct relationship_filter : public filter_visitor {
relationship_filter(
filter_t type, std::vector<relationship_t> relationships);
virtual ~relationship_filter() = default;
tvl::value_t match(
const diagram &d, const relationship_t &r) const override;
@@ -279,6 +293,8 @@ private:
struct access_filter : public filter_visitor {
access_filter(filter_t type, std::vector<access_t> access);
virtual ~access_filter() = default;
tvl::value_t match(const diagram &d, const access_t &a) const override;
private:
@@ -288,6 +304,8 @@ private:
struct context_filter : public filter_visitor {
context_filter(filter_t type, std::vector<std::string> context);
virtual ~context_filter() = default;
tvl::value_t match(const diagram &d, const element &r) const override;
private:
@@ -298,6 +316,8 @@ struct paths_filter : public filter_visitor {
paths_filter(filter_t type, const std::filesystem::path &root,
std::vector<std::filesystem::path> p);
virtual ~paths_filter() = default;
tvl::value_t match(
const diagram &d, const common::model::source_file &r) const override;

View File

@@ -46,11 +46,11 @@ void generator::generate_relationships(
else {
util::for_each_if(
f.relationships(),
[this, &f](const auto &r) {
[this](const auto &r) {
return m_model.should_include(r.type()) &&
util::contains(m_generated_aliases, r.destination());
},
[this, &f, &ostr](const auto &r) {
[&f, &ostr](const auto &r) {
ostr << f.alias() << " "
<< plantuml_common::to_plantuml(r.type(), r.style()) << " "
<< r.destination() << '\n';

View File

@@ -43,7 +43,7 @@ public:
common::model::diagram_t type() const override;
type_safe::optional_ref<const common::model::diagram_element> get(
const std::string &full_name) const;
const std::string &full_name) const override;
void add_file(std::unique_ptr<common::model::source_file> &&f);

View File

@@ -45,7 +45,7 @@ public:
packages() const;
type_safe::optional_ref<const common::model::diagram_element> get(
const std::string &full_name) const;
const std::string &full_name) const override;
void add_package(std::unique_ptr<common::model::package> &&p);

View File

@@ -37,7 +37,7 @@ public:
common::model::diagram_t type() const override;
type_safe::optional_ref<const common::model::diagram_element> get(
const std::string &full_name) const;
const std::string &full_name) const override;
std::string to_alias(const std::string &full_name) const;