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
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
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
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
rustc_error_codes Reinstate the error-code error over the feature gate error 2021-01-01 16:59:12 +00:00
rustc_errors
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
rustc_infer reduce borrowing and (de)referencing around match patterns (clippy::match_ref_pats) 2021-01-02 20:09:17 +01:00
rustc_interface
rustc_lexer
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
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_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
rustc_target
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
rustc_ty_utils
rustc_type_ir
rustc_typeck reduce borrowing and (de)referencing around match patterns (clippy::match_ref_pats) 2021-01-02 20:09:17 +01:00