| Age | Commit message (Collapse) | Author | Lines |
|
Rust 1.32.0 stable release
Also cherry-picked the following beta-accepted PRs:
* #57519: Correct RELEASES.md for 1.32.0
r? @Mark-Simulacrum
cc @rust-lang/release
|
|
Fixes a bug in extracting a tarball by correctly recognizing entries are
files instead of directories.
|
|
|
|
|
|
The `into_to_from_bytes` feature was stabilized for `i128` and `u128` just like for the other integer types, but they seem to have been missed.
|
|
[beta] Rollup backports
Cherry-picked:
* #57355: use the correct supertrait substitution in `object_ty_for_trait`
* #57471: Updated RELEASES.md for 1.32.0
Rolled up:
* #57483: [beta] Uniform path backports
* c658d73: resolve: Avoid "self-confirming" resolutions in import validation
* #57160: resolve: Fix an ICE in import validation
* #56759: Stabilize `uniform_paths`
r? @ghost
|
|
|
|
|
|
|
|
Co-Authored-By: Aaronepower <Aaronepower@users.noreply.github.com>
|
|
|
|
|
|
Fixes #57156.
|
|
|
|
Add some tests for buggy derive helpers
|
|
|
|
|
|
|
|
...while still keeping ambiguity errors future-proofing for uniform paths.
This corner case is not going to be stabilized for 1.32 and needs some more general experiments about retrofitting 2018 import rules to 2015 edition
|
|
|
|
|
|
|
|
r=GuillaumeGomez
[beta] rustdoc: semi-revert libsyntax doctest parsing if a macro is wrapping main
Fixes https://github.com/rust-lang/rust/issues/56898
This is a patch to doctest parsing on beta (that i plan to "forward-port" to master) that reverts to the old text-based `fn main` scan if it found a macro invocation in the doctest but did not find a main function. This should solve situations like `allocator_api` which wrap their main functions in a macro invocation, but doesn't solve something like the initial version of `quicli` which used a macro to *generate* the main function. (Properly doing the latter involves running macro expansion before checking, which is a bit too involved for a beta fix.)
|
|
[beta] Rollup backports
Cherry-picked:
* #57053: Fix alignment for array indexing
* #57181: resolve: Fix another ICE in import validation
* #57185: resolve: Fix one more ICE in import validation
* #57282: Wf-check the output type of a function in MIR-typeck
* #55318: Ensure that Rustdoc discovers all necessary auto trait bounds
* #56838: Call poly_project_and_unify_type on types that contain inference types
Rolled up:
* #57300: [beta] Update RLS to include 100% CPU on hover bugfix
* #57301: beta: bootstrap from latest stable (1.31.1)
* #57292: [BETA] Update cargo
r? @ghost
|
|
Commit f57247c48cb59 (Ensure that Rusdoc discovers all necessary auto
trait bounds) added a check to ensure that we only attempt to unify a
projection predicatre with inference variables. However, the check it
added was too strict - instead of checking that a type *contains* an
inference variable (e.g. '&_', 'MyType<_>'), it required the type to
*be* an inference variable (i.e. only '_' would match).
This commit relaxes the check to use 'ty.has_infer_types', ensuring that
we perform unification wherever possible.
Fixes #56822
|
|
|
|
If we end up with a projection predicate that equates a type with
itself (e.g. <T as MyType>::Value == <T as MyType>::Value), we can
run into issues if we try to add it to our ParamEnv.
|
|
|
|
Fixes #50159
This commit makes several improvements to AutoTraitFinder:
* Call infcx.resolve_type_vars_if_possible before processing new
predicates. This ensures that we eliminate inference variables wherever
possible.
* Process all nested obligations we get from a vtable, not just ones
with depth=1.
* The 'depth=1' check was a hack to work around issues processing
certain predicates. The other changes in this commit allow us to
properly process all predicates that we encounter, so the check is no
longer necessary,
* Ensure that we only display predicates *without* inference variables
to the user, and only attempt to unify predicates that *have* an
inference variable as their type.
Additionally, the internal helper method is_of_param now operates
directly on a type, rather than taking a Substs. This allows us to use
the 'self_ty' method, rather than directly dealing with Substs.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
We need to reduce the alignment with the used offset. If the offset
isn't known, we need to reduce with the element size to support
arbitrary offsets.
|
|
Beta backport of a fix that already was backported to stable,
see https://github.com/rust-lang/rust/issues/56726 and
https://github.com/rust-lang/rls/pull/1170 for the underlying RLS issue.
Also includes the fix for https://github.com/rust-lang/rls/issues/1154
(respecting target-dir specified in .cargo/config for RLS artifacts).
|
|
|
|
|
|
[beta] Rollup backports
* #56919: Remove a wrong multiplier on relocation offset computation
* #56916: Fix mutable references in `static mut`
* #56863: fix trait objects with a Self-containing projection values
* #56850: Fixed issue with using `Self` ctor in typedefs
r? @ghost
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This follows ALT2 in the issue.
Fixes #56288.
|
|
|
|
|