Commit graph

30209 commits

Author SHA1 Message Date
bors
7e90264b0b Auto merge of #122616 - Jules-Bertholet:casemappingiter-layout, r=Nilstrieb
Optimize `core::char::CaseMappingIter`

Godbolt says this saves a few instructions…

`@rustbot` label T-libs A-layout C-optimization
2024-03-29 07:02:56 +00:00
Josh McKinney
032fca9572
Make cargo run always available for binaries
Previously, items for `cargo test` and `cargo check` would appear as in
the `Select Runnable` quick pick that appears when running
`rust-analyzer: Run`, but `run` would only appear as a runnable if a
`main`` function was selected in the editor. This change adds `cargo
run` as an always available runnable command for binary packages.

This makes it easier to develop cli / tui applications, as now users can
run application from anywhere in their codebase.
2024-03-28 20:42:44 -07:00
bors
a8b7acf22f Auto merge of #16971 - HKalbasi:test-explorer, r=HKalbasi
Resolve tests per file instead of per crate in test explorer

Fix part of #16827
2024-03-29 02:06:22 +00:00
hkalbasi
beec6914c8 Resolve tests per file instead of per crate in test explorer 2024-03-29 05:34:43 +03:30
bors
ab10eea62e Auto merge of #16967 - dfireBird:fix-16963, r=lnicola
fix: ADT hover considering only type or const len not lifetimes

I feel like test doesn't do much. Please suggest if I should improve it?

Fixes #16963
2024-03-28 16:45:45 +00:00
dfireBird
34a8cd6a7a
fix ADT hover considering only type or const len not lifetimes 2024-03-28 21:53:22 +05:30
bors
899db83128 Auto merge of #16957 - poliorcetics:ab/push-tlzsqmqqurxs, r=lnicola
fix: check for client support of relative glob patterns before using them

Fixes #16955
2024-03-28 08:57:29 +00:00
bors
29a8e65bbe Auto merge of #16965 - roife:use-lldb-for-cpp-ext, r=lnicola
fix: use lldb when debugging with C++ extension on MacOS

See https://github.com/rust-lang/rust-analyzer/issues/16901#issuecomment-2024486941

This PR resolves the issue of being unable to debug using the C++ extension on macOS. By using special configurations for the `MIMode` on macOS, it enables the C++ extension to connect to lldb when debugging (without affecting other platforms).
2024-03-28 06:49:49 +00:00
roife
3521089985 fix: use lldb when debugging with C++ extension 2024-03-28 14:38:23 +08:00
bors
4bf521df35 Auto merge of #16964 - lnicola:debugger-order, r=roife
fix: Revert debug extension priorities

Close #16901
2024-03-28 06:08:47 +00:00
Laurențiu Nicola
662ea73e4e Revert debug extension priorities 2024-03-28 07:58:36 +02:00
bors
b1c0993d98 Auto merge of #122205 - onur-ozkan:incorrect-sysroot-for-target, r=albertlarsan68
ensure std is prepared for cross-targets

Previously, doing `x test compiler/*` would result in build failures due to missing std. This PR fixes that.
2024-03-27 22:22:42 +00:00
Wilfred Hughes
0f72ab1dd3 Define a separate type for crate indexes in a rust-project.json 2024-03-27 14:18:52 -07:00
bors
ad51a17c62 Auto merge of #16960 - dfireBird:fix-16958, r=lnicola
fix: lifetime length are not added in count of params in highlight

I found these two instances easily but I wonder how many such instances are there.

Fixes #16958
2024-03-27 18:05:45 +00:00
dfireBird
20b12c2bac
fix lifetime length are not added in count of params in highlight 2024-03-27 23:21:17 +05:30
Wilfred Hughes
5e370b1cb8 Use crate root to choose relevant workspace for flycheck 2024-03-27 10:33:20 -07:00
Alexis (Poliorcetics) Bourget
8f9a58c73d
fix: check for client support of relative glob patterns before using them 2024-03-27 03:21:34 +01:00
Alexis (Poliorcetics) Bourget
174af88e76
feat: Add rust-analyzer.cargo.allTargets to configure passing --all-targets to cargo invocations 2024-03-27 01:57:41 +01:00
bors
b622f5254e Auto merge of #118644 - madsmtm:macos-weak-linking-test, r=compiler-errors
Add test for Apple's `-weak_framework` linker argument

The [`-weak_framework`](https://developer.apple.com/library/archive/documentation/MacOSX/Conceptual/BPFrameworks/Concepts/WeakLinking.html) linker argument can sometimes be useful to reduce startup times, and to link newer frameworks while still having older deployment targets.

So I made a test to ensure that it continues to work.

Discussed in https://github.com/rust-lang/rust/issues/99427.
2024-03-26 20:22:54 +00:00
bors
4b33850c39 Auto merge of #16951 - lnicola:provenance-split-comment, r=lnicola
minor: Update comment on provenance_split

Hope I got this right `@dfireBird.`
2024-03-26 09:00:24 +00:00
Laurențiu Nicola
85947bba49 Update comment on provenance_split 2024-03-26 10:58:35 +02:00
bors
0583aaa555 Auto merge of #16805 - dfireBird:lifetime_lowering, r=Veykril
feat: Implement resolving and lowering of Lifetimes (no inference yet)
2024-03-26 07:58:43 +00:00
dfireBird
0e54e2b55a
use references in Generics iter methods 2024-03-26 13:04:54 +05:30
bors
e52bb8cddb Auto merge of #16906 - Young-Flash:limit_struct_hover_display, r=Veykril
feat: limit struct hover display nums

follow up https://github.com/rust-lang/rust-analyzer/pull/15847, https://github.com/rust-lang/rust-analyzer/pull/15938
2024-03-25 22:13:59 +00:00
bors
9b79fa2393 Auto merge of #16930 - lnicola:dist-malloc, r=Veykril
internal: Support choosing the allocator in `xtask dist`
2024-03-25 22:01:23 +00:00
bors
dacfa72f85 Auto merge of #16944 - Nadrieril:update-pat-ana, r=lnicola
Revert to the crates.io version of rustc_pattern_analysis

The API hasn't fully settled yet, and there's an extra wrinkle with `IdxContainer` which blocked the [subtree update](https://github.com/rust-lang/rust/pull/122981). Let's just keep using the crates.io version for a bit longer.

r? `@lnicola`
2024-03-25 12:17:18 +00:00
Nadrieril
1716cc8433 Revert to the crates.io version of rustc_pattern_analysis 2024-03-25 13:09:37 +01:00
Young-Flash
58013ad70d add test for struct field hover display limit 2024-03-25 19:55:19 +08:00
Young-Flash
ba8c9810aa review update 2024-03-25 19:55:19 +08:00
Young-Flash
a89e417ce5 adjust test 2024-03-25 19:55:19 +08:00
Young-Flash
1c85234bcd limit struct field hover display nums 2024-03-25 19:55:19 +08:00
Young-Flash
d81148a009 expose config for hover struct field display 2024-03-25 19:55:19 +08:00
bors
6f6b03f9de Auto merge of #16935 - Nilstrieb:dont-panic, r=HKalbasi
Handle panicking like rustc CTFE does

Instead of using `core::fmt::format` to format panic messages, which may in turn panic too and cause recursive panics and other messy things, redirect `panic_fmt` to `const_panic_fmt` like CTFE, which in turn goes to `panic_display` and does the things normally. See the tests for the full call stack.

The tests don't work yet, I probably missed something in minicore.

fixes #16907 in my local testing, I also need to add a test for it
2024-03-24 18:17:36 +00:00
bors
3dfd4c1f4c Auto merge of #16915 - 6d7a:master, r=HKalbasi
fix: Prevent stack overflow in recursive const types

In the evaluation of const values of recursive types certain declarations could cause an endless call-loop within the interpreter (hir-ty’s create_memory_map), which would lead to a stack overflow.
This commit adds a check that prevents values that contain an address in their value (such as TyKind::Ref) from being allocated at the address they contain.
The commit also adds a test for this edge case.
2024-03-24 15:05:14 +00:00
Nilstrieb
2dfe7de8b6 Handle panicking like rustc CTFE does
Instead of using `core::fmt::format` to format panic messages, which may in turn
panic too and cause recursive panics and other messy things, redirect
`panic_fmt` to `const_panic_fmt` like CTFE, which in turn goes to
`panic_display` and does the things normally. See the tests for the full
call stack.
2024-03-24 15:40:26 +01:00
Wyatt Herkamp
e3f9a0afe1 Fixed cursor being at end 2024-03-24 10:38:03 -04:00
Wyatt Herkamp
ecac8e3514 Format and codegen for attr 2024-03-24 10:37:41 -04:00
Wyatt Herkamp
1141259a23 Init Wrap/Unwrap cfg_attr 2024-03-24 09:51:08 -04:00
6d7a
142ef764ee fix: Check stack depth to prevent stack overflows in create_memory_map 2024-03-24 10:19:25 +01:00
bors
6520f766dd Auto merge of #3385 - Zoxc:read-types, r=RalfJung
Report retags as distinct from real memory accesses for data races

This changes the error reporting for data races such that reference invariants are no longer reported as real read and writes.

Before:
```
Data race detected between (1) non-atomic write on thread `unnamed-6` and (2) non-atomic read on thread `unnamed-5` at alloc1034971+0x10c. (2) just happened here
```

After:
```
Data race detected between (1) non-atomic write on thread `unnamed-8` and (2) shared reference invariant on thread `unnamed-6` at alloc1018329+0x190. (2) just happened here
```

Non-atomic read accesses from the *other* thread don't have this information tracked so those are called `some potential non-atomic read access` here.
2024-03-23 15:37:02 +00:00
bors
5ab6687601 Auto merge of #122582 - scottmcm:swap-intrinsic-v2, r=oli-obk
Let codegen decide when to `mem::swap` with immediates

Making `libcore` decide this is silly; the backend has so much better information about when it's a good idea.

Thus this PR introduces a new `typed_swap` intrinsic with a fallback body, and replaces that fallback implementation when swapping immediates or scalar pairs.

r? oli-obk

Replaces #111744, and means we'll never need more libs PRs like #111803 or #107140
2024-03-23 13:57:55 +00:00
Laurențiu Nicola
f6b9cff105 Support choosing the allocator in xtask dist 2024-03-23 11:48:21 +02:00
Laurențiu Nicola
84d38c7e94 Move xtask flags around outide the generated section 2024-03-23 11:35:32 +02:00
bors
e265e3d518 Auto merge of #16929 - lnicola:bump-release-actions, r=lnicola
internal: Bump release actions and Node
2024-03-23 08:09:18 +00:00
Laurențiu Nicola
869efe23c0 Bump actions/checkout, actions/setup-node and node in release workflow 2024-03-23 09:54:50 +02:00
bors
903158268a Auto merge of #16928 - lnicola:rocky-8, r=lnicola
internal: Build x86_64-unknown-linux-gnu releases on Rocky Linux 8
2024-03-23 07:37:54 +00:00
Laurențiu Nicola
6ee3f66386 Build x86_64-unknown-linux-gnu on Rocky Linux 8 2024-03-23 08:48:31 +02:00
bors
6e54d41d5a Auto merge of #16927 - Sculas:fix/funclike-rename, r=Veykril
fix: Rename `func_like` to `FuncLike`

Should fix #16926. Please check the issue for more information.
2024-03-23 05:39:28 +00:00
bors
227707e528 Auto merge of #119552 - krtab:dead_code_priv_mod_pub_field, r=cjgillot,saethlin
Replace visibility test with reachability test in dead code detection

Fixes https://github.com/rust-lang/rust/issues/119545

Also included is a fix for an error now flagged by the lint
2024-03-23 00:37:05 +00:00
Sculas
966d387afa
fix: Rename func_like to FuncLike
Fixes rust-lang/rust-analyzer#16926
2024-03-22 23:03:44 +01:00