]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
gccrs: nr2.0: Visit receiver/call expression and arguments in calls/methods
authorArthur Cohen <arthur.cohen@embecosm.com>
Wed, 2 Aug 2023 09:22:10 +0000 (11:22 +0200)
committerArthur Cohen <arthur.cohen@embecosm.com>
Tue, 16 Jan 2024 18:00:27 +0000 (19:00 +0100)
gcc/rust/ChangeLog:

* resolve/rust-default-resolver.cc
(DefaultResolver::visit): Visit CallExpr and MethodCallExpr properly.
* resolve/rust-default-resolver.h: Switch "node" to plural in documentation.

gcc/rust/resolve/rust-default-resolver.cc
gcc/rust/resolve/rust-default-resolver.h

index 5cf4fe79ea1ae0a547d88955d232c099f4ab4660..1d54f91e644e95134713cc184ccada113430a8f4 100644 (file)
@@ -303,15 +303,25 @@ DefaultResolver::visit (AST::StructExprFieldIndexValue &)
 
 void
 DefaultResolver::visit (AST::CallExpr &expr)
-{}
+{
+  expr.get_function_expr ()->accept_vis (*this);
+  for (auto &param : expr.get_params ())
+    param->accept_vis (*this);
+}
 
 void
 DefaultResolver::visit (AST::MethodCallExpr &expr)
-{}
+{
+  expr.get_receiver_expr ()->accept_vis (*this);
+  for (auto &param : expr.get_params ())
+    param->accept_vis (*this);
+}
 
 void
 DefaultResolver::visit (AST::FieldAccessExpr &expr)
-{}
+{
+  expr.get_receiver_expr ()->accept_vis (*this);
+}
 
 void
 DefaultResolver::visit (AST::ClosureExprInner &)
index 17b87ef5435071bf506a74b61d8615ec610b3da3..03b4a5421a4ffa18ed4ccc6bcdba426e277f0528 100644 (file)
@@ -56,7 +56,7 @@ public:
   void visit (AST::Union &);
   void visit (AST::Enum &);
 
-  // Visitors that visit their expression node
+  // Visitors that visit their expression node(s)
   void visit (AST::BorrowExpr &);
   void visit (AST::DereferenceExpr &);
   void visit (AST::ErrorPropagationExpr &);