remove `hex` dependency in bootstrap
First commit removes the `hex` dependency, as we can achieve the same output with the added function, which is very small and simple.
Second commit creates a test module for the helpers util and adds unit tests for multiple helper functions, including `hex_encode`.
Visit the AllocIds and BorTags in borrow state FrameExtra
Fixes https://github.com/rust-lang/miri/issues/3228
I said
> The obvious way would be to visit the AllocIds in borrow_tracker::FrameExtra in the GC.
Since I have had no new ideas, that's what this does.
rustdoc-search: remove parallel searchWords array
This might have made sense if the algorithm could use `searchWords` to skip having to look at `searchIndex`, but since it always does a substring check on both the stock word and the normalizedName, it doesn't seem to help performance anyway.
Profile: http://notriddle.com/rustdoc-html-demo-8/searchwords/index.html
[std] Add xcoff in object's feature list
object-0.32.0 has supported XCOFF format. And backtrace in submodule has been updated to support XCOFF and AIX. Add `xcoff` to supported feature list to make backtrace built on AIX.
Add ASCII whitespace trimming functions to `&str`
- Add `trim_ascii_start`, `trim_ascii_end`, and `trim_ascii` functions to `&str` for trimming ASCII whitespace
- Add `#[inline]` to `[u8]` `trim_ascii` functions
These functions are feature-gated by `#![feature(byte_slice_trim_ascii)]` #94035
Make `IMPLIED_BOUNDS_ENTAILMENT` into a hard error from a lint
closes#105572
Removes the `IMPLIED_BOUNDS_ENTAILMENT` and makes the `compare_method_predicate_entailment` logic just run once.
r? lcnr
Coverage marker statements should have no effect on codegen, but in some cases
they could have the side-effect of creating a `func_coverage` entry for their
enclosing function. That can lead to an ICE for functions that don't actually
have any coverage spans.
This might have made sense if the algorithm could use `searchWords`
to skip having to look at `searchIndex`, but since it always
does a substring check on both the stock word and the normalizedName,
it doesn't seem to help performance anyway.
Rollup of 5 pull requests
Successful merges:
- #118396 (Collect lang items from AST, get rid of `GenericBound::LangItemTrait`)
- #118727 (Don't pass lint back out of lint decorator)
- #118956 (Make CStr documentation consistent ("nul" instead of "null"))
- #118981 (Remove an unneeded allocation)
- #118998 (Link to is_benchmark from the Ipv6Addr::is_global documentation)
r? `@ghost`
`@rustbot` modify labels: rollup
Link to is_benchmark from the Ipv6Addr::is_global documentation
All other relevant is_* methods are mentioned in the list of addresses here, is_benchmarking has been the only one missing.
Make CStr documentation consistent ("nul" instead of "null")
"nul" is used in method names and appears more often in the documentation than "null", so make all instances "nul" to keep it consistent.