diff --git a/gcc/rust/ast/rust-ast-collector.cc b/gcc/rust/ast/rust-ast-collector.cc index dbc3ef2997cd..71cc09835c3a 100644 --- a/gcc/rust/ast/rust-ast-collector.cc +++ b/gcc/rust/ast/rust-ast-collector.cc @@ -534,11 +534,12 @@ TokenCollector::visit (ConstGenericParam ¶m) auto id = param.get_name ().as_string (); push (Rust::Token::make_identifier (UNDEF_LOCATION, std::move (id))); push (Rust::Token::make (COLON, UNDEF_LOCATION)); - visit (param.get_type ()); + if (param.has_type ()) + visit (param.get_type ()); if (param.has_default_value ()) { push (Rust::Token::make (EQUAL, UNDEF_LOCATION)); - visit (param.get_type ()); + visit (param.get_default_value ()); } }