[gcc r14-7511] gccrs: Resolve identifier-pattern struct pattern fields

Arthur Cohen cohenarthur@gcc.gnu.org
Tue Jan 16 17:40:15 GMT 2024


https://gcc.gnu.org/g:14ab22c46e8dce09c7f19883f510a386cfdf2e9d

commit r14-7511-g14ab22c46e8dce09c7f19883f510a386cfdf2e9d
Author: Owen Avery <powerboat9.gamer@gmail.com>
Date:   Mon Apr 24 15:49:49 2023 -0400

    gccrs: Resolve identifier-pattern struct pattern fields
    
    gcc/rust/ChangeLog:
    
            * resolve/rust-ast-resolve-pattern.cc
            (PatternDeclaration::visit): Handle StructPatternFieldIdentPat.
    
    Signed-off-by: Owen Avery <powerboat9.gamer@gmail.com>

Diff:
---
 gcc/rust/resolve/rust-ast-resolve-pattern.cc | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/gcc/rust/resolve/rust-ast-resolve-pattern.cc b/gcc/rust/resolve/rust-ast-resolve-pattern.cc
index a2a88cf7ac6..b7d971e1cbb 100644
--- a/gcc/rust/resolve/rust-ast-resolve-pattern.cc
+++ b/gcc/rust/resolve/rust-ast-resolve-pattern.cc
@@ -131,8 +131,10 @@ PatternDeclaration::visit (AST::StructPattern &pattern)
 	  break;
 
 	  case AST::StructPatternField::ItemType::IDENT_PAT: {
-	    // TODO
-	    gcc_unreachable ();
+	    AST::StructPatternFieldIdentPat &ident
+	      = static_cast<AST::StructPatternFieldIdentPat &> (*field);
+
+	    ident.get_ident_pattern ()->accept_vis (*this);
 	  }
 	  break;


More information about the Gcc-cvs mailing list