rust/compiler
Rich Kadel eb963ffe45 Fixes reported bugs in Rust Coverage
Fixes: #79569

Fixes: #79566
Fixes: #79565

For the first issue (#79569), I got hit a `debug_assert!()` before
encountering the reported error message (because I have `debug = true`
enabled in my config.toml).

The assertion showed me that some `SwitchInt`s can have more than one
target pointing to the same `BasicBlock`.

I had thought that was invalid, but since it seems to be possible, I'm
allowing this now.

I added a new test for this.

----

In the last two cases above, both tests (intentionally) fail to compile,
but the `InstrumentCoverage` pass is invoked anyway.

The MIR starts with an `Unreachable` `BasicBlock`, which I hadn't
encountered before. (I had assumed the `InstrumentCoverage` pass
would only be invoked with MIRs from successful compilations.)

I don't have test infrastructure set up to test coverage on files that
fail to compile, so I didn't add a new test.
2020-12-11 21:40:22 -08:00
..
rustc
rustc_apfloat
rustc_arena
rustc_ast Accept arbitrary expressions in key-value attributes at parse time 2020-12-09 21:37:32 +03:00
rustc_ast_lowering Retain assembly operands span when lowering AST to HIR 2020-12-06 20:48:08 +01:00
rustc_ast_passes Rollup merge of #79851 - camelid:better-error-for-default-fn, r=davidtwco 2020-12-10 21:33:10 -08:00
rustc_ast_pretty
rustc_attr Created NestedMetaItem::name_value_literal_span method 2020-12-01 16:26:51 +01:00
rustc_builtin_macros Properly handle attributes on statements 2020-11-26 17:08:35 -05:00
rustc_codegen_cranelift Auto merge of #77611 - oli-obk:atomic_miri_leakage, r=nagisa 2020-12-09 19:53:23 +00:00
rustc_codegen_llvm Fixes to Rust coverage 2020-12-07 17:56:19 -08:00
rustc_codegen_ssa Auto merge of #79801 - eddyb:scalar-transmute, r=nagisa 2020-12-10 12:55:12 +00:00
rustc_data_structures
rustc_driver Fix unknown-crate when using self-profile with rustdoc 2020-12-01 12:54:03 -05:00
rustc_error_codes Rollup merge of #79639 - sasurau4:feature/add-long-explanation-E0212, r=GuillaumeGomez 2020-12-10 21:33:04 -08:00
rustc_errors
rustc_expand Rollup merge of #79678 - jyn514:THE-PAPERCLIP-COMETH, r=varkor 2020-12-04 03:30:39 +01:00
rustc_feature Accept arbitrary expressions in key-value attributes at parse time 2020-12-09 21:37:32 +03:00
rustc_fs_util
rustc_graphviz
rustc_hir Retain assembly operands span when lowering AST to HIR 2020-12-06 20:48:08 +01:00
rustc_hir_pretty Retain assembly operands span when lowering AST to HIR 2020-12-06 20:48:08 +01:00
rustc_incremental Auto merge of #74967 - Aaron1011:feature/incr-def-path-table, r=pnkfelix 2020-12-01 14:30:02 +00:00
rustc_index
rustc_infer simplify if let Some(_) = x to if x.is_some() (clippy::redundant_pattern_matching) 2020-12-08 20:27:49 +01:00
rustc_interface Auto merge of #79586 - jyn514:crate-name, r=davidtwco 2020-12-03 12:14:29 +00:00
rustc_lexer Fix some clippy lints 2020-12-03 17:08:19 -05:00
rustc_lint don't create owned values for comparison (clippy::cmp_owned) 2020-12-08 20:27:48 +01:00
rustc_lint_defs Validate naked functions definitions 2020-12-07 00:00:00 +00:00
rustc_llvm Auto merge of #78684 - devsnek:inline-asm-wasm, r=Amanieu 2020-12-01 20:23:06 +00:00
rustc_macros
rustc_metadata Account for gaps in def path table during decoding 2020-12-08 13:02:53 -05:00
rustc_middle Use def_path_hash_to_def_id when re-using a RawDefId 2020-12-10 16:04:19 -05:00
rustc_mir Fixes reported bugs in Rust Coverage 2020-12-11 21:40:22 -08:00
rustc_mir_build Also generate StorageDead in constants 2020-12-09 10:59:10 +00:00
rustc_parse Accept arbitrary expressions in key-value attributes at parse time 2020-12-09 21:37:32 +03:00
rustc_parse_format
rustc_passes Rollup merge of #79844 - tmiasko:rwu-table-mod, r=lcnr 2020-12-09 13:38:34 -08:00
rustc_plugin_impl Store ForeignItem in a side table. 2020-11-26 21:29:27 +01:00
rustc_privacy Remove ForeignMod struct. 2020-11-26 21:32:27 +01:00
rustc_query_system Use def_path_hash_to_def_id when re-using a RawDefId 2020-12-10 16:04:19 -05:00
rustc_resolve Tweak diagnostics on shadowing lifetimes/labels 2020-12-02 11:39:42 +09:00
rustc_save_analysis Remove ForeignMod struct. 2020-11-26 21:32:27 +01:00
rustc_serialize Fix some clippy lints 2020-12-03 17:08:19 -05:00
rustc_session Dogfood 'str_split_once() with compiler/ 2020-12-07 12:48:44 -07:00
rustc_span Use Symbol for inline asm register class names 2020-12-10 13:51:56 -08:00
rustc_symbol_mangling Store ForeignItem in a side table. 2020-11-26 21:29:27 +01:00
rustc_target Rollup merge of #79917 - sivadeilra:asm_symbols, r=petrochenkov 2020-12-10 21:33:19 -08:00
rustc_trait_selection remove redundant clones 2020-12-05 12:59:54 +01:00
rustc_traits
rustc_ty_utils Be cautious of calling upvar_tys before mir 2020-11-29 19:20:28 -05:00
rustc_typeck Rollup merge of #79639 - sasurau4:feature/add-long-explanation-E0212, r=GuillaumeGomez 2020-12-10 21:33:04 -08:00