| Age | Commit message (Collapse) | Author | Lines |
|
Note the type when unable to drop values in compile time
|
|
Remove support for legacy PM
This removes support for optimizing with LLVM's legacy pass manager, as well as the unstable `-Znew-llvm-pass-manager` option. We have been defaulting to the new PM since LLVM 13 (except for s390x that waited for 14), and LLVM 15 removed support altogether. The only place we still use the legacy PM is for writing the output file, just like `llc` does.
cc #74705
r? ``@nikic``
|
|
r=cjgillot
Look at move place's type when suggesting mutable reborrow
Not sure why we are looking at the use site's ty instead of the move site's ty in order to suggest reborrowing the move site, but it was suppressing a perfectly valid reborrow suggestion.
r? `@estebank` who i think touched this last in 520461f1fb2730f8edb17922f3bcc74fccdc52d3, though that was quite a while ago so feel free to reassign.
|
|
Don't drop parent substs when we have no generic parameters in `create_substs_for_ast_path`
This bug is being shadowed by an explicit check for `generics.params.is_empty()` in the only parent caller that could trigger it (`create_substs_for_associated_item`). I triggered it on another branch where I'm messing around with astconv stuff.
Also, the second commit simplifies `create_substs_for_associated_item`. Removing that explicit check I mentioned above^ and also the special case call to `Astconv::prohibit_generics` causes the UI test `src/test/ui/structs/struct-path-associated-type.stderr` to change, but I think that it's clearer now. The suggestion to remove the generics is actually useful.
|
|
rustdoc: Stabilize --diagnostic-width
This stabilizes the `--diagnostic-width` flag for rustdoc. This flag was stabilized in rustc in #95635, but it isn't clear from the discussion there why it wasn't stabilized in rustdoc. I believe this flag works as expected, following the same behavior as rustc.
I'd like to stabilize this so that the same support can be stabilized in cargo, and it would help simplify things if both rustc and rustdoc supported it.
|
|
Resolve async fn signature even without body (e.g., in trait)
Fixes #102138
This "bail if no body" behavior was introduced in #69539 to fix #69401, but that ICE does not reproduce any more. The error message changes a bit, but that's all, and I don't think it's a particularly diagnostic bad regression.
|
|
implied_bounds: deal with inference vars
fixes #101951
while computing implied bounds for `<<T as ConstructionFirm>::Builder as BuilderFn<'_>>::Output` normalization replaces a projection with an inference var (adding a `Projection` obligation). Until we prove that obligation, this inference var remains unknown, which caused us to miss an implied bound necessary to prove that the unnormalized projection from the trait method signature is wf.
r? types
|
|
Separate definitions and HIR owners in the type system
Fixes #83158
r? `@cjgillot`
|
|
|
|
|
|
|
|
|
|
|
|
fix a ui test
use `into`
fix clippy ui test
fix a run-make-fulldeps test
implement `IntoQueryParam<DefId>` for `OwnerId`
use `OwnerId` for more queries
change the type of `ParentOwnerIterator::Item` to `(OwnerId, OwnerNode)`
|
|
diagnostics: avoid syntactically invalid suggestion in if conditionals
Fixes #101065
|
|
resolve: Set effective visibilities for imports more precisely
Instead of setting them for all primary and additional IDs of the import, only set them for the binding's true ID.
|
|
Revert perf-regression 101620
Reverts #101862 #101620
r? `@Mark-Simulacrum`
|
|
|
|
Improve rustdoc GUI tests
I finally finished the update so we can now store values in variables and use them. It improves things nicely.
r? ``@notriddle``
|
|
Calculate `ProjectionTy::trait_def_id` for return-position `impl Trait` in trait correctly
Fixes #102140
|
|
rustdoc: CSS prevent sidebar width change jank
This commit makes the `width` and `min-width` of the sidebar the same. They originally were when cad0fce2053d52b7ba04c458f4c124c8b5c6141e added the `min-width` rule, but 6a5f8b1aef1417d7dc85b5d0a229d2db1930eb7c changed the `width` without changing the `min-width`, causing it to sometimes oscilate between 200 and 250 pixels depending on the main content.
# Before
[Screencast from 09-22-2022 10:25:29 AM.webm](https://user-images.githubusercontent.com/1593513/191813469-ea00f30f-6f49-40fc-9a26-e1dfd5068d2b.webm)
# After
[Screencast from 09-22-2022 10:32:20 AM.webm](https://user-images.githubusercontent.com/1593513/191813642-ae0902da-5262-403a-bbdf-995334201acb.webm)
|
|
Adding ignore fuchsia non-applicable commands
Adding ignore fuchsia non-applicable commands
cc `@djkoloski`
r? `@tmandry`
|
|
Adding ignore fuchsia tests for execvp (pre_exec)
Adding ignore fuchsia tests for pre_exec, which calls execvp
cc. `@djkoloski`
r? `@tmandry`
|
|
Always print '_, even for erased lifetimes.
Explicit lifetime arguments are now the recommended syntax in rust 2018 and rust 2021. This PR applies this discipline to rustc itself.
|
|
|
|
|
|
Fixes #101065
|
|
|
|
Since `len` and `is_empty` are not const stable yet, this also
creates a new feature for them since they previously used the same
`const_btree_new` feature.
|
|
Rollup of 7 pull requests
Successful merges:
- #102094 (Add missing documentation for `bool::from_str`)
- #102115 (Add examples to `bool::then` and `bool::then_some`)
- #102134 (Detect panic strategy using `rustc --print cfg`)
- #102137 (Don't convert valtree to constvalue during normalization)
- #102148 (add regression test for miri issue 2433)
- #102158 (rustdoc: clean up CSS/DOM for deprecation warnings)
- #102177 (Fix a typo in `std`'s root docs)
Failed merges:
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Don't convert valtree to constvalue during normalization
r? ``@lcnr``
|
|
Detect panic strategy using `rustc --print cfg`
Instead of relying on a command line parameter, detect if a target is able to unwind or not.
Ignore tests that require unwinding on targets that don't support it.
I did not find any place where the removed parameter has been used, but it feels a bit risky as
I'm new to this test framework.
r? bjorn3
|
|
Introduce mir::Unevaluated
Previously the distinction between unevaluated constants in the type-system and in mir was not explicit and a little confusing. Probably better to introduce its own type for that.
r? `@lcnr`
|
|
|
|
|
|
|
|
Rollup of 8 pull requests
Successful merges:
- #100734 (Split out async_fn_in_trait into a separate feature)
- #101664 (Note if mismatched types have a similar name)
- #101815 (Migrated the rustc_passes annotation without effect diagnostic infrastructure)
- #102042 (Distribute rust-docs-json via rustup.)
- #102066 (rustdoc: remove unnecessary `max-width` on headers)
- #102095 (Deduplicate two functions that would soon have been three)
- #102104 (Set 'exec-env:RUST_BACKTRACE=0' in const-eval-select tests)
- #102112 (Allow full relro on powerpc64-unknown-linux-gnu)
Failed merges:
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
|
|
|
|
|
|
|
|
|
|
|