[PATCH][pushed] VR: add more virtual dtors
Martin Liška
mliska@suse.cz
Tue Aug 16 09:31:19 GMT 2022
Likewise pushed as obvious.
Martin
Add 2 virtual destructors in order to address:
gcc/alloc-pool.h:522:5: warning: destructor called on non-final 'value_range_equiv' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
gcc/ggc.h:166:3: warning: destructor called on non-final 'int_range<1>' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
gcc/ChangeLog:
* value-range-equiv.h (class value_range_equiv): Add virtual
destructor.
* value-range.h: Likewise.
---
gcc/value-range-equiv.h | 3 +++
gcc/value-range.h | 1 +
2 files changed, 4 insertions(+)
diff --git a/gcc/value-range-equiv.h b/gcc/value-range-equiv.h
index ad8c640b15b..1a8014df834 100644
--- a/gcc/value-range-equiv.h
+++ b/gcc/value-range-equiv.h
@@ -37,6 +37,9 @@ class GTY((user)) value_range_equiv : public value_range
/* Shallow-copies equiv bitmap. */
value_range_equiv& operator=(const value_range_equiv &) /* = delete */;
+ /* Virtual destructor. */
+ virtual ~value_range_equiv () = default;
+
/* Move equiv bitmap from source range. */
void move (value_range_equiv *);
diff --git a/gcc/value-range.h b/gcc/value-range.h
index 856947d23dd..f0075d0fb1a 100644
--- a/gcc/value-range.h
+++ b/gcc/value-range.h
@@ -228,6 +228,7 @@ public:
int_range (tree type);
int_range (const int_range &);
int_range (const irange &);
+ virtual ~int_range () = default;
int_range& operator= (const int_range &);
private:
template <unsigned X> friend void gt_ggc_mx (int_range<X> *);
--
2.37.1
More information about the Gcc-patches
mailing list