-
Notifications
You must be signed in to change notification settings - Fork 12.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rollup of 15 pull requests #55371
Rollup of 15 pull requests #55371
Conversation
The old test was supposed to check for proper html escaping when showing the contents of constants. This was changed as part of rust-lang#53409. The revised test asserts that the contents of the constant is not shown as part of the generated documentation.
"Run" links to the playground are not added to the generated documentation if the unstable `--playground-url` argument is not passed to rustdoc. Therefore, without specifying `--playground-url` as a compile-flag, the test doesn't correctly assert that `#![doc(html_playground_url = "")]` removes playground links.
The `@!has` command does not support specifying just a PATH and an XPATH. That means that the previous test searched for the literal string `//h2[@id="implementations"]` within the generated output, which obviously didn't exist. Even after adding a trait implementation, the test still passed. The correct way to check for the existence of a DOM element with the id `implementations` is to use the `@count` keyword.
Struct names are no longer encapsulated in `<code>` tags, which meant that the test was not correctly verifying that it wasn't being show. I've also added a check to make sure the documentation page for the redirect::Qux struct is not generated at all.
The Auto Trait Implementation section is not wrapped in a `synthetic-implementations` class. In fact, it is wrapped in a `synthetic-implementations` id. However, we can generalize and completely remove the `synthetic-implementations` requirement. We just have to verify that there's no mention of "Auto Trait Implementations" anywhere.
The generated code would look like `<code>impl <a href="...">Foo</a></code>` which the plain text matcher doesn't match. But by using the XPATH notation, the nodes are flattened and we can correctly assert that `impl Foo` does not occur in the generated docs.
The link that is matched against is not the same as would be generated by rustdoc. We should also check that the `foo/private` directory is not generated at all.
The function is called `fn_def_with_doc`, not `fn_def_with`.
nll (and thus the algorithm for actual promotion) don't know about some casts anymore
If root is not START_BLOCK, `basic_blocks().len() - visited` does not represent their exact size.
`compute_missing_ctors` is called a lot. It produces a vector, which can be reasonably large (e.g. 100+ elements), but the vector is almost always only checked for emptiness. This commit changes `compute_missing_ctors` so it can be called in a cheap way that just indicates if the vector would be empty. If necessary, the function can subsequently be called in an expensive way to compute the full vector. This change reduces instruction counts for several benchmarks up to 2%.
Fixes rust-lang#55001, rust-lang#54744 Previously, SelectionContext would unconditionally cache the selection result for an obligation. This worked fine for most users of SelectionContext, but it caused an issue when used by Rustdoc's blanket impl finder. The issue occured when SelectionContext chose a ParamCandidate which contained inference variables. Since inference variables can change between calls to select(), it's not safe to cache the selection result - the chosen candidate might not be applicable for future results, leading to an ICE when we try to run confirmation. This commit prevents SelectionContext from caching any ParamCandidate that contains inference variables. This should always be completely safe, as trait selection should never depend on a particular result being cached. I've also added some extra debug!() statements, which I found helpful in tracking down this bug.
…alexcrichton rustbuild: fix remap-debuginfo when building a release Fallback to the release number as we can't get the git commit sha as we're not in a git repository. Fixes rust-lang#55341
…=nagisa Shrink `Statement`. This commit reduces the size of `Statement` from 80 bytes to 56 bytes on 64-bit platforms, by boxing the `AscribeUserType` variant of `StatementKind`. This change reduces instruction counts on most benchmarks by 1--3%.
📌 Commit d62662bcfa9944e544982f025c16f11a9c0d63fd has been approved by |
⌛ Testing commit d62662bcfa9944e544982f025c16f11a9c0d63fd with merge 57d65903e79a42bad1e133ae3fb607c6ce23203d... |
💔 Test failed - status-travis |
The job Click to expand the log.
I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact |
Remove redundant clone (2)
📌 Commit 6fae1b1 has been approved by |
⌛ Testing commit 6fae1b1 with merge 5ce10b055a73e1390526886635f3a290e8b25d38... |
💔 Test failed - status-travis |
The job Click to expand the log.
I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact |
@bors r- |
Successful merges:
thumbv7m-none-eabi
binary usingqemu-system-arm
[IRR-2018-embedded] #53996 ([CI] Run athumbv7m-none-eabi
binary usingqemu-system-arm
[IRR-2018-embedded])@!has
and@!matches
#54824 (Cleanup rustdoc tests with@!has
and@!matches
)compute_missing_ctors
. #55167 (Add a "cheap" mode forcompute_missing_ctors
.)Statement
. #55346 (ShrinkStatement
.)