| Age | Commit message (Collapse) | Author | Lines |
|
There is no type T, such that `T = [T; 2]`, we should not allow this
to be circumvented by impl Trait.
|
|
|
|
|
|
|
|
|
|
|
|
resolve: Do not skip extern prelude during speculative resolution
Fixes https://github.com/rust-lang/rust/issues/54665
|
|
|
|
This commit updates the test output for the updated NLL compare mode
that uses `-Z borrowck=migrate` rather than `-Z borrowck=mir`. The
previous commit changes `compiletest` and this commit only updates
`.nll.stderr` files.
|
|
It looks like we tend to use angle-brackets around the placeholder in
the few other places we use `Applicability::HasPlaceholders`, but that
would be confusing here, so ...
|
|
Fix dead code lint for functions using impl Trait
Fixes https://github.com/rust-lang/rust/issues/54754
This is a minimal fix that doesn't add any new queries or touches unnecessary code. Please nominate for beta backport if wanted.
|
|
Nest the `impl Trait` existential item inside the return type
fixes #54045
r? @cramertj
|
|
|
|
|
|
|
|
|
|
|
|
Using the `closure_base_def_id` indiscriminantely, as we were doing
before, winds up "going wrong" if the closure type includes the `impl
Trait` from the parent. The problem arises because the return value
for closures is inferred and meant to treat the return
type *opaquely*, so we don't want to be "desugaring" it into the
underlying type.
|
|
|
|
|
|
NLL regresses diagnostic for impl-trait/static-return-lifetime-infered.rs
Fixes #53771.
r? @nikomatsakis
cc @pnkfelix @estebank
|
|
Add rustc SHA to released DWARF debuginfo
This commit updates the debuginfo that is encoded in all of our released
artifacts by default. Currently it has paths like `/checkout/src/...` but these
are a little inconsistent and have changed over time. This commit instead
attempts to actually define the file paths in our debuginfo to be consistent
between releases.
All debuginfo paths are now intended to be `/rustc/$sha` where `$sha` is the git
sha of the released compiler. Sub-paths are all paths into the git repo at that
`$sha`.
|
|
|
|
type.
|
|
|
|
|
|
This commit updates the debuginfo that is encoded in all of our released
artifacts by default. Currently it has paths like `/checkout/src/...` but these
are a little inconsistent and have changed over time. This commit instead
attempts to actually define the file paths in our debuginfo to be consistent
between releases.
All debuginfo paths are now intended to be `/rustc/$sha` where `$sha` is the git
sha of the released compiler. Sub-paths are all paths into the git repo at that
`$sha`.
|
|
#53576 Renaming TyAnon -> TyOpaque
Fixes #53576
|
|
|
|
|
|
|
|
|
|
This commit adds a normalization for line and column numbers in stderr
files where the line/col is from the source directory rather than
the test itself - thereby removing the need to update tests as
compiler source changes.
|
|
|
|
|
|
|
|
[nll] improve the "fully elaborated type" case in region errors
Fixes #52533.
r? @nikomatsakis
|
|
|
|
|
|
Implement associated existential types
r? @nikomatsakis
no idea if these work with generic traits. I'm going home for the day :rofl:
|
|
introduce universes to NLL type check
This branch aims to fix #48071 and also advance chalk integration a bit at the same time. It re-implements the subtyping/type-equating check so that NLL doesn't "piggy back" on the subtyping code of the old type checker.
This new code uses the "universe-based" approach to handling higher-ranked lifetimes, which sidesteps some of the limitations of the current "leak-based" scheme. This avoids the ICE in #48071.
At the same time, I aim for this to potentially be a kind of optimization. This NLL code is (currently) not cached, but it also generates constraints without doing as much instantiation, substitution, and folding. Right now, though, it still piggy backs on the `relate_tys` trait, which is a bit unfortunate -- it means we are doing more hashing and things than we have to. I want to measure the see the perf. Refactoring that trait is something I'd prefer to leave for follow-up work.
r? @pnkfelix -- but I want to measure perf etc first
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|