Warning, /graphics/krita/3rdparty/ext_lager/0002-Fix-attempt-to-use-final-specifier-with-a-non-virtua.patch is written in an unsupported language. File is not indexed.

0001 From d1209444c4fb11c3bced674306823b7d2f4161a0 Mon Sep 17 00:00:00 2001
0002 From: "L. E. Segovia" <amy@amyspark.me>
0003 Date: Sun, 23 Apr 2023 21:42:26 -0300
0004 Subject: [PATCH 2/2] Fix attempt to use final specifier with a non virtual
0005  function
0006 
0007 This is incorrect as per s.11.4.1.15 [class.mem.general] of the C++
0008 Standard [1].
0009 
0010 See also: https://en.cppreference.com/w/cpp/language/final
0011 
0012 [1]: https://eel.is/c++draft/class.mem.general#15
0013 ---
0014  lager/constant.hpp           | 2 +-
0015  lager/detail/lens_nodes.hpp  | 2 +-
0016  lager/detail/merge_nodes.hpp | 2 +-
0017  lager/detail/nodes.hpp       | 4 ++--
0018  lager/detail/xform_nodes.hpp | 2 +-
0019  lager/sensor.hpp             | 2 +-
0020  lager/setter.hpp             | 4 ++--
0021  lager/state.hpp              | 2 +-
0022  lager/store.hpp              | 2 +-
0023  9 files changed, 11 insertions(+), 11 deletions(-)
0024 
0025 diff --git a/lager/constant.hpp b/lager/constant.hpp
0026 index 0b985a0..ede3d7e 100644
0027 --- a/lager/constant.hpp
0028 +++ b/lager/constant.hpp
0029 @@ -27,7 +27,7 @@ class constant_node : public root_node<T, reader_node>
0030  public:
0031      using base_t::base_t;
0032  
0033 -    virtual void recompute() final {}
0034 +    void recompute() final override {}
0035  };
0036  
0037  template <typename T>
0038 diff --git a/lager/detail/lens_nodes.hpp b/lager/detail/lens_nodes.hpp
0039 index 51a791b..39d78de 100644
0040 --- a/lager/detail/lens_nodes.hpp
0041 +++ b/lager/detail/lens_nodes.hpp
0042 @@ -60,7 +60,7 @@ public:
0043          , lens_{std::forward<Lens2>(l)}
0044      {}
0045  
0046 -    void recompute() final
0047 +    void recompute() final override
0048      {
0049          this->push_down(view(lens_, current_from(this->parents())));
0050      }
0051 diff --git a/lager/detail/merge_nodes.hpp b/lager/detail/merge_nodes.hpp
0052 index 45e2cd4..33ba23e 100644
0053 --- a/lager/detail/merge_nodes.hpp
0054 +++ b/lager/detail/merge_nodes.hpp
0055 @@ -49,7 +49,7 @@ public:
0056          : base_t{current_from(parents), std::forward<ParentsTuple>(parents)}
0057      {}
0058  
0059 -    void recompute() final { this->push_down(current_from(this->parents())); }
0060 +    void recompute() final override { this->push_down(current_from(this->parents())); }
0061  };
0062  
0063  template <typename Parents>
0064 diff --git a/lager/detail/nodes.hpp b/lager/detail/nodes.hpp
0065 index 87ed89b..e6e4db1 100644
0066 --- a/lager/detail/nodes.hpp
0067 +++ b/lager/detail/nodes.hpp
0068 @@ -260,7 +260,7 @@ public:
0069          , parents_{std::move(parents)}
0070      {}
0071  
0072 -    void refresh() final
0073 +    void refresh() final override
0074      {
0075          std::apply([&](auto&&... ps) { noop((ps->refresh(), 0)...); },
0076                     parents_);
0077 @@ -302,7 +302,7 @@ struct root_node : Base<T>
0078      using base_t = Base<T>;
0079      using base_t::base_t;
0080  
0081 -    void refresh() final {}
0082 +    void refresh() final override {}
0083  };
0084  
0085  template <typename... Nodes>
0086 diff --git a/lager/detail/xform_nodes.hpp b/lager/detail/xform_nodes.hpp
0087 index 9babe57..c373aa9 100644
0088 --- a/lager/detail/xform_nodes.hpp
0089 +++ b/lager/detail/xform_nodes.hpp
0090 @@ -95,7 +95,7 @@ public:
0091          , down_step_{std::forward<Xform2>(xform)(send_down_rf)}
0092      {}
0093  
0094 -    void recompute() final
0095 +    void recompute() final override
0096      {
0097          std::apply([&](auto&&... ps) { down_step_(this, ps->current()...); },
0098                     this->parents());
0099 diff --git a/lager/sensor.hpp b/lager/sensor.hpp
0100 index 7c29780..3dca346 100644
0101 --- a/lager/sensor.hpp
0102 +++ b/lager/sensor.hpp
0103 @@ -41,7 +41,7 @@ public:
0104          , sensor_{std::move(sensor)}
0105      {}
0106  
0107 -    void recompute() final { this->push_down(sensor_()); }
0108 +    void recompute() final override { this->push_down(sensor_()); }
0109  
0110  private:
0111      SensorFnT sensor_;
0112 diff --git a/lager/setter.hpp b/lager/setter.hpp
0113 index eec8ec2..01009ec 100644
0114 --- a/lager/setter.hpp
0115 +++ b/lager/setter.hpp
0116 @@ -40,7 +40,7 @@ public:
0117          , setter_fn_{std::move(fn)}
0118      {}
0119  
0120 -    void recompute() final
0121 +    void recompute() final override
0122      {
0123          if (recomputed_)
0124              recomputed_ = false;
0125 @@ -48,7 +48,7 @@ public:
0126              this->push_down(parent_->current());
0127      }
0128  
0129 -    void refresh() final {}
0130 +    void refresh() final override {}
0131  
0132      void send_up(const value_type& value) override
0133      {
0134 diff --git a/lager/state.hpp b/lager/state.hpp
0135 index 6ba43da..ff99e4d 100644
0136 --- a/lager/state.hpp
0137 +++ b/lager/state.hpp
0138 @@ -37,7 +37,7 @@ public:
0139  
0140      using base_t::base_t;
0141  
0142 -    virtual void recompute() final {}
0143 +    void recompute() final override {}
0144  
0145      void send_up(const value_type& value) final
0146      {
0147 diff --git a/lager/store.hpp b/lager/store.hpp
0148 index 6af905a..26bb509 100644
0149 --- a/lager/store.hpp
0150 +++ b/lager/store.hpp
0151 @@ -40,7 +40,7 @@ struct store_node_base : public root_node<Model, reader_node>
0152      using base_t     = root_node<Model, reader_node>;
0153      using base_t::base_t;
0154  
0155 -    virtual void recompute() final {}
0156 +    void recompute() final override {}
0157      virtual future dispatch(action_t action) = 0;
0158  };
0159  
0160 -- 
0161 2.37.1.windows.1
0162