rust/compiler
bors ab5b9aecb9 Auto merge of #80651 - GroteGnoom:issue-78123-fix, r=Nadrieril
Add note to non-exhaustive match on reference to empty

Rust prints "type `&A` is non-empty" even is A is empty.
This is the intended behavior, but can be confusing.
This commit adds a note to non-exhaustive pattern errors if they are a
reference to something uninhabited.

I did not add tests to check that the note is not shown for
non-references or inhabited references, because this is already done
in other tests.

Maybe the added test is superfluous, because
`always-inhabited-union-ref` already checks for this case.

This does not handle &&Void or &&&void etc. I could add those as special
cases as well and ignore people who need quadruple
references.

Fixes #78123
2021-01-04 13:23:08 +00:00
..
rustc
rustc_apfloat
rustc_arena stabilize min_const_generics 2020-12-26 18:24:10 +01:00
rustc_ast reduce borrowing and (de)referencing around match patterns (clippy::match_ref_pats) 2021-01-02 20:09:17 +01:00
rustc_ast_lowering first pass at default values for const generics 2021-01-01 10:55:10 +01:00
rustc_ast_passes reduce borrowing and (de)referencing around match patterns (clippy::match_ref_pats) 2021-01-02 20:09:17 +01:00
rustc_ast_pretty const_generics_defaults: don't use todo 2021-01-01 22:35:56 +01:00
rustc_attr Get rid of clean::Deprecation 2020-12-14 22:00:46 -05:00
rustc_builtin_macros reduce borrowing and (de)referencing around match patterns (clippy::match_ref_pats) 2021-01-02 20:09:17 +01:00
rustc_codegen_cranelift Merge commit 'dbee13661efa269cb4cd57bb4c6b99a19732b484' into sync_cg_clif-2020-12-27 2020-12-27 10:30:38 +01:00
rustc_codegen_llvm Rollup merge of #80323 - camelid:codegen-base-docs, r=nagisa 2020-12-31 22:20:43 +01:00
rustc_codegen_ssa Merge remote-tracking branch 'origin/master' into frewsxcv-san 2020-12-31 23:27:33 -05:00
rustc_data_structures rustc_serialize: have read_raw_bytes take MaybeUninit<u8> slice 2021-01-01 22:49:16 -08:00
rustc_driver where possible, pass slices instead of &Vec or &String (clippy::ptr_arg) 2020-12-30 13:11:52 +01:00
rustc_error_codes Reinstate the error-code error over the feature gate error 2021-01-01 16:59:12 +00:00
rustc_errors Switch compiler/ to intra-doc links 2020-12-18 15:22:51 -05:00
rustc_expand Auto merge of #80459 - mark-i-m:or-pat-reg, r=petrochenkov 2020-12-31 14:52:26 +00:00
rustc_feature Allow references to interior mutable data behind a feature gate 2021-01-01 16:59:12 +00:00
rustc_fs_util
rustc_graphviz
rustc_hir reduce borrowing and (de)referencing around match patterns (clippy::match_ref_pats) 2021-01-02 20:09:17 +01:00
rustc_hir_pretty reduce borrowing and (de)referencing around match patterns (clippy::match_ref_pats) 2021-01-02 20:09:17 +01:00
rustc_incremental reduce borrowing and (de)referencing around match patterns (clippy::match_ref_pats) 2021-01-02 20:09:17 +01:00
rustc_index Switch compiler/ to intra-doc links 2020-12-18 15:22:51 -05:00
rustc_infer reduce borrowing and (de)referencing around match patterns (clippy::match_ref_pats) 2021-01-02 20:09:17 +01:00
rustc_interface Remove compile-fail test suite 2020-12-29 23:39:56 +03:00
rustc_lexer Fix typo 2020-12-18 22:13:25 +09:00
rustc_lint Rollup merge of #80628 - matthiaskrgr:match_ref_pats, r=varkor 2021-01-03 17:09:11 +01:00
rustc_lint_defs improve unconditional_panic description 2021-01-01 15:00:27 +01:00
rustc_llvm llvm: update ffi bindings for split dwarf 2020-12-16 10:31:42 +00:00
rustc_macros rustc_serialize: specialize opaque encoding of some u8 sequences 2021-01-01 22:49:14 -08:00
rustc_metadata Auto merge of #80610 - Aaron1011:unhash-def-path-hash, r=varkor 2021-01-04 07:49:01 +00:00
rustc_middle Auto merge of #80610 - Aaron1011:unhash-def-path-hash, r=varkor 2021-01-04 07:49:01 +00:00
rustc_mir Auto merge of #80418 - oli-obk:this_could_have_been_so_simple, r=RalfJung 2021-01-04 02:15:57 +00:00
rustc_mir_build Add note to non-exhaustive match on reference to empty 2021-01-03 19:05:23 +01:00
rustc_parse make const_generics_defaults use the unstable syntax mechanism 2021-01-01 11:01:01 +01:00
rustc_parse_format
rustc_passes reduce borrowing and (de)referencing around match patterns (clippy::match_ref_pats) 2021-01-02 20:09:17 +01:00
rustc_plugin_impl
rustc_privacy Rollup merge of #80495 - jyn514:rename-empty, r=petrochenkov 2020-12-30 20:56:58 +00:00
rustc_query_system rustc_query_system: avoid race condition when using edge_count 2020-12-22 14:12:57 -08:00
rustc_resolve adjust const generics defaults FIXMEs to the new feature gate 2021-01-01 11:01:01 +01:00
rustc_save_analysis reduce borrowing and (de)referencing around match patterns (clippy::match_ref_pats) 2021-01-02 20:09:17 +01:00
rustc_serialize rustc_serialize: specialize opaque decoding of some u8 sequences 2021-01-01 22:49:16 -08:00
rustc_session Auto merge of #79883 - frewsxcv:frewsxcv-san, r=shepmaster 2021-01-02 06:58:59 +00:00
rustc_span Allow references to interior mutable data behind a feature gate 2021-01-01 16:59:12 +00:00
rustc_symbol_mangling Make BoundRegion have a kind of BoungRegionKind 2020-12-18 15:27:28 -05:00
rustc_target Add support for target aliases 2020-12-16 10:41:07 +01:00
rustc_trait_selection reduce borrowing and (de)referencing around match patterns (clippy::match_ref_pats) 2021-01-02 20:09:17 +01:00
rustc_traits fix: small typo error in chalk/mod.rs 2020-12-27 03:22:23 +01:00
rustc_ty_utils
rustc_type_ir Fix typo in DebruijnIndex documentation 2020-12-12 16:13:06 +01:00
rustc_typeck reduce borrowing and (de)referencing around match patterns (clippy::match_ref_pats) 2021-01-02 20:09:17 +01:00