diff options
Diffstat (limited to 'gcc/rust/resolve/rust-ast-resolve-pattern.h')
-rw-r--r-- | gcc/rust/resolve/rust-ast-resolve-pattern.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/gcc/rust/resolve/rust-ast-resolve-pattern.h b/gcc/rust/resolve/rust-ast-resolve-pattern.h index 57c73ba..01a0534 100644 --- a/gcc/rust/resolve/rust-ast-resolve-pattern.h +++ b/gcc/rust/resolve/rust-ast-resolve-pattern.h @@ -83,6 +83,17 @@ public: pattern.get_is_mut ()); } + void visit (AST::WildcardPattern &pattern) override + { + resolver->get_name_scope ().insert ( + CanonicalPath::new_seg (pattern.get_node_id (), "_"), + pattern.get_node_id (), pattern.get_locus ()); + resolver->insert_new_definition (pattern.get_node_id (), + Definition{pattern.get_node_id (), + parent}); + resolver->mark_decl_mutability (pattern.get_node_id (), false); + } + // cases in a match expression void visit (AST::PathInExpression &pattern) override; |