aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorOwen Avery <powerboat9.gamer@gmail.com>2024-10-15 23:42:41 -0400
committerArthur Cohen <arthur.cohen@embecosm.com>2025-03-19 15:32:18 +0100
commit8fc2bccec330950c11c7c5c54dc8b0b5798a70cf (patch)
treeba236587e66590254f6351343a096957fcbb5668 /gcc
parenta3049c8f050e6fbf0acd5e64263a14f67e93864f (diff)
downloadgcc-8fc2bccec330950c11c7c5c54dc8b0b5798a70cf.zip
gcc-8fc2bccec330950c11c7c5c54dc8b0b5798a70cf.tar.gz
gcc-8fc2bccec330950c11c7c5c54dc8b0b5798a70cf.tar.bz2
gccrs: Handle external static items in toplevel resolver 2.0
gcc/rust/ChangeLog: * resolve/rust-toplevel-name-resolver-2.0.cc (TopLevel::visit): Handle ExternalStaticItem. * resolve/rust-toplevel-name-resolver-2.0.h (TopLevel::visit): Likewise. Signed-off-by: Owen Avery <powerboat9.gamer@gmail.com>
Diffstat (limited to 'gcc')
-rw-r--r--gcc/rust/resolve/rust-toplevel-name-resolver-2.0.cc7
-rw-r--r--gcc/rust/resolve/rust-toplevel-name-resolver-2.0.h1
2 files changed, 8 insertions, 0 deletions
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 c9d5103..a0d8492 100644
--- a/gcc/rust/resolve/rust-toplevel-name-resolver-2.0.cc
+++ b/gcc/rust/resolve/rust-toplevel-name-resolver-2.0.cc
@@ -265,6 +265,13 @@ TopLevel::visit (AST::StaticItem &static_item)
}
void
+TopLevel::visit (AST::ExternalStaticItem &static_item)
+{
+ insert_or_error_out (static_item.get_identifier ().as_string (), static_item,
+ Namespace::Values);
+}
+
+void
TopLevel::visit (AST::StructStruct &struct_item)
{
auto generic_vis = [this, &struct_item] () {
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 e9e0306..7f4e295 100644
--- a/gcc/rust/resolve/rust-toplevel-name-resolver-2.0.h
+++ b/gcc/rust/resolve/rust-toplevel-name-resolver-2.0.h
@@ -152,6 +152,7 @@ private:
void visit (AST::Function &function) override;
void visit (AST::BlockExpr &expr) override;
void visit (AST::StaticItem &static_item) override;
+ void visit (AST::ExternalStaticItem &static_item) override;
void visit (AST::StructStruct &struct_item) override;
void visit (AST::TupleStruct &tuple_struct) override;
void visit (AST::EnumItem &variant) override;