https://gcc.gnu.org/g:225748e0f12ea94181560d9cc6bc18a877e6addc
commit r15-8434-g225748e0f12ea94181560d9cc6bc18a877e6addc Author: Owen Avery <powerboat9.ga...@gmail.com> Date: Tue Oct 15 22:10:35 2024 -0400 gccrs: Handle const generic parameters during resolution 2.0 gcc/rust/ChangeLog: * resolve/rust-toplevel-name-resolver-2.0.cc (TopLevel::visit): Handle ConstGenericParam. * resolve/rust-toplevel-name-resolver-2.0.h (TopLevel::visit): Likewise. Signed-off-by: Owen Avery <powerboat9.ga...@gmail.com> Diff: --- gcc/rust/resolve/rust-toplevel-name-resolver-2.0.cc | 8 ++++++++ gcc/rust/resolve/rust-toplevel-name-resolver-2.0.h | 1 + 2 files changed, 9 insertions(+) diff --git a/gcc/rust/resolve/rust-toplevel-name-resolver-2.0.cc b/gcc/rust/resolve/rust-toplevel-name-resolver-2.0.cc index d3a3c5d78bc9..92a115108e6c 100644 --- a/gcc/rust/resolve/rust-toplevel-name-resolver-2.0.cc +++ b/gcc/rust/resolve/rust-toplevel-name-resolver-2.0.cc @@ -286,6 +286,14 @@ TopLevel::visit (AST::TypeParam &type_param) Namespace::Types); } +void +TopLevel::visit (AST::ConstGenericParam &const_param) +{ + insert_or_error_out (const_param.get_name (), const_param, Namespace::Values); + + DefaultResolver::visit (const_param); +} + void TopLevel::visit (AST::TupleStruct &tuple_struct) { diff --git a/gcc/rust/resolve/rust-toplevel-name-resolver-2.0.h b/gcc/rust/resolve/rust-toplevel-name-resolver-2.0.h index cc301ed7fddf..e9e0306f11a1 100644 --- a/gcc/rust/resolve/rust-toplevel-name-resolver-2.0.h +++ b/gcc/rust/resolve/rust-toplevel-name-resolver-2.0.h @@ -164,6 +164,7 @@ private: void visit (AST::TypeAlias &type_item) override; void visit (AST::ExternCrate &crate) override; void visit (AST::TypeParam &type_param) override; + void visit (AST::ConstGenericParam &const_param) override; void visit (AST::UseDeclaration &use) override; };