| Age | Commit message (Collapse) | Author | Lines |
|
|
|
trim old
|
|
|
|
|
|
Rollup of 7 pull requests
Successful merges:
- #100508 (avoid making substs of type aliases late bound when used as fn args)
- #101381 (Test that target feature mix up with homogeneous floats is sound)
- #103353 (Fix Access Violation when using lld & ThinLTO on windows-msvc)
- #103521 (Avoid possible infinite loop when next_point reaching the end of file)
- #103559 (first move on a nested span_label)
- #103778 (Update several crates for improved support of the new targets)
- #103827 (Properly remap and check for substs compatibility in `confirm_impl_trait_in_trait_candidate`)
Failed merges:
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
Properly remap and check for substs compatibility in `confirm_impl_trait_in_trait_candidate`
Fixes #103824
|
|
Better error for HRTB error from generator interior
cc #100013
This is just a first pass at an error. It could be better, and shouldn't really be emitted in the first place. But this is better than what was being emitted before.
|
|
Rollup of 12 pull requests
Successful merges:
- #103928 (Add 'ty_error_with_guaranteed' and 'const_error_with_guaranteed')
- #104027 (Place config.toml in current working directory if config not found)
- #104093 (disable btree size tests on Miri)
- #104097 (run alloc benchmarks in Miri and fix UB)
- #104104 (Add split-debuginfo print option)
- #104109 (rustdoc: Add mutable to the description)
- #104113 (Fix `const_fn_trait_ref_impl`, add test for it)
- #104114 (Fix invalid background-image file name)
- #104132 (fix: lint against lint functions)
- #104139 (Clarify licensing situation of MPSC and SPSC queue)
- #104147 (Remove an address comparison from the parser)
- #104165 (Add llvm-main to triagebot.toml)
Failed merges:
- #104115 (Migrate crate-search element to CSS variables)
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
|
|
fix: lint against lint functions
Add `#[rustc_lint_diagnostics]` to lint functions missing them. From [this discussion](https://github.com/rust-lang/rust/pull/101138#issuecomment-1306379999).
r? ```@davidtwco```
|
|
chenyukang:yukang/fix-103874-add-ty_error_with_guaranteed, r=lcnr
Add 'ty_error_with_guaranteed' and 'const_error_with_guaranteed'
Part of #103874
|
|
selection failure: recompute applicable impls
The way we currently skip errors for ambiguous trait obligations seems pretty fragile so we get some duplicate errors because of this.
Removing this info from selection errors changes this system to be closer to my image of our new trait solver and is also making it far easier to change overflow errors to be non-fatal :sparkles:
r? types cc `@estebank`
|
|
resolve: More detailed effective visibility tracking for imports
Per-`DefId` tracking is not enough, due to glob imports in particular, which have a single `DefId` for the whole glob import item.
We need to track this stuff per every introduced name (`NameBinding`).
Also drop `extern` blocks from the effective visibility table, they are nominally private and it doesn't make sense to keep them there.
Later commits add some debug-only invariant checking and optimiaztions to mitigate regressions in https://github.com/rust-lang/rust/pull/103965#issuecomment-1304256445.
This is a bugfix and continuation of https://github.com/rust-lang/rust/pull/102026.
|
|
|
|
|
|
|
|
|
|
fix: lint against the functions `LintContext::{lookup_with_diagnostics,lookup,struct_span_lint,lint}`, `TyCtxt::struct_lint_node`, `LintLevelsBuilder::struct_lint`.
|
|
|
|
error from generator interior
|
|
|
|
|
|
|
|
|
|
Fix typo in `rustc_middle/lint.rs`
|
|
|
|
Implement `std::marker::Tuple`, use it in `extern "rust-call"` and `Fn`-family traits
Implements rust-lang/compiler-team#537
I made a few opinionated decisions in this implementation, specifically:
1. Enforcing `extern "rust-call"` on fn items during wfcheck,
2. Enforcing this for all functions (not just ones that have bodies),
3. Gating this `Tuple` marker trait behind its own feature, instead of grouping it into (e.g.) `unboxed_closures`.
Still needing to be done:
1. Enforce that `extern "rust-call"` `fn`-ptrs are well-formed only if they have 1/2 args and the second one implements `Tuple`. (Doing this would fix ICE in #66696.)
2. Deny all explicit/user `impl`s of the `Tuple` trait, kinda like `Sized`.
3. Fixing `Tuple` trait built-in impl for chalk, so that chalkification tests are un-broken.
Open questions:
1. Does this need t-lang or t-libs signoff?
Fixes #99820
|
|
|
|
|
|
|
|
|
|
|
|
Lint against usages of `struct_span_lint_hir`.
r? `@compiler-errors`
|
|
Add internal descriptions to a few queries
helps with #104008
|
|
Some tracing and comment cleanups
Pulled out of https://github.com/rust-lang/rust/pull/101900 to see if that is the perf impact
|
|
|
|
|
|
|
|
This should result in less update calls than doing it repeatedly during the fix point iteration.
|
|
|
|
Also drop `extern` blocks from the effective visibility table, they are nominally private and it doesn't make sense to keep them there.
|
|
Refactor tcx mk_const parameters.
Unroll the `ty::ConstS` parameter to `TyCtxt::mk_const` into separate `ty::ConstKind` and `Ty` parameters.
Signature change is in:
https://github.com/V0ldek/rust/blob/c97fd8183a98d6a89b8fc2e02eb068298e6fb7dc/compiler/rustc_middle/src/ty/context.rs#L2234
and
https://github.com/V0ldek/rust/blob/c97fd8183a98d6a89b8fc2e02eb068298e6fb7dc/compiler/rustc_middle/src/ty/context.rs#L2572-L2575
the rest is callsites.
Closes #103974
r? `@oli-obk`
|
|
|
|
minor changes to make method lookup diagnostic code easier to read
The end result of around 4 days of trying to understand this 1000+ line long function- a bunch of tiny nitpicks
r? `@compiler-errors`
|
|
|
|
Improve use of ErrorGuaranteed and code cleanup
Part of #103874
|
|
|
|
|
|
|
|
|