git.iko.soy/rowtype-yoga/purescript-native
on golang help sign in
C++: add 'override's and a virtual dtor
2a4e404Andy Arvanitis
pcc/include/purescript.hh+3−2
@@ -99,7 +99,7 @@ class any {
99 const T lambda;
99 const T lambda;
100 public:
100 public:
101 _closure(const T& l) noexcept : lambda(l) {}
101 _closure(const T& l) noexcept : lambda(l) {}
102− auto operator()(const any& arg) const -> any {
102+ auto operator()(const any& arg) const -> any override {
103 return lambda(arg);
103 return lambda(arg);
104 }
104 }
105 };
105 };
@@ -107,6 +107,7 @@ class any {
107 class eff_closure {
107 class eff_closure {
108 public:
108 public:
109 virtual auto operator()() const -> any = 0;
109 virtual auto operator()() const -> any = 0;
110+ virtual ~eff_closure() {}
110 };
111 };
111
112
112 template <typename T>
113 template <typename T>
@@ -114,7 +115,7 @@ class any {
114 const T lambda;
115 const T lambda;
115 public:
116 public:
116 _eff_closure(const T& l) noexcept : lambda(l) {}
117 _eff_closure(const T& l) noexcept : lambda(l) {}
117− auto operator()() const -> any {
118+ auto operator()() const -> any override {
118 return lambda();
119 return lambda();
119 }
120 }
120 };
121 };