Auto merge of #76964 - RalfJung:rollup-ybn06fs, r=RalfJung
Rollup of 15 pull requests Successful merges: - #76722 (Test and fix Send and Sync traits of BTreeMap artefacts) - #76766 (Extract some intrinsics out of rustc_codegen_llvm) - #76800 (Don't generate bootstrap usage unless it's needed) - #76809 (simplfy condition in ItemLowerer::with_trait_impl_ref()) - #76815 (Fix wording in mir doc) - #76818 (Don't compile regex at every function call.) - #76821 (Remove redundant nightly features) - #76823 (black_box: silence unused_mut warning when building with cfg(miri)) - #76825 (use `array_windows` instead of `windows` in the compiler) - #76827 (fix array_windows docs) - #76828 (use strip_prefix over starts_with and manual slicing based on pattern length (clippy::manual_strip)) - #76840 (Move to intra doc links in core/src/future) - #76845 (Use intra docs links in core::{ascii, option, str, pattern, hash::map}) - #76853 (Use intra-doc links in library/core/src/task/wake.rs) - #76871 (support panic=abort in Miri) Failed merges: r? `@ghost`
This commit is contained in:
commit
41507ed0d5
51 changed files with 862 additions and 697 deletions
|
@ -370,7 +370,11 @@ impl<'a, 'tcx> FnCtxt<'a, 'tcx> {
|
|||
{
|
||||
let s = s.as_ref();
|
||||
let old = old.as_ref();
|
||||
if s.starts_with(old) { Some(new.as_ref().to_owned() + &s[old.len()..]) } else { None }
|
||||
if let Some(stripped) = s.strip_prefix(old) {
|
||||
Some(new.as_ref().to_owned() + stripped)
|
||||
} else {
|
||||
None
|
||||
}
|
||||
}
|
||||
|
||||
/// This function is used to determine potential "simple" improvements or users' errors and
|
||||
|
|
|
@ -589,10 +589,10 @@ impl<'a, 'tcx> FnCtxt<'a, 'tcx> {
|
|||
} else {
|
||||
msg
|
||||
},
|
||||
if lstring.starts_with('&') {
|
||||
if let Some(stripped) = lstring.strip_prefix('&') {
|
||||
// let a = String::new();
|
||||
// let _ = &a + "bar";
|
||||
lstring[1..].to_string()
|
||||
stripped.to_string()
|
||||
} else {
|
||||
format!("{}.to_owned()", lstring)
|
||||
},
|
||||
|
@ -617,10 +617,10 @@ impl<'a, 'tcx> FnCtxt<'a, 'tcx> {
|
|||
is_assign,
|
||||
) {
|
||||
(Ok(l), Ok(r), IsAssign::No) => {
|
||||
let to_string = if l.starts_with('&') {
|
||||
let to_string = if let Some(stripped) = l.strip_prefix('&') {
|
||||
// let a = String::new(); let b = String::new();
|
||||
// let _ = &a + b;
|
||||
l[1..].to_string()
|
||||
stripped.to_string()
|
||||
} else {
|
||||
format!("{}.to_owned()", l)
|
||||
};
|
||||
|
|
|
@ -2343,8 +2343,8 @@ fn from_target_feature(
|
|||
item.span(),
|
||||
format!("`{}` is not valid for this target", feature),
|
||||
);
|
||||
if feature.starts_with('+') {
|
||||
let valid = supported_target_features.contains_key(&feature[1..]);
|
||||
if let Some(stripped) = feature.strip_prefix('+') {
|
||||
let valid = supported_target_features.contains_key(stripped);
|
||||
if valid {
|
||||
err.help("consider removing the leading `+` in the feature name");
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue