From: Philip Herron <[email protected]>
Signed-off-by: Philip Herron <[email protected]>
gcc/rust/ChangeLog:
* hir/tree/rust-hir-item.h: implement virtual function
* hir/tree/rust-hir.h: add virtual function
---
gcc/rust/hir/tree/rust-hir-item.h | 17 ++++++++++++++++-
gcc/rust/hir/tree/rust-hir.h | 2 ++
2 files changed, 18 insertions(+), 1 deletion(-)
diff --git a/gcc/rust/hir/tree/rust-hir-item.h
b/gcc/rust/hir/tree/rust-hir-item.h
index f7bf1f879c8..03e1f71abb5 100644
--- a/gcc/rust/hir/tree/rust-hir-item.h
+++ b/gcc/rust/hir/tree/rust-hir-item.h
@@ -1226,6 +1226,11 @@ public:
SelfParam &get_self_param () { return self; }
+ std::string get_impl_item_name () const override final
+ {
+ return get_function_name ();
+ }
+
protected:
/* Use covariance to implement clone function as returning this object
* rather than base */
@@ -1345,6 +1350,11 @@ public:
return get_mappings ();
};
+ std::string get_impl_item_name () const override final
+ {
+ return get_new_type_name ();
+ }
+
protected:
/* Use covariance to implement clone function as returning this object
* rather than base */
@@ -2116,7 +2126,7 @@ public:
Expr *get_expr () { return const_expr.get (); }
- std::string get_identifier () { return identifier; }
+ std::string get_identifier () const { return identifier; }
Analysis::NodeMapping get_impl_mappings () const override
{
@@ -2130,6 +2140,11 @@ public:
ItemKind get_item_kind () const override { return ItemKind::Constant; }
+ std::string get_impl_item_name () const override final
+ {
+ return get_identifier ();
+ }
+
protected:
/* Use covariance to implement clone function as returning this object
* rather than base */
diff --git a/gcc/rust/hir/tree/rust-hir.h b/gcc/rust/hir/tree/rust-hir.h
index 314aafb32d3..28f1f21a6bb 100644
--- a/gcc/rust/hir/tree/rust-hir.h
+++ b/gcc/rust/hir/tree/rust-hir.h
@@ -839,6 +839,8 @@ public:
virtual ImplItemType get_impl_item_type () const = 0;
+ virtual std::string get_impl_item_name () const = 0;
+
protected:
// Clone function implementation as pure virtual method
virtual ImplItem *clone_inherent_impl_item_impl () const = 0;
--
2.40.0
--
Gcc-rust mailing list
[email protected]
https://gcc.gnu.org/mailman/listinfo/gcc-rust