span,
desired_action.as_noun(),
&self.describe_place_with_options(moved_place, IncludingDowncast(true))
- .unwrap_or("_".to_owned()),
+ .unwrap_or_else(|| "_".to_owned()),
Origin::Mir,
);
err.span_label(span, format!("use of possibly uninitialized {}", item_msg));
let mut err = tcx.cannot_move_when_borrowed(
span,
- &self.describe_place(place).unwrap_or("_".to_owned()),
+ &self.describe_place(place).unwrap_or_else(|| "_".to_owned()),
Origin::Mir,
);
err.span_label(borrow_span, format!("borrow of {} occurs here", borrow_msg));
let mut err = tcx.cannot_use_when_mutably_borrowed(
span,
- &self.describe_place(place).unwrap_or("_".to_owned()),
+ &self.describe_place(place).unwrap_or_else(|| "_".to_owned()),
borrow_span,
&self.describe_place(&borrow.borrowed_place)
- .unwrap_or("_".to_owned()),
+ .unwrap_or_else(|| "_".to_owned()),
Origin::Mir,
);
borrow_spans.var_span_label(&mut err, {
let place = &borrow.borrowed_place;
- let desc_place = self.describe_place(place).unwrap_or("_".to_owned());
+ let desc_place = self.describe_place(place).unwrap_or_else(|| "_".to_owned());
format!("borrow occurs due to use of `{}`{}", desc_place, borrow_spans.describe())
});
"closure"
};
- let desc_place = self.describe_place(place).unwrap_or("_".to_owned());
+ let desc_place = self.describe_place(place).unwrap_or_else(|| "_".to_owned());
let tcx = self.infcx.tcx;
let first_borrow_desc;
);
} else {
let borrow_place = &issued_borrow.borrowed_place;
- let borrow_place_desc = self.describe_place(borrow_place).unwrap_or("_".to_owned());
+ let borrow_place_desc = self.describe_place(borrow_place)
+ .unwrap_or_else(|| "_".to_owned());
issued_spans.var_span_label(
&mut err,
format!(
(predecessor, is_back_edge)
}));
- let mut visited = FxHashSet();
+ let mut visited = FxHashSet::default();
let mut result = vec![];
'dfs: while let Some((location, is_back_edge)) = stack.pop() {
tcx.cannot_mutate_in_match_guard(
span,
loan_span,
- &self.describe_place(place).unwrap_or("_".to_owned()),
+ &self.describe_place(place).unwrap_or_else(|| "_".to_owned()),
"assign",
Origin::Mir,
)
tcx.cannot_assign_to_borrowed(
span,
loan_span,
- &self.describe_place(place).unwrap_or("_".to_owned()),
+ &self.describe_place(place).unwrap_or_else(|| "_".to_owned()),
Origin::Mir,
)
};