Skip to content

Commit 82a0aaf

Browse files
authored
config: Fix not collecting CfgFunctions defined as extern (#1000)
1 parent 8b8e480 commit 82a0aaf

File tree

3 files changed

+4
-2
lines changed

3 files changed

+4
-2
lines changed

libs/config/src/analyze/lints/collect_cfgfunctions.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,8 @@ impl LintRunner<LintData> for Runner {
7373
let Property::Class(class) = p else { continue };
7474
let Class::Local { properties: properties_category, .. } = class else { continue };
7575
for function in properties_category {
76-
let Property::Class(Class::Local { name: class_name, .. }) = function else { continue };
76+
let Property::Class(func_class) = function else { continue };
77+
let Some(class_name) = func_class.name() else { continue; };
7778
let func_name = format!("{prefix_real}_fnc_{}",class_name.as_str()).to_lowercase();
7879
let mut functions_defined = data.functions_defined.lock().expect("mutex safety");
7980
functions_defined.insert(func_name);

libs/config/tests/lints/collect_cfgfunctions.hpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ class CfgFunctions {
88
class test_blueberry {
99
class someCategory2 {
1010
class f2 {};
11+
class f3; // defined as an external, but will still be collected
1112
};
1213
};
1314
};

libs/config/tests/snapshots/lints__collect_cfgfunctions.snap

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,4 @@
22
source: libs/config/tests/lints.rs
33
expression: functions_defined
44
---
5-
["test_apple_fnc_f1", "test_blueberry_fnc_f2"]
5+
["test_apple_fnc_f1", "test_blueberry_fnc_f2", "test_blueberry_fnc_f3"]

0 commit comments

Comments
 (0)