aboutsummaryrefslogtreecommitdiff
path: root/crates
diff options
context:
space:
mode:
authorbors[bot] <26634292+bors[bot]@users.noreply.github.com>2021-06-13 11:13:56 +0100
committerGitHub <[email protected]>2021-06-13 11:13:56 +0100
commite29a4c36c7135820929e741ed40192648556aca6 (patch)
tree020b9667f0f723b06ee7fb6948efaa9e6b135f68 /crates
parentadbee621a75f47e0da4f30d7205dfce009138865 (diff)
parent546be18e3a91e4844b0dacc76c9f055397b6d89e (diff)
Merge #9243
9243: internal: check that coverage marks are always paired r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
Diffstat (limited to 'crates')
-rw-r--r--crates/hir_def/src/body/tests/block.rs10
-rw-r--r--crates/hir_ty/src/diagnostics/match_check/deconstruct_pat.rs1
-rw-r--r--crates/ide/src/diagnostics.rs1
-rw-r--r--crates/ide_completion/src/render.rs1
4 files changed, 8 insertions, 5 deletions
diff --git a/crates/hir_def/src/body/tests/block.rs b/crates/hir_def/src/body/tests/block.rs
index bc3d0f138..15c10d053 100644
--- a/crates/hir_def/src/body/tests/block.rs
+++ b/crates/hir_def/src/body/tests/block.rs
@@ -163,14 +163,14 @@ fn legacy_macro_items() {
163 // correctly. 163 // correctly.
164 check_at( 164 check_at(
165 r#" 165 r#"
166macro_rules! hit { 166macro_rules! mark {
167 () => { 167 () => {
168 struct Hit {} 168 struct Hit {}
169 } 169 }
170} 170}
171 171
172fn f() { 172fn f() {
173 hit!(); 173 mark!();
174 $0 174 $0
175} 175}
176"#, 176"#,
@@ -193,20 +193,20 @@ use core::cov_mark;
193 193
194fn f() { 194fn f() {
195 fn nested() { 195 fn nested() {
196 cov_mark::hit!(Hit); 196 cov_mark::mark!(Hit);
197 $0 197 $0
198 } 198 }
199} 199}
200//- /core.rs crate:core 200//- /core.rs crate:core
201pub mod cov_mark { 201pub mod cov_mark {
202 #[macro_export] 202 #[macro_export]
203 macro_rules! _hit { 203 macro_rules! _mark {
204 ($name:ident) => { 204 ($name:ident) => {
205 struct $name {} 205 struct $name {}
206 } 206 }
207 } 207 }
208 208
209 pub use crate::_hit as hit; 209 pub use crate::_mark as mark;
210} 210}
211"#, 211"#,
212 expect![[r#" 212 expect![[r#"
diff --git a/crates/hir_ty/src/diagnostics/match_check/deconstruct_pat.rs b/crates/hir_ty/src/diagnostics/match_check/deconstruct_pat.rs
index 088d2791e..471cd4921 100644
--- a/crates/hir_ty/src/diagnostics/match_check/deconstruct_pat.rs
+++ b/crates/hir_ty/src/diagnostics/match_check/deconstruct_pat.rs
@@ -664,6 +664,7 @@ impl Fields {
664 let is_non_exhaustive = 664 let is_non_exhaustive =
665 is_field_list_non_exhaustive(variant_id, cx) && !adt_is_local; 665 is_field_list_non_exhaustive(variant_id, cx) && !adt_is_local;
666 666
667 cov_mark::hit!(match_check_wildcard_expanded_to_substitutions);
667 let field_ty_data = cx.db.field_types(variant_id); 668 let field_ty_data = cx.db.field_types(variant_id);
668 let field_tys = || { 669 let field_tys = || {
669 field_ty_data 670 field_ty_data
diff --git a/crates/ide/src/diagnostics.rs b/crates/ide/src/diagnostics.rs
index 31d5cfedc..337a904b6 100644
--- a/crates/ide/src/diagnostics.rs
+++ b/crates/ide/src/diagnostics.rs
@@ -2172,6 +2172,7 @@ fn main() {
2172 2172
2173 #[test] 2173 #[test]
2174 fn pattern_type_is_of_substitution() { 2174 fn pattern_type_is_of_substitution() {
2175 cov_mark::check!(match_check_wildcard_expanded_to_substitutions);
2175 check_diagnostics( 2176 check_diagnostics(
2176 r#" 2177 r#"
2177struct Foo<T>(T); 2178struct Foo<T>(T);
diff --git a/crates/ide_completion/src/render.rs b/crates/ide_completion/src/render.rs
index a55081631..d8ca18c73 100644
--- a/crates/ide_completion/src/render.rs
+++ b/crates/ide_completion/src/render.rs
@@ -1007,6 +1007,7 @@ fn go(world: &WorldSnapshot) { go(w$0) }
1007 1007
1008 #[test] 1008 #[test]
1009 fn too_many_arguments() { 1009 fn too_many_arguments() {
1010 cov_mark::check!(too_many_arguments);
1010 check_relevance( 1011 check_relevance(
1011 r#" 1012 r#"
1012struct Foo; 1013struct Foo;