@@ -618,7 +618,7 @@ fn expand_cluster(cluster: &Cluster, defs: &RegisterProperties) -> Result<Vec<Re
618618 match cluster {
619619 Cluster :: Single ( info) => cluster_expanded. push ( RegisterBlockField {
620620 field : convert_svd_cluster ( cluster) ,
621- description : info. description . clone ( ) ,
621+ description : info. description . as_ref ( ) . unwrap_or ( & info . name ) . into ( ) ,
622622 offset : info. address_offset ,
623623 size : cluster_size,
624624 } ) ,
@@ -638,15 +638,15 @@ fn expand_cluster(cluster: &Cluster, defs: &RegisterProperties) -> Result<Vec<Re
638638 if array_convertible {
639639 cluster_expanded. push ( RegisterBlockField {
640640 field : convert_svd_cluster ( & cluster) ,
641- description : info. description . clone ( ) ,
641+ description : info. description . as_ref ( ) . unwrap_or ( & info . name ) . into ( ) ,
642642 offset : info. address_offset ,
643643 size : cluster_size * array_info. dim ,
644644 } ) ;
645645 } else {
646646 for ( field_num, field) in expand_svd_cluster ( cluster) . iter ( ) . enumerate ( ) {
647647 cluster_expanded. push ( RegisterBlockField {
648648 field : field. clone ( ) ,
649- description : info. description . clone ( ) ,
649+ description : info. description . as_ref ( ) . unwrap_or ( & info . name ) . into ( ) ,
650650 offset : info. address_offset + field_num as u32 * array_info. dim_increment ,
651651 size : cluster_size,
652652 } ) ;
@@ -726,7 +726,8 @@ fn cluster_block(
726726 let mut mod_items = TokenStream :: new ( ) ;
727727
728728 // name_sc needs to take into account array type.
729- let description = util:: escape_brackets ( util:: respace ( & c. description ) . as_ref ( ) ) ;
729+ let description =
730+ util:: escape_brackets ( util:: respace ( c. description . as_ref ( ) . unwrap_or ( & c. name ) ) . as_ref ( ) ) ;
730731
731732 // Generate the register block.
732733 let mod_name = match c {
0 commit comments