| Age | Commit message (Collapse) | Author | Lines |
|
|
|
Rollup of 8 pull requests
Successful merges:
- #109170 (Set `CMAKE_SYSTEM_NAME` for Linux targets)
- #109266 (rustdoc: Correctly merge import's and its target's docs in one more case)
- #109267 (Add tests for configure.py)
- #109273 (Make `slice::is_sorted_by` implementation nicer)
- #109277 (Fix generics_of for impl's RPITIT synthesized associated type)
- #109307 (Ignore `Inlined` spans when computing caller location.)
- #109364 (Only expect a GAT const param for `type_of` of GAT const arg)
- #109365 (Update mdbook)
Failed merges:
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
Optimize dep node backtrace and ignore fatal errors
This attempts to optimize https://github.com/rust-lang/rust/pull/91742 while also passing through fatal errors.
r? `@cjgillot`
|
|
Only expect a GAT const param for `type_of` of GAT const arg
IDK why we were account for both `is_ty_or_const` instead of just for a const param, since we're computing the `type_of` a const param specifically.
Fixes #109300
|
|
Ignore `Inlined` spans when computing caller location.
Fixes https://github.com/rust-lang/rust/issues/105538
|
|
Fix generics_of for impl's RPITIT synthesized associated type
The only useful commit is the last one.
This makes `generics_of` for the impl side RPITIT copy from the trait's associated type and avoid the fn on the impl side which was previously wrongly used.
This solution is better but we still need to fix resolution of the generated generics.
r? ``@compiler-errors``
|
|
fix ClashingExternDeclarations lint ICE
Fixes #109334
First "real" contribution, please let me know if I did something wrong.
As I understand it, it's OK if a `#[repr(transparent)]` type has no non-zero sized types (aka is a ZST itself) and the function should just return the type normally instead of panicking
r? `@Nilstrieb`
|
|
Split `items` from `-Zmeta-stats` in two.
Because it's one of the biggest sections.
r? `@bjorn3`
|
|
fix: fix ICE in `custom-test-frameworks` feature
Fixes #107454
Simple fix to emit error instead of ICEing. At some point, all the code in `tests.rs` should be refactored, there is a bit of duplication (this PR's code is repeated five times over lol).
r? `@Nilstrieb` (active on the linked issue?)
|
|
Update names/comments for new return-position impl trait in trait lowering strategy
r? `@spastorino`
totally cosmetic
|
|
|
|
Implementing "<test_binary> --list --format json" for use by IDE test explorers / runners
Fixes #107307
PR 1 of 2 - wiring up just the new information + implement the command line changes i.e. --format json + tests
upcoming:
PR 2 of 2 - clean up "#[cfg(not(bootstrap))]" from PR 1
As per the discussions on
- MCP: https://rust-lang.zulipchat.com/#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Implementing.20.22.3Ctest_binary.3E.20--list.20--form.E2.80.A6.20compiler-team.23592/near/328747548
- preRFC: https://internals.rust-lang.org/t/pre-rfc-implementing-test-binary-list-format-json-for-use-by-ide-test-explorers-runners/18308
- FYI on Discord: https://discord.com/channels/442252698964721669/459149169546887178/1075581549409484820
|
|
|
|
|
|
|
|
|
|
Because it's one of the biggest sections.
|
|
Implement FixedSizeEncoding for UnusedGenericParams.
Using a `Lazy` for actually a `u32` value is 50% overhead, so let's encode the bitset directly.
|
|
The name of NativeLib will be presented
Fixes #109144
I was working on a quick fix, but found change the name from `Option<Symbol>` to `Symbol` make life a little bit easier.
|
|
fix: don't suggest similar method when unstable
Fixes #109177
Don't display typo suggestions for unstable things, unless the feature flag is enabled.
AFAIK, there are two places this occurs:
- `rustc_resolve`: before type checking, effectively just `FnCtxt::Free`.
- `rustc_hir_typck`: during type checking, for `FnCtxt::Assoc(..)`s.
The linked issue is about the latter, obviously the issue is applicable to both.
r? `@estebank`
|
|
r=cjgillot
Add `useless_anonymous_reexport` lint
This is a follow-up of https://github.com/rust-lang/rust/pull/108936. We once again show all anonymous re-exports in rustdoc, however we also wanted to add a lint to let users know that it very likely doesn't have the effect they think it has.
|
|
Add note for mismatched types because of circular dependencies
If you have crate A with a dependency on crate B, and crate B with a dev-dependency on A, then you might see "mismatched types" errors on types that seem to be equal. This PR adds a note that explains that the types are different, because crate B is compiled twice, one time with `cfg(test)` and one time without.
I haven't found a good way to create circular dependencies in UI tests, so I abused the incremental tests instead. As a bonus, incremental tests support "cpass" now.
related to https://github.com/rust-lang/rust/issues/22750
|
|
|
|
|
|
|
|
|
|
Use `size_of_val` instead of manual calculation
Very minor thing that I happened to notice in passing, but it's both shorter and [means it gets `mul nsw`](https://rust.godbolt.org/z/Y9KxYETv5), so why not.
|
|
Fix generics mismatch errors for RPITITs on -Zlower-impl-trait-in-trait-to-assoc-ty
This PR stops reporting errors due to different count of generics on the new synthesized associated types for RPITITs. Those were already reported when we compare the function on the triat with the function on the impl.
r? ``@compiler-errors``
|
|
Tweak implementation of overflow checking assertions
Extract and reuse logic controlling behaviour of overflow checking assertions instead of duplicating it three times.
r? `@cjgillot`
|
|
Speed up tidy quite a lot
I highly recommend reviewing this commit-by-commit. Based on #106440 for convenience.
## Timings
These were collected by running `x test tidy -v` to copy paste the command, then using [`samply record`](https://github.com/mstange/samply).
before (8 threads)

after (8 threads) 
before (64 threads) 
after (64 threads) 
The last commit makes tidy use more threads, so comparing "before (8 threads)" to "after (64 threads)" is IMO the most realistic comparison. Locally, that brings the time for me to run tidy down from 4 to .9 seconds, i.e. the majority of the time for `x test tidy` is now spend running `fmt --check`.
r? `@the8472`
|
|
Error code E0794 for late-bound lifetime parameter error.
This PR addresses [#80618](https://github.com/rust-lang/rust/issues/80618).
|
|
fast path for process_obligations
Speeds up `keccak` and `cranelift-codegen` in perf.rlo.
|
|
|
|
|
|
Very minor thing that I happened to notice in passing, but it's both shorter and means it gets `mul nuw`, so why not.
|
|
resolve: Improve debug impls for `NameBinding`
Print at least the Some/None/Ok/Err status of the nested bindings if not the bindings themselves.
Noticed while reviewing https://github.com/rust-lang/rust/pull/108729.
|
|
Suggest surrounding the macro with `{}` to interpret as a statement
Fixes #109237
|
|
Pass the right HIR back from `get_fn_decl`
Fixes #109232
Makes sure that the `fn_id: HirId` that we pass to `suggest_missing_return_type` matches up with the `fn_decl: hir::FnDecl` that we pass to it, so the late-bound vars that we fetch from the former match up with the types in the latter...
This HIR suggestion code really needs a big refactor. I've tried to do it in the past (a couple of attempts), but it's a super tangled mess. It really shouldn't be passing around things like `hir::Node` and just deal with `LocalDefId`s everywhere... Anyways, I'd rather fix this ICE, now.
|
|
Do not ICE for unexpected lifetime with ConstGeneric rib
Fixes #109143
r? ````@petrochenkov````
Combining this test with the previous test will affect the previous diagnostics, so I added a separate test case.
|
|
E0206 - update description
added `union` to description
|
|
Fix index out of bounds in `suggest_trait_fn_ty_for_impl_fn_infer`
Fixes #109191
|
|
r=jackh726
Erase escaping late-bound regions when probing for ambiguous associated types
Fixes #109090
|
|
|
|
|
|
Bump bootstrap compiler to 1.69 beta
r? `@pietroalbini`
|
|
- only borrow the refcell once per loop
- avoid complex matches to reduce branch paths in the hot loop
- use a by-ref fast path that avoids mutations at the expense of having false negatives
|
|
-Zlower-impl-trait-in-trait-to-assoc-ty
|
|
|
|
|
|
Rollup of 8 pull requests
Successful merges:
- #108958 (Remove box expressions from HIR)
- #109044 (Prevent stable `libtest` from supporting `-Zunstable-options`)
- #109155 (Fix riscv64 fuchsia LLVM target name)
- #109156 (Fix linker detection for clang with prefix)
- #109181 (inherit_overflow: adapt pattern to also work with v0 mangling)
- #109198 (Install projection from RPITIT to default trait method opaque correctly)
- #109215 (Use sort_by_key instead of sort_by)
- #109229 (Fix invalid markdown link references)
Failed merges:
r? `@ghost`
`@rustbot` modify labels: rollup
|