Skip to content

Rollup of 13 pull requests #93119

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 40 commits into from
Jan 20, 2022
Merged
Changes from 1 commit
Commits
Show all changes
40 commits
Select commit Hold shift + click to select a range
763703c
Remove redundant check for promoteds
tmiasko Oct 11, 2021
d5a91f3
Use `IndexVec::indices` instead of reimplementing it
tmiasko Oct 11, 2021
c3e71d8
Fix a variant index and variant discriminant confusion
tmiasko Oct 11, 2021
cd626fe
Stabilize -Z print-link-args as --print link-args
joshtriplett Dec 6, 2021
371bd46
Document `--print link-args`
joshtriplett Dec 6, 2021
36a1141
Make message for &T -> &mut T transmute more accurate
5225225 Jan 9, 2022
dc1c39b
rustdoc: decouple stability and const-stability
euclio Dec 9, 2021
c280752
Help optimize out backtraces when disabled
kornelski Jan 17, 2022
a8b7116
change `ct_infer` to a delay_span_bug
lcnr Jan 5, 2022
621e60a
remove unnecessary fixme
lcnr Jan 5, 2022
b2d8f0c
generic_arg_infer: placeholder in signature err
lcnr Jan 5, 2022
cbc6d35
privacy: update `visit_infer`
lcnr Jan 10, 2022
217458b
intra-doc links
lcnr Jan 17, 2022
29a2d6b
intra-doc: Use the impl's assoc item where possible
camelid Jan 8, 2022
2938be6
Correctly handle starts in block doc comments
GuillaumeGomez Jan 18, 2022
06b00ad
Add test for block doc comments
GuillaumeGomez Jan 18, 2022
5ab67bf
Fix CVE-2022-21658 for Windows
ChrisDenton Jan 6, 2022
54e22eb
Fix CVE-2022-21658 for UNIX-like
hkratz Dec 18, 2021
cb748a2
Fix CVE-2022-21658 for WASI
alexcrichton Jan 4, 2022
32080ad
Update std::fs::remove_dir_all documentation
pietroalbini Jan 19, 2022
5c96dcf
Add MaybeUninit::as_bytes
Amanieu Oct 10, 2021
6487845
Properly account for binders in get_impl_future_output_ty
tmandry Dec 21, 2021
5c15ad7
NiceRegionError: Use written return type for async fn
tmandry Nov 20, 2021
698631e
Simplify error reporting code, remove await point wording
tmandry Dec 10, 2021
152e888
Rustdoc mobile: put out-of-band on its own line
jsha Jan 13, 2022
3b10045
:arrow_up: rust-analyzer
lnicola Jan 20, 2022
0a6c9ad
Fix compilation for a few tier 2 targets
hkratz Jan 20, 2022
98cb338
Rollup merge of #89747 - Amanieu:maybeuninit_bytes, r=m-ou-se
matthiaskrgr Jan 20, 2022
d188287
Rollup merge of #89764 - tmiasko:uninhabited-enums, r=wesleywiser
matthiaskrgr Jan 20, 2022
02379e9
Rollup merge of #91606 - joshtriplett:stabilize-print-link-args, r=pn…
matthiaskrgr Jan 20, 2022
405cf20
Rollup merge of #91694 - euclio:stability-improvements, r=GuillaumeGomez
matthiaskrgr Jan 20, 2022
413f490
Rollup merge of #92183 - tmandry:issue-74256, r=estebank
matthiaskrgr Jan 20, 2022
db1253f
Rollup merge of #92582 - lcnr:generic-arg-infer, r=BoxyUwU
matthiaskrgr Jan 20, 2022
1839829
Rollup merge of #92680 - camelid:assoc-item-cleanup, r=petrochenkov
matthiaskrgr Jan 20, 2022
5c10dbd
Rollup merge of #92704 - 5225225:std_mem_transmute_ref_t_mut_t, r=mic…
matthiaskrgr Jan 20, 2022
ed3bf67
Rollup merge of #92861 - jsha:mobile-column-flex, r=GuillaumeGomez
matthiaskrgr Jan 20, 2022
1cb57e2
Rollup merge of #92992 - kornelski:backtraceopt, r=Mark-Simulacrum
matthiaskrgr Jan 20, 2022
6c627d2
Rollup merge of #93038 - GuillaumeGomez:block-doc-comments, r=notriddle
matthiaskrgr Jan 20, 2022
d893b0a
Rollup merge of #93108 - lnicola:rust-analyzer-2022-01-20, r=lnicola
matthiaskrgr Jan 20, 2022
dbc9749
Rollup merge of #93112 - pietroalbini:pa-cve-2022-21658-nightly, r=pi…
matthiaskrgr Jan 20, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Fix a variant index and variant discriminant confusion
Previously for enums using the `Variants::Single` layout, the variant
index was being confused with its discriminant. For example, in the case
of `enum E { A = 1 }`.

Use `discriminant_for_variant` to avoid the issue.
  • Loading branch information
tmiasko committed Nov 20, 2021
commit c3e71d83cdeb0ccaf6584255313380fd166b1096
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,10 @@ fn variant_discriminants<'tcx>(
match &layout.variants {
Variants::Single { index } => {
let mut res = FxHashSet::default();
res.insert(index.as_u32() as u128);
res.insert(
ty.discriminant_for_variant(tcx, *index)
.map_or(index.as_u32() as u128, |discr| discr.val),
);
res
}
Variants::Multiple { variants, .. } => variants
Expand Down