| Age | Commit message (Collapse) | Author | Lines |
|
|
|
internal: Migrate `apply_demorgan` to `SyntaxEditor`
|
|
feat: Calculate drop glue and show it on hover
|
|
|
|
|
|
|
|
Vendor `always-assert` into `stdx`
|
|
Include private items in completions for local crates
|
|
feat: update insta inline snapshot when clicking 'Update Test' runnable
|
|
Disable incremental on release builds
|
|
|
|
|
|
Fix `event_name` check is workflows
|
|
internal: Downgrade to ubuntu-22.04 for aarch64 and arm builds
|
|
|
|
arm-unknown-linux-gnueabihf builds
|
|
minor: sync from downstream
|
|
|
|
|
|
|
|
|
|
|
|
Emit getelementptr inbounds nuw for pointer::add()
Lower pointer::add (via intrinsic::offset with unsigned offset) to getelementptr inbounds nuw on LLVM versions that support it. This lets LLVM make use of the pre-condition that the offset addition does not wrap in an unsigned sense. Together with inbounds, this also implies that the offset is non-negative.
Fixes https://github.com/rust-lang/rust/issues/137217.
|
|
Rollup of 8 pull requests
Successful merges:
- #136439 (Misc. `rustc_codegen_ssa` cleanups 🧹)
- #136543 (intrinsics: unify rint, roundeven, nearbyint in a single round_ties_even intrinsic)
- #136637 (Add binary_format to rustc target specs)
- #137099 (Fix rustdoc test directives that were accidentally ignored 🧐)
- #137297 (Update `compiler-builtins` to 0.1.147)
- #137451 (FIx `sym` -> `syn` typo in tail-expr-drop-order type opt-out)
- #137452 (bootstrap: add module docs for core:metadata)
- #137483 (rename sub_ptr to offset_from_unsigned)
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
avoid `compiler_for` for dist tools and force the current compiler
Using `compiler_for` in dist steps was causing to install stage1 tools into the dist tarballs, which doesn't match with the stage2 compiler.
Fixes https://github.com/rust-lang/rust/issues/137469
|
|
rename sub_ptr to offset_from_unsigned
i also made `byte_sub_ptr` `byte_offset_from_unsigned`
fixes #137121
tracking issue #95892
|
|
Shourya742:2025-02-23-add-module-level-doc-for-core-metadata, r=Kobzol
bootstrap: add module docs for core:metadata
Add module doc for bootstrap:core:metadata
|
|
FIx `sym` -> `syn` typo in tail-expr-drop-order type opt-out
The #131326 PR attempts to reduce some false positives for the `tail_expr_drop_order` lint by hard-coding some common ecosystem crate names. Specifically, I believe it attempts to opt out the drop impls from `syn` which only exist as optimizations.
However, this was typo'd like "sym", which is a crate that has been [yanked](https://crates.io/crates/sym) (lol). This PR fixes that.
cc `@dingxiangfei2009` `@nikomatsakis` -- did I mistake this? Was this meant to be a different crate?
`@bors` rollup
|
|
Update `compiler-builtins` to 0.1.147
Removes an ABI hack that used `<2 x i64>` to return `i128` in `xmm0` on Windows [1].
[1]: https://github.com/rust-lang/compiler-builtins/pull/759
Link: https://github.com/rust-lang/rust/issues/116558
Link: https://github.com/rust-lang/compiler-builtins/issues/758
try-job: x86_64-mingw-1
try-job: x86_64-mingw-2
|
|
r=fmease
Fix rustdoc test directives that were accidentally ignored 🧐
Replace "// `@"` with "//@ ", and fix the tests so they actually pass, after directives are checked.
~~Only the first commit is mandatory, other two are small drive-bys.~~
|
|
Add binary_format to rustc target specs
Added binary format field to `TargetOptions`
Fixes #135724
r? `@Noratrieb`
|
|
intrinsics: unify rint, roundeven, nearbyint in a single round_ties_even intrinsic
LLVM has three intrinsics here that all do the same thing (when used in the default FP environment). There's no reason Rust needs to copy that historically-grown mess -- let's just have one intrinsic and leave it up to the LLVM backend to decide how to lower that.
Suggested by `@hanna-kruppe` in https://github.com/rust-lang/rust/issues/136459; Cc `@tgross35`
try-job: test-various
|
|
Misc. `rustc_codegen_ssa` cleanups 🧹
Just a bunch of stuff I found while reading the crate's code.
Each commit can stand on its own.
Maybe r? `@Noratrieb` because I saw you did some similar cleanups on these files a while ago? (feel free to re-assign, I'm just guessing)
|
|
Remove `limit` crate in favor `usize`
|
|
|
|
|
|
vectorcall ABI: require SSE2
According to the official docs at https://learn.microsoft.com/en-us/cpp/cpp/vectorcall, SSE2 is required for this ABI. Add a check that enforces this.
I put this together with the other checks ensuring the target features required for a function are present... however, since the ABI is known pre-monomorphization, it would be possible to do this check earlier, which would have the advantage of checking even in `cargo check`. It would have the disadvantage of spreading this code in yet more places.
The first commit just does a little refactoring of the mono-time ABI check to make it easier to add the new check.
Cc `@workingjubilee`
try-job: dist-i586-gnu-i586-i686-musl
|
|
Don't filter out private items when completing paths in the same crate. Instead respect the `privateEditable` setting.
Fixes #9850
|
|
Signed-off-by: onur-ozkan <work@onurozkan.dev>
|
|
Signed-off-by: onur-ozkan <work@onurozkan.dev>
|
|
Parser inline test codegen panics and/or does not run
|
|
Master bootstrap update
https://forge.rust-lang.org/release/process.html#master-bootstrap-update-tuesday
r? `@Mark-Simulacrum`
|
|
|
|
When running `cargo codegen` the `crates/parser/test_data/generated/runner.rs` file is only updated when some file in `crates/parser/test_data/inline` changes. However this is not sufficient in all cases
|
|
When running `cargo codegen` the cwd="rust-analyzer" however when running `cargo test` the cwd="rust-analyzer/xtask" which makes the codegen panic
|
|
Rollup of 9 pull requests
Successful merges:
- #135354 ([Debuginfo] Add MSVC Synthetic and Summary providers to LLDB)
- #136826 (Replace mem::zeroed with mem::MaybeUninit::uninit for large struct in Unix)
- #137194 (More const {} init in thread_local)
- #137334 (Greatly simplify lifetime captures in edition 2024)
- #137382 (bootstrap: add doc for vendor build step)
- #137423 (Improve a bit HIR pretty printer)
- #137435 (Fix "missing match arm body" suggestion involving `!`)
- #137448 (Fix bugs due to unhandled `ControlFlow` in compiler)
- #137458 (Fix missing self subst when rendering `impl Fn*<T>` with no output type)
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
Fix missing self subst when rendering `impl Fn*<T>` with no output type
r? `@fmease` or reassign
Fixes #133597
cc #137456
|
|
Fix bugs due to unhandled `ControlFlow` in compiler
Well, one bug and one nit.
|
|
Fix "missing match arm body" suggestion involving `!`
Include the match arm guard in the gated span, so that the suggestion to add a body is correct instead of inserting the body before the guard.
Make the suggestion verbose.
```
error: `match` arm with no body
--> $DIR/feature-gate-never_patterns.rs:43:9
|
LL | Some(_) if false,
| ^^^^^^^^^^^^^^^^
|
help: add a body after the pattern
|
LL | Some(_) if false => { todo!() },
| ++++++++++++++
```
r? `@compiler-errors`
|
|
Improve a bit HIR pretty printer
This PR improve (a bit) the HIR pretty printer.
It does so by:
- Not printing elided lifetimes (those are not expressible in surface Rust anyway)
- And by rendering implicit self with the shorthand syntax
I also tried fixing some indentation and other things but gave up for now.
Best reviewed commit by commit.
|