Nadrieril
a2dcb3a6d9
Disallow an arm without a body (except for never patterns)
...
Parsing now accepts a match arm without a body, so we must make sure to
only accept that if the pattern is a never pattern.
2023-12-03 12:25:46 +01:00
Nadrieril
0bfebc6105
Detect attempts to expand a macro to a match arm again
...
Because a macro invocation can expand to a never pattern, we can't rule
out a `arm!(),` arm at parse time. Instead we detect that case at
expansion time, if the macro tries to output a pattern followed by `=>`.
2023-12-03 12:25:46 +01:00
Nadrieril
80bdcbf50a
Parse a pattern with no arm
2023-12-03 12:25:46 +01:00
Ralf Jung
ef15a8182b
codegen, miri: fix computing the offset of an unsized field in a packed struct
2023-12-03 08:26:51 +01:00
bors
225e36cff9
Auto merge of #118542 - chenyukang:yukang-fix-parser-ice-118531, r=cjgillot
...
Fix parser ICE from attrs
Fixes #118531 ,
Fixes #118530 .
2023-12-03 03:05:17 +00:00
Zalathar
eb2d4cb541
coverage: Skip spans that can't be un-expanded back to the function body
...
When we extract coverage spans from MIR, we try to "un-expand" them back to
spans that are inside the function's body span.
In cases where that doesn't succeed, the current code just swaps in the entire
body span instead. But that tends to result in coverage spans that are
completely unrelated to the control flow of the affected code, so it's better
to just discard those spans.
2023-12-03 12:35:33 +11:00
sjwang05
a2171feb33
Fix ICE when suggesting closures for non-fn-like defs
2023-12-02 15:03:24 -08:00
Camille GILLOT
30a95b7c0a
FileCheck while_let_loops.
2023-12-02 21:10:04 +00:00
Camille GILLOT
c00068e49f
FileCheck tuple_literal_propagation.
2023-12-02 21:08:55 +00:00
Camille GILLOT
87522d0007
FileCheck return_place.
2023-12-02 21:08:12 +00:00
Camille GILLOT
a12027e128
FileCheck switch_int.
2023-12-02 21:06:48 +00:00
Camille GILLOT
19767eb7a6
FileCheck slice_len.
2023-12-02 21:06:38 +00:00
Camille GILLOT
3e90c1b434
FileCheck scalar_literal_propagation.
2023-12-02 21:02:42 +00:00
Camille GILLOT
f3743aec51
FileCheck repeat.
2023-12-02 21:01:48 +00:00
Camille GILLOT
343ef6a9cb
FileCheck reify_fn_ptr.
2023-12-02 21:00:59 +00:00
Camille GILLOT
6baec3ccc2
FileCheck ref_deref.
2023-12-02 20:58:45 +00:00
Camille GILLOT
c8c9207e4c
FileCheck read_immutable_static.
2023-12-02 20:56:26 +00:00
Camille GILLOT
45dd5d6bf3
FileCheck mutable_variable_unprop_assign.
2023-12-02 20:54:56 +00:00
Camille GILLOT
6a8eea8f5b
FileCheck mutable_variable_aggregate_partial_read.
2023-12-02 20:51:23 +00:00
Camille GILLOT
d91bb5074e
FileCheck mutable_variable_no_prop.
2023-12-02 20:50:00 +00:00
Camille GILLOT
3e169abc1b
FileCheck mutable_variable_aggregate_mut_ref.
2023-12-02 20:49:50 +00:00
Camille GILLOT
03c5ad1549
FileCheck mutable_variable_aggregate.
2023-12-02 20:49:38 +00:00
Camille GILLOT
ea9f968333
FileCheck mutable_variable.
2023-12-02 20:49:28 +00:00
Camille GILLOT
902a3e2e75
FileCheck mult_by_zero.
2023-12-02 20:39:26 +00:00
Camille GILLOT
8e9b912c4c
FileCheck issue_67019.
2023-12-02 20:38:07 +00:00
Camille GILLOT
ce9b1e23a5
FileCheck issue_66971.
2023-12-02 20:37:05 +00:00
Camille GILLOT
218d8ccf43
FileCheck inherit_overflow.
2023-12-02 20:31:27 +00:00
Camille GILLOT
6086dd6766
FileCheck indirect.
2023-12-02 20:29:47 +00:00
Camille GILLOT
bf5d114da8
FileCheck discriminant.
2023-12-02 20:28:33 +00:00
Camille GILLOT
043d29b58a
FileCheck and rename const_prop_fails_gracefully.
2023-12-02 20:23:16 +00:00
Camille GILLOT
7f328d2a44
FileCheck checked_add.
2023-12-02 20:18:58 +00:00
Camille GILLOT
e6a1b77cd1
FileCheck cast.
2023-12-02 20:18:47 +00:00
Camille GILLOT
b8f2f63931
FileCheck boxes.
2023-12-02 20:18:21 +00:00
Camille GILLOT
3fc03948a8
FileCheck boolean_identities.
2023-12-02 20:18:14 +00:00
Camille GILLOT
e8e35c8127
FileCheck bad_op_unsafe_oob_for_slices.
2023-12-02 20:18:02 +00:00
Camille GILLOT
97f03cb898
FileCheck bad_op_mod_by_zero.
2023-12-02 20:17:49 +00:00
Camille GILLOT
0d5bc872a9
FileCheck bad_op_div_by_zero.
2023-12-02 20:17:37 +00:00
Camille GILLOT
9f01d9d1b6
FileCheck array_index.
2023-12-02 20:17:20 +00:00
Camille GILLOT
6564bac532
FileCheck aggregate.
2023-12-02 20:17:04 +00:00
Camille GILLOT
378abbc604
FileCheck address_of_pair.
2023-12-02 20:16:49 +00:00
bors
3f1e30a0a5
Auto merge of #118077 - calebzulawski:sync-portable-simd-2023-11-19, r=workingjubilee
...
Portable SIMD subtree update
Syncs nightly to the latest changes from rust-lang/portable-simd
r? `@rust-lang/libs`
2023-12-02 18:04:01 +00:00
Caleb Zulawski
c623489b9b
Add codegen test
2023-12-02 11:35:45 -05:00
Matthias Krüger
613f4ec97d
Rollup merge of #118539 - RalfJung:packed-struct-tests, r=lqd
...
move packed-struct tests into packed/ folder
We already have a bunch of other tests named `packed/packed-struct*`, no reason to have these two tests be separate.
2023-12-02 16:58:41 +01:00
Matthias Krüger
b384767b0a
Rollup merge of #118524 - celinval:smir-instance-def, r=ouz-a
...
Add more information to StableMIR Instance
Allow stable MIR users to retrieve an instance function signature, the index for a VTable instance and more information about its underlying definition.
These are needed to properly interpret function calls, either via VTable or direct calls. The `CrateDef` implementation will also allow users to emit diagnostic messages.
I also fixed a few issues that we had identified before with how we were retrieving body of things that may not have a body available.
2023-12-02 16:58:40 +01:00
Matthias Krüger
c0f37fa5cf
Rollup merge of #118514 - Enselic:ice-probe, r=cjgillot
...
rustc_hir_typeck: Fix ICE when probing for non-ASCII function alternative
Closes #118499
Apparently triggered by https://github.com/rust-lang/rust/pull/118381
2023-12-02 16:58:40 +01:00
Caleb Zulawski
20413b1947
Add test using non-power-of-two vector
2023-12-02 10:53:19 -05:00
Caleb Zulawski
329412dad3
Implement repr(packed) for repr(simd)
2023-12-02 10:53:19 -05:00
yukang
5ff428c1ff
Fix parser ICE from attrs
2023-12-02 23:47:39 +08:00
Ralf Jung
253d61714d
move packed-struct tests into packed/ folder
2023-12-02 14:48:07 +01:00
bors
4e3dc976e7
Auto merge of #117912 - GeorgeWort:master, r=petrochenkov
...
Name explicit registers in conflict register errors for inline assembly
2023-12-02 13:38:47 +00:00