Skip to content

Commit 662180b

Browse files
committedOct 20, 2024
Auto merge of #131949 - Noratrieb:fxhashup-thanks-alona, r=WaffleLapkin
Update rustc-hash to version 2 but again it's like #129533 but not closed by bors and rebased r? WaffleLapkin meow
2 parents de977a5 + 0c8d81b commit 662180b

File tree

14 files changed

+85
-70
lines changed

14 files changed

+85
-70
lines changed
 

‎Cargo.lock

+5-5
Original file line numberDiff line numberDiff line change
@@ -1907,7 +1907,7 @@ dependencies = [
19071907
"anyhow",
19081908
"clap",
19091909
"fs-err",
1910-
"rustc-hash 1.1.0",
1910+
"rustc-hash 2.0.0",
19111911
"rustdoc-json-types",
19121912
"serde",
19131913
"serde_json",
@@ -3514,7 +3514,7 @@ dependencies = [
35143514
"memmap2",
35153515
"parking_lot",
35163516
"portable-atomic",
3517-
"rustc-hash 1.1.0",
3517+
"rustc-hash 2.0.0",
35183518
"rustc-rayon",
35193519
"rustc-stable-hash",
35203520
"rustc_arena",
@@ -4211,7 +4211,7 @@ dependencies = [
42114211
name = "rustc_pattern_analysis"
42124212
version = "0.0.0"
42134213
dependencies = [
4214-
"rustc-hash 1.1.0",
4214+
"rustc-hash 2.0.0",
42154215
"rustc_apfloat",
42164216
"rustc_arena",
42174217
"rustc_data_structures",
@@ -4609,7 +4609,7 @@ name = "rustdoc-json-types"
46094609
version = "0.1.0"
46104610
dependencies = [
46114611
"bincode",
4612-
"rustc-hash 1.1.0",
4612+
"rustc-hash 2.0.0",
46134613
"serde",
46144614
"serde_json",
46154615
]
@@ -5239,7 +5239,7 @@ dependencies = [
52395239
"ignore",
52405240
"miropt-test-tools",
52415241
"regex",
5242-
"rustc-hash 1.1.0",
5242+
"rustc-hash 2.0.0",
52435243
"semver",
52445244
"similar",
52455245
"termcolor",

‎compiler/rustc_data_structures/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ ena = "0.14.3"
1313
indexmap = { version = "2.4.0" }
1414
jobserver_crate = { version = "0.1.28", package = "jobserver" }
1515
measureme = "11"
16-
rustc-hash = "1.1.0"
16+
rustc-hash = "2.0.0"
1717
rustc-rayon = { version = "0.5.0", optional = true }
1818
rustc-stable-hash = { version = "0.1.0", features = ["nightly"] }
1919
rustc_arena = { path = "../rustc_arena" }

‎compiler/rustc_passes/src/hir_stats.rs

+3-1
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,9 @@ impl<'k> StatCollector<'k> {
122122
// We will soon sort, so the initial order does not matter.
123123
#[allow(rustc::potential_query_instability)]
124124
let mut nodes: Vec<_> = self.nodes.iter().collect();
125-
nodes.sort_by_key(|(_, node)| node.stats.count * node.stats.size);
125+
nodes.sort_by_cached_key(|(label, node)| {
126+
(node.stats.count * node.stats.size, label.to_owned())
127+
});
126128

127129
let total_size = nodes.iter().map(|(_, node)| node.stats.count * node.stats.size).sum();
128130

‎compiler/rustc_pattern_analysis/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ edition = "2021"
55

66
[dependencies]
77
# tidy-alphabetical-start
8-
rustc-hash = "1.1.0"
8+
rustc-hash = "2.0.0"
99
rustc_apfloat = "0.2.0"
1010
rustc_arena = { path = "../rustc_arena", optional = true }
1111
rustc_data_structures = { path = "../rustc_data_structures", optional = true }

‎compiler/rustc_resolve/src/build_reduced_graph.rs

+5-1
Original file line numberDiff line numberDiff line change
@@ -1193,7 +1193,11 @@ impl<'a, 'ra, 'tcx> BuildReducedGraphVisitor<'a, 'ra, 'tcx> {
11931193
if !ident.as_str().starts_with('_') {
11941194
self.r.unused_macros.insert(def_id, (node_id, ident));
11951195
for (rule_i, rule_span) in &self.r.macro_map[&def_id.to_def_id()].rule_spans {
1196-
self.r.unused_macro_rules.insert((def_id, *rule_i), (ident, *rule_span));
1196+
self.r
1197+
.unused_macro_rules
1198+
.entry(def_id)
1199+
.or_default()
1200+
.insert(*rule_i, (ident, *rule_span));
11971201
}
11981202
}
11991203
}

‎compiler/rustc_resolve/src/lib.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -1122,7 +1122,8 @@ pub struct Resolver<'ra, 'tcx> {
11221122
local_macro_def_scopes: FxHashMap<LocalDefId, Module<'ra>>,
11231123
ast_transform_scopes: FxHashMap<LocalExpnId, Module<'ra>>,
11241124
unused_macros: FxHashMap<LocalDefId, (NodeId, Ident)>,
1125-
unused_macro_rules: FxHashMap<(LocalDefId, usize), (Ident, Span)>,
1125+
/// A map from the macro to all its potentially unused arms.
1126+
unused_macro_rules: FxIndexMap<LocalDefId, FxHashMap<usize, (Ident, Span)>>,
11261127
proc_macro_stubs: FxHashSet<LocalDefId>,
11271128
/// Traces collected during macro resolution and validated when it's complete.
11281129
single_segment_macro_resolutions:

‎compiler/rustc_resolve/src/macros.rs

+20-12
Original file line numberDiff line numberDiff line change
@@ -340,7 +340,9 @@ impl<'ra, 'tcx> ResolverExpand for Resolver<'ra, 'tcx> {
340340

341341
fn record_macro_rule_usage(&mut self, id: NodeId, rule_i: usize) {
342342
let did = self.local_def_id(id);
343-
self.unused_macro_rules.remove(&(did, rule_i));
343+
if let Some(rules) = self.unused_macro_rules.get_mut(&did) {
344+
rules.remove(&rule_i);
345+
}
344346
}
345347

346348
fn check_unused_macros(&mut self) {
@@ -352,18 +354,24 @@ impl<'ra, 'tcx> ResolverExpand for Resolver<'ra, 'tcx> {
352354
BuiltinLintDiag::UnusedMacroDefinition(ident.name),
353355
);
354356
}
355-
for (&(def_id, arm_i), &(ident, rule_span)) in self.unused_macro_rules.iter() {
356-
if self.unused_macros.contains_key(&def_id) {
357-
// We already lint the entire macro as unused
358-
continue;
357+
358+
for (&def_id, unused_arms) in self.unused_macro_rules.iter() {
359+
let mut unused_arms = unused_arms.iter().collect::<Vec<_>>();
360+
unused_arms.sort_by_key(|&(&arm_i, _)| arm_i);
361+
362+
for (&arm_i, &(ident, rule_span)) in unused_arms {
363+
if self.unused_macros.contains_key(&def_id) {
364+
// We already lint the entire macro as unused
365+
continue;
366+
}
367+
let node_id = self.def_id_to_node_id[def_id];
368+
self.lint_buffer.buffer_lint(
369+
UNUSED_MACRO_RULES,
370+
node_id,
371+
rule_span,
372+
BuiltinLintDiag::MacroRuleNeverUsed(arm_i, ident.name),
373+
);
359374
}
360-
let node_id = self.def_id_to_node_id[def_id];
361-
self.lint_buffer.buffer_lint(
362-
UNUSED_MACRO_RULES,
363-
node_id,
364-
rule_span,
365-
BuiltinLintDiag::MacroRuleNeverUsed(arm_i, ident.name),
366-
);
367375
}
368376
}
369377

‎src/rustdoc-json-types/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ default = ["rustc-hash"]
1111

1212
[dependencies]
1313
serde = { version = "1.0", features = ["derive"] }
14-
rustc-hash = { version = "1.1.0", optional = true }
14+
rustc-hash = { version = "2.0", optional = true }
1515

1616
[dev-dependencies]
1717
serde_json = "1.0"

‎src/tools/jsondoclint/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ edition = "2021"
99
anyhow = "1.0.62"
1010
clap = { version = "4.0.15", features = ["derive"] }
1111
fs-err = "2.8.1"
12-
rustc-hash = "1.1.0"
12+
rustc-hash = "2.0.0"
1313
rustdoc-json-types = { version = "0.1.0", path = "../../rustdoc-json-types" }
1414
serde = { version = "1.0", features = ["derive"] }
1515
serde_json = "1.0.85"

‎src/tools/tidy/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ walkdir = "2"
1313
ignore = "0.4.18"
1414
semver = "1.0"
1515
termcolor = "1.1.3"
16-
rustc-hash = "1.1.0"
16+
rustc-hash = "2.0.0"
1717
fluent-syntax = "0.11.1"
1818
similar = "2.5.0"
1919

‎tests/ui/lint/unused/unused-macro-rules-compile-error.stderr

+6-6
Original file line numberDiff line numberDiff line change
@@ -10,17 +10,17 @@ note: the lint level is defined here
1010
LL | #![deny(unused_macro_rules)]
1111
| ^^^^^^^^^^^^^^^^^^
1212

13-
error: rule #3 of macro `num2` is never used
14-
--> $DIR/unused-macro-rules-compile-error.rs:22:5
15-
|
16-
LL | (two_) => { compile_error! };
17-
| ^^^^^^
18-
1913
error: rule #2 of macro `num2` is never used
2014
--> $DIR/unused-macro-rules-compile-error.rs:20:5
2115
|
2216
LL | (two) => { fn compile_error() {} };
2317
| ^^^^^
2418

19+
error: rule #3 of macro `num2` is never used
20+
--> $DIR/unused-macro-rules-compile-error.rs:22:5
21+
|
22+
LL | (two_) => { compile_error! };
23+
| ^^^^^^
24+
2525
error: aborting due to 3 previous errors
2626

‎tests/ui/lint/unused/unused-macro-rules-decl.stderr

+8-8
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,20 @@
1-
error: rule #4 of macro `num` is never used
2-
--> $DIR/unused-macro-rules-decl.rs:11:5
1+
error: rule #2 of macro `num` is never used
2+
--> $DIR/unused-macro-rules-decl.rs:9:5
33
|
4-
LL | (four) => { 4 },
5-
| ^^^^^^
4+
LL | (two) => { 2 },
5+
| ^^^^^
66
|
77
note: the lint level is defined here
88
--> $DIR/unused-macro-rules-decl.rs:2:9
99
|
1010
LL | #![deny(unused_macro_rules)]
1111
| ^^^^^^^^^^^^^^^^^^
1212

13-
error: rule #2 of macro `num` is never used
14-
--> $DIR/unused-macro-rules-decl.rs:9:5
13+
error: rule #4 of macro `num` is never used
14+
--> $DIR/unused-macro-rules-decl.rs:11:5
1515
|
16-
LL | (two) => { 2 },
17-
| ^^^^^
16+
LL | (four) => { 4 },
17+
| ^^^^^^
1818

1919
error: rule #3 of macro `num_rec` is never used
2020
--> $DIR/unused-macro-rules-decl.rs:31:5

‎tests/ui/lint/unused/unused-macro-rules.stderr

+8-8
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,20 @@
1-
error: rule #4 of macro `num` is never used
2-
--> $DIR/unused-macro-rules.rs:10:5
1+
error: rule #2 of macro `num` is never used
2+
--> $DIR/unused-macro-rules.rs:8:5
33
|
4-
LL | (four) => { 4 };
5-
| ^^^^^^
4+
LL | (two) => { 2 };
5+
| ^^^^^
66
|
77
note: the lint level is defined here
88
--> $DIR/unused-macro-rules.rs:1:9
99
|
1010
LL | #![deny(unused_macro_rules)]
1111
| ^^^^^^^^^^^^^^^^^^
1212

13-
error: rule #2 of macro `num` is never used
14-
--> $DIR/unused-macro-rules.rs:8:5
13+
error: rule #4 of macro `num` is never used
14+
--> $DIR/unused-macro-rules.rs:10:5
1515
|
16-
LL | (two) => { 2 };
17-
| ^^^^^
16+
LL | (four) => { 4 };
17+
| ^^^^^^
1818

1919
error: rule #3 of macro `num_rec` is never used
2020
--> $DIR/unused-macro-rules.rs:30:5

‎tests/ui/stats/hir-stats.stderr

+23-23
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,33 @@
11
ast-stats-1 PRE EXPANSION AST STATS
22
ast-stats-1 Name Accumulated Size Count Item Size
33
ast-stats-1 ----------------------------------------------------------------
4+
ast-stats-1 Crate 40 ( 0.6%) 1 40
45
ast-stats-1 GenericArgs 40 ( 0.6%) 1 40
56
ast-stats-1 - AngleBracketed 40 ( 0.6%) 1
6-
ast-stats-1 Crate 40 ( 0.6%) 1 40
77
ast-stats-1 ExprField 48 ( 0.7%) 1 48
88
ast-stats-1 WherePredicate 56 ( 0.8%) 1 56
99
ast-stats-1 - BoundPredicate 56 ( 0.8%) 1
1010
ast-stats-1 Attribute 64 ( 1.0%) 2 32
11-
ast-stats-1 - Normal 32 ( 0.5%) 1
1211
ast-stats-1 - DocComment 32 ( 0.5%) 1
12+
ast-stats-1 - Normal 32 ( 0.5%) 1
1313
ast-stats-1 Local 80 ( 1.2%) 1 80
1414
ast-stats-1 ForeignItem 88 ( 1.3%) 1 88
1515
ast-stats-1 - Fn 88 ( 1.3%) 1
1616
ast-stats-1 Arm 96 ( 1.4%) 2 48
1717
ast-stats-1 FnDecl 120 ( 1.8%) 5 24
1818
ast-stats-1 FieldDef 160 ( 2.4%) 2 80
19+
ast-stats-1 Param 160 ( 2.4%) 4 40
1920
ast-stats-1 Stmt 160 ( 2.4%) 5 32
2021
ast-stats-1 - Let 32 ( 0.5%) 1
2122
ast-stats-1 - MacCall 32 ( 0.5%) 1
2223
ast-stats-1 - Expr 96 ( 1.4%) 3
23-
ast-stats-1 Param 160 ( 2.4%) 4 40
2424
ast-stats-1 Block 192 ( 2.9%) 6 32
2525
ast-stats-1 Variant 208 ( 3.1%) 2 104
26-
ast-stats-1 GenericBound 352 ( 5.3%) 4 88
27-
ast-stats-1 - Trait 352 ( 5.3%) 4
2826
ast-stats-1 AssocItem 352 ( 5.3%) 4 88
2927
ast-stats-1 - Type 176 ( 2.7%) 2
3028
ast-stats-1 - Fn 176 ( 2.7%) 2
29+
ast-stats-1 GenericBound 352 ( 5.3%) 4 88
30+
ast-stats-1 - Trait 352 ( 5.3%) 4
3131
ast-stats-1 GenericParam 480 ( 7.2%) 5 96
3232
ast-stats-1 Pat 504 ( 7.6%) 7 72
3333
ast-stats-1 - Struct 72 ( 1.1%) 1
@@ -41,15 +41,15 @@ ast-stats-1 - Lit 144 ( 2.2%) 2
4141
ast-stats-1 - Block 216 ( 3.3%) 3
4242
ast-stats-1 PathSegment 744 (11.2%) 31 24
4343
ast-stats-1 Ty 896 (13.5%) 14 64
44-
ast-stats-1 - Ptr 64 ( 1.0%) 1
4544
ast-stats-1 - Ref 64 ( 1.0%) 1
45+
ast-stats-1 - Ptr 64 ( 1.0%) 1
4646
ast-stats-1 - ImplicitSelf 128 ( 1.9%) 2
4747
ast-stats-1 - Path 640 ( 9.6%) 10
4848
ast-stats-1 Item 1_224 (18.4%) 9 136
49-
ast-stats-1 - Trait 136 ( 2.0%) 1
50-
ast-stats-1 - Enum 136 ( 2.0%) 1
5149
ast-stats-1 - ForeignMod 136 ( 2.0%) 1
50+
ast-stats-1 - Trait 136 ( 2.0%) 1
5251
ast-stats-1 - Impl 136 ( 2.0%) 1
52+
ast-stats-1 - Enum 136 ( 2.0%) 1
5353
ast-stats-1 - Fn 272 ( 4.1%) 2
5454
ast-stats-1 - Use 408 ( 6.1%) 3
5555
ast-stats-1 ----------------------------------------------------------------
@@ -58,34 +58,34 @@ ast-stats-1
5858
ast-stats-2 POST EXPANSION AST STATS
5959
ast-stats-2 Name Accumulated Size Count Item Size
6060
ast-stats-2 ----------------------------------------------------------------
61+
ast-stats-2 Crate 40 ( 0.5%) 1 40
6162
ast-stats-2 GenericArgs 40 ( 0.5%) 1 40
6263
ast-stats-2 - AngleBracketed 40 ( 0.5%) 1
63-
ast-stats-2 Crate 40 ( 0.5%) 1 40
6464
ast-stats-2 ExprField 48 ( 0.7%) 1 48
6565
ast-stats-2 WherePredicate 56 ( 0.8%) 1 56
6666
ast-stats-2 - BoundPredicate 56 ( 0.8%) 1
6767
ast-stats-2 Local 80 ( 1.1%) 1 80
6868
ast-stats-2 ForeignItem 88 ( 1.2%) 1 88
6969
ast-stats-2 - Fn 88 ( 1.2%) 1
7070
ast-stats-2 Arm 96 ( 1.3%) 2 48
71-
ast-stats-2 InlineAsm 120 ( 1.6%) 1 120
7271
ast-stats-2 FnDecl 120 ( 1.6%) 5 24
72+
ast-stats-2 InlineAsm 120 ( 1.6%) 1 120
7373
ast-stats-2 Attribute 128 ( 1.8%) 4 32
7474
ast-stats-2 - DocComment 32 ( 0.4%) 1
7575
ast-stats-2 - Normal 96 ( 1.3%) 3
7676
ast-stats-2 FieldDef 160 ( 2.2%) 2 80
77+
ast-stats-2 Param 160 ( 2.2%) 4 40
7778
ast-stats-2 Stmt 160 ( 2.2%) 5 32
7879
ast-stats-2 - Let 32 ( 0.4%) 1
7980
ast-stats-2 - Semi 32 ( 0.4%) 1
8081
ast-stats-2 - Expr 96 ( 1.3%) 3
81-
ast-stats-2 Param 160 ( 2.2%) 4 40
8282
ast-stats-2 Block 192 ( 2.6%) 6 32
8383
ast-stats-2 Variant 208 ( 2.9%) 2 104
84-
ast-stats-2 GenericBound 352 ( 4.8%) 4 88
85-
ast-stats-2 - Trait 352 ( 4.8%) 4
8684
ast-stats-2 AssocItem 352 ( 4.8%) 4 88
8785
ast-stats-2 - Type 176 ( 2.4%) 2
8886
ast-stats-2 - Fn 176 ( 2.4%) 2
87+
ast-stats-2 GenericBound 352 ( 4.8%) 4 88
88+
ast-stats-2 - Trait 352 ( 4.8%) 4
8989
ast-stats-2 GenericParam 480 ( 6.6%) 5 96
9090
ast-stats-2 Pat 504 ( 6.9%) 7 72
9191
ast-stats-2 - Struct 72 ( 1.0%) 1
@@ -100,16 +100,16 @@ ast-stats-2 - Lit 144 ( 2.0%) 2
100100
ast-stats-2 - Block 216 ( 3.0%) 3
101101
ast-stats-2 PathSegment 864 (11.9%) 36 24
102102
ast-stats-2 Ty 896 (12.3%) 14 64
103-
ast-stats-2 - Ptr 64 ( 0.9%) 1
104103
ast-stats-2 - Ref 64 ( 0.9%) 1
104+
ast-stats-2 - Ptr 64 ( 0.9%) 1
105105
ast-stats-2 - ImplicitSelf 128 ( 1.8%) 2
106106
ast-stats-2 - Path 640 ( 8.8%) 10
107107
ast-stats-2 Item 1_496 (20.5%) 11 136
108-
ast-stats-2 - Trait 136 ( 1.9%) 1
109108
ast-stats-2 - Enum 136 ( 1.9%) 1
109+
ast-stats-2 - Trait 136 ( 1.9%) 1
110+
ast-stats-2 - Impl 136 ( 1.9%) 1
110111
ast-stats-2 - ExternCrate 136 ( 1.9%) 1
111112
ast-stats-2 - ForeignMod 136 ( 1.9%) 1
112-
ast-stats-2 - Impl 136 ( 1.9%) 1
113113
ast-stats-2 - Fn 272 ( 3.7%) 2
114114
ast-stats-2 - Use 544 ( 7.5%) 4
115115
ast-stats-2 ----------------------------------------------------------------
@@ -129,8 +129,8 @@ hir-stats - Lifetime 48 ( 0.5%) 3
129129
hir-stats Local 64 ( 0.7%) 1 64
130130
hir-stats Param 64 ( 0.7%) 2 32
131131
hir-stats Body 72 ( 0.8%) 3 24
132-
hir-stats InlineAsm 72 ( 0.8%) 1 72
133132
hir-stats ImplItemRef 72 ( 0.8%) 2 36
133+
hir-stats InlineAsm 72 ( 0.8%) 1 72
134134
hir-stats Arm 80 ( 0.9%) 2 40
135135
hir-stats FieldDef 96 ( 1.1%) 2 48
136136
hir-stats Stmt 96 ( 1.1%) 3 32
@@ -139,36 +139,36 @@ hir-stats - Semi 32 ( 0.4%) 1
139139
hir-stats - Expr 32 ( 0.4%) 1
140140
hir-stats FnDecl 120 ( 1.3%) 3 40
141141
hir-stats Attribute 128 ( 1.4%) 4 32
142-
hir-stats Variant 144 ( 1.6%) 2 72
143142
hir-stats GenericArgs 144 ( 1.6%) 3 48
143+
hir-stats Variant 144 ( 1.6%) 2 72
144144
hir-stats GenericBound 192 ( 2.1%) 4 48
145145
hir-stats - Trait 192 ( 2.1%) 4
146146
hir-stats WherePredicate 192 ( 2.1%) 3 64
147147
hir-stats - BoundPredicate 192 ( 2.1%) 3
148148
hir-stats Block 288 ( 3.2%) 6 48
149149
hir-stats GenericParam 360 ( 4.0%) 5 72
150150
hir-stats Pat 360 ( 4.0%) 5 72
151-
hir-stats - Wild 72 ( 0.8%) 1
152151
hir-stats - Struct 72 ( 0.8%) 1
152+
hir-stats - Wild 72 ( 0.8%) 1
153153
hir-stats - Binding 216 ( 2.4%) 3
154154
hir-stats Generics 560 ( 6.2%) 10 56
155155
hir-stats Ty 720 ( 8.0%) 15 48
156-
hir-stats - Ptr 48 ( 0.5%) 1
157156
hir-stats - Ref 48 ( 0.5%) 1
157+
hir-stats - Ptr 48 ( 0.5%) 1
158158
hir-stats - Path 624 ( 7.0%) 13
159159
hir-stats Expr 768 ( 8.6%) 12 64
160160
hir-stats - Path 64 ( 0.7%) 1
161-
hir-stats - Struct 64 ( 0.7%) 1
162161
hir-stats - Match 64 ( 0.7%) 1
162+
hir-stats - Struct 64 ( 0.7%) 1
163163
hir-stats - InlineAsm 64 ( 0.7%) 1
164164
hir-stats - Lit 128 ( 1.4%) 2
165165
hir-stats - Block 384 ( 4.3%) 6
166166
hir-stats Item 968 (10.8%) 11 88
167-
hir-stats - Trait 88 ( 1.0%) 1
168167
hir-stats - Enum 88 ( 1.0%) 1
168+
hir-stats - Trait 88 ( 1.0%) 1
169+
hir-stats - Impl 88 ( 1.0%) 1
169170
hir-stats - ExternCrate 88 ( 1.0%) 1
170171
hir-stats - ForeignMod 88 ( 1.0%) 1
171-
hir-stats - Impl 88 ( 1.0%) 1
172172
hir-stats - Fn 176 ( 2.0%) 2
173173
hir-stats - Use 352 ( 3.9%) 4
174174
hir-stats Path 1_240 (13.8%) 31 40

0 commit comments

Comments
 (0)
Please sign in to comment.