Commit graph

17866 commits

Author SHA1 Message Date
Ryo Yoshida
10b5fd1431
Minor refactoring
- use `str::parse()` rather than `FromStr::from_str()`
- use `iter::once()` instead of constructing `Vec` for a single element
2023-07-27 16:30:57 +09:00
bors
99718d0c8b Auto merge of #15303 - oxalica:fix/byte-escape-highlight, r=lowr
Fix highlighting of byte escape sequences

Currently non-UTF8 escape sequences in byte strings and any escape sequences in byte literals are ignored.
2023-07-22 20:25:40 +00:00
oxalica
51b35ccb1b
Add comments for why skip highlighting for invalid char/byte literals 2023-07-23 04:24:35 +08:00
1Kinoti
65823b0c74 limit change_visibility assist to applicable items 2023-07-22 17:16:51 +03:00
bors
a317fa865c Auto merge of #15325 - HKalbasi:mir, r=flodiebold
Normalize expected ty in call arguments

fix #15321

I'm not sure if we should do this, or add a normalize in the beginning of `infer_expr_inner`, or somewhere else. r? `@lowr`
2023-07-22 08:14:06 +00:00
hkalbasi
b7d91ca5b2 Normalize expected ty in call arguments 2023-07-22 01:06:58 +03:30
bors
899dd84b4d Auto merge of #15323 - lowr:patch/dep-kind-no-alloc, r=lnicola
internal: optimize `DepKindInfo` -> `DepKind` conversion

We don't need to allocate a `Vec`, nor do we need sorting.
2023-07-21 10:49:45 +00:00
Ryo Yoshida
dfb32cdf10
Optimize DepKindInfo -> DepKind conversion
We don't need to allocate a `Vec`, nor do we need sorting.
2023-07-21 17:10:42 +09:00
bors
59d35d24a7 Auto merge of #15320 - lowr:fix/incorrect-name-case-for-inner-items, r=HKalbasi
Report `incorrect-ident-case` for inner items

Fixes #15319

Although we have been collecting the diagnostics for inner items within function bodies, we were discarding them and never reported to the users. This PR makes sure that they are all reported and additionally collects the diagnostics for inner items within const bodies, static bodies, and enum variant bodies.
2023-07-21 06:41:30 +00:00
Ryo Yoshida
33b7b45f67
Report incorrect case for inner items within all bodies 2023-07-21 15:07:55 +09:00
Ryo Yoshida
b53a07835b
Report incorrect case for fn inner items 2023-07-21 15:07:49 +09:00
bors
be82869dd5 Auto merge of #15317 - HKalbasi:mir, r=HKalbasi
Lookup super traits in `is_dyn_method`
2023-07-20 12:30:45 +00:00
hkalbasi
ed8e1fd472 Lookup super traits in is_dyn_method 2023-07-20 15:43:42 +03:30
bors
6b8eb75e12 Auto merge of #15316 - HKalbasi:mir, r=HKalbasi
Pass `TraitEnvironment` into `layout_ty` and `const_eval`

We need to do either this or get rid of trait environment in `normalize_ty`. Let's go with this for now.
2023-07-20 09:39:06 +00:00
hkalbasi
eb143383c3 Pass TraitEnvironment into layout_ty and const_eval 2023-07-20 13:08:38 +03:30
Alex Kirszenberg
5187533495 Don't follow raw pointer derefs for method receiver type candidates 2023-07-19 19:48:56 +02:00
oxalica
1f35e4d3f1
Introduce invalidEscapeSequence semantic token type 2023-07-19 15:12:53 +08:00
bors
3759c41d3c Auto merge of #15287 - lowr:internal/remove-crate-vis, r=lnicola
internal: remove `crate` visibility modifier

This PR removes `crate` as a now-unaccepted experimental visibility modifier from our parser. This feature has been [unaccepted] and [removed] from rustc more than a year ago, so I don't think this removal affects anyone.

[unaccepted]: https://github.com/rust-lang/rust/issues/53120#issuecomment-1124065083
[removed]: https://github.com/rust-lang/rust/pull/97239
2023-07-18 14:03:32 +00:00
oxalica
59a3e42ac9
Fix unescaping of C string literals 2023-07-18 18:52:34 +08:00
bors
d2b7ab003c Auto merge of #15304 - HKalbasi:mir, r=HKalbasi
Use `.kind(Interner)` instead of `.data(Interner).kind`
2023-07-17 17:27:58 +00:00
hkalbasi
e64a10fc4d Use .kind(Interner) instead of .data(Interner).kind 2023-07-17 20:56:31 +03:30
oxalica
de1f766820
Fix highlighting of byte escape sequences
Currently non-UTF8 escape sequences in byte strings and any escape
sequences in byte literals are ignored.
2023-07-17 22:52:58 +08:00
bjorn3
17a6bb557e Support reading uncompressed proc macro metadata
rust-lang/rust#113695 makes the dylib metadata uncompressed for perf
reasons. This commit allows reading both the current compressed and
future uncompressed dylib metadata.
2023-07-17 13:30:19 +00:00
Laurențiu Nicola
71499fcd22 Merge remote-tracking branch 'upstream/master' into sync-from-rust 2023-07-17 16:09:39 +03:00
bors
d824511039 Auto merge of #15297 - HKalbasi:mir, r=HKalbasi
Normalize type alias in projected_ty

fix #15143
2023-07-16 21:47:00 +00:00
hkalbasi
832eb0d94c Normalize type alias in projected_ty 2023-07-17 01:16:26 +03:30
Bernardo Sulzbach
0e2c68da64
Fix rust-analzyer ssr help message 2023-07-16 12:12:33 +02:00
Красимир Беров
8f169f9642
Update flags.rs
Fixed typo in documentation comment
2023-07-16 10:27:20 +03:00
Laurențiu Nicola
467f5f418e
Revert "Handle TyAlias in projected_ty" 2023-07-16 09:34:35 +03:00
Ali Bektas
f8f19c4288 Change names to sth more presentable 2023-07-15 19:04:59 +02:00
Ali Bektas
75f06ce1fb Handle TyAlias in projected_ty 2023-07-15 18:32:21 +02:00
Ryo Yoshida
004971f3f0
Remove crate visibility modifier 2023-07-16 00:01:11 +09:00
hkalbasi
41b8b0b77d Enable cfg miri in analysis 2023-07-14 22:59:46 +03:30
bors
8e5f944317 Auto merge of #15282 - HKalbasi:mir, r=HKalbasi
Give real discriminant_type to chalk
2023-07-14 16:46:35 +00:00
hkalbasi
50559118fb Give real discriminant_type to chalk 2023-07-14 20:15:18 +03:30
hkalbasi
5208bf8f55 implement type_name intrinsic 2023-07-14 16:52:36 +03:30
bors
f6ae0c11ac Auto merge of #15270 - ChristianSchott:patch-1, r=HKalbasi
Make fields of mir::Terminator public

When trying to use the RA crate, I am unable to access the fields in `hir_def::mir::Terminator`.
I don't see any reason, why these should be private, especially as the fields of `hir_def::mir::Statement` are `pub`.

I am not sure if the fields in `hir_def::mir::SwitchTargets` should be made `pub` too, but at least they are read-accessible via some public methods..

Sorry if I missed something, this is my first PR.
2023-07-13 07:54:44 +00:00
bors
132ba2cf77 Auto merge of #15248 - Veykril:eager, r=Veykril
Fix eager token mapping panics
2023-07-13 07:39:30 +00:00
Lukas Wirth
6a7b905c86 Fix the eager token maps by re-mapping the textranges between the input and input expansion 2023-07-13 09:22:38 +02:00
bors
d16d5fcf68 Auto merge of #15268 - HKalbasi:mir, r=HKalbasi
Add write_bytes and ctlz intrinsics
2023-07-12 23:19:30 +00:00
bors
642420fb60 Auto merge of #15267 - lowr:patch/exceeding-exec-limit-is-slow, r=lnicola
Mark test for MIR execution limit as slow test

The test for MIR execution limit accounts for ~2/3 of total execution time of non-slow hir-ty tests. It significantly slows down edit-and-run-test type of workflow. Can we mark it as a slow test?
2023-07-12 23:04:16 +00:00
bors
f45fdd9123 Auto merge of #15260 - DropDemBits:structured-snippet-migrate-3, r=lowr
internal: Migrate assists to the structured snippet API, part 3

Continuing from #15231

Migrates the following assists:
- `add_missing_match_arms`
- `fix_visibility`
- `promote_local_to_const`

The `add_missing_match_arms` changes are best reviewed commit-by-commit since they're relatively big changes compared to the rest of the commits.
2023-07-12 22:05:30 +00:00
ChristianSchott
8f612b5352
Make fields of mir::Terminator public 2023-07-12 09:35:44 +02:00
hkalbasi
274e8301c1 Add write_bytes and ctlz intrinsics 2023-07-12 01:14:49 +03:30
DropDemBits
a9889a0f1c
fix the rest of the nits 2023-07-11 17:32:12 -04:00
DropDemBits
f9a144f0ed
Hoist out make::name_ref
`clone_for_update` is relatively cheap in comparison, since making a
node require parsing an entire source text

Adds a test to make sure that it doesn't crash when multiple uses are
present.
2023-07-11 17:28:17 -04:00
Ryo Yoshida
0312c6c321
Mark test for MIR execution limit as slow test 2023-07-11 23:36:47 +09:00
Lukas Wirth
2366c16bf9 Fix eager token mapping panics 2023-07-11 13:54:28 +02:00
DropDemBits
99abcdc1eb
format let-else in promote_local_to_const 2023-07-10 17:49:27 -04:00
DropDemBits
11debaf61a
Migrate fix_visibility to mutable ast 2023-07-10 17:39:55 -04:00