Skip to content

Commit 0a96640

Browse files
committed
clean up namespace, distinguish between lambda param and function params
1 parent 1ff8c86 commit 0a96640

File tree

1 file changed

+14
-16
lines changed

1 file changed

+14
-16
lines changed

cpp/common/src/codingstandards/cpp/rules/unusedparameter/UnusedParameter.qll

Lines changed: 14 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -11,32 +11,30 @@ abstract class UnusedParameterSharedQuery extends Query { }
1111

1212
Query getQuery() { result instanceof UnusedParameterSharedQuery }
1313

14-
query predicate isMaybeUnusedParameter(Parameter parameter) {
14+
predicate isMaybeUnusedParameter(Parameter parameter) {
1515
parameter.getAnAttribute().toString() = "maybe_unused"
1616
}
1717

1818
predicate isLambdaParameter(Parameter parameter) {
1919
exists(LambdaExpression lambda | lambda.getLambdaFunction().getParameter(_) = parameter)
2020
}
2121

22-
predicate isLambdaMaybeUnusedParameter(Parameter parameter) {
23-
exists(LambdaExpression lambda | lambda.getLambdaFunction().getParameter(_) = parameter) and
24-
isMaybeUnusedParameter(parameter)
25-
}
26-
27-
query predicate lambdaExprParamHasAccess(Parameter parameter) {
28-
exists(VariableAccess va | isLambdaParameter(parameter) and parameter.getAnAccess() = va)
29-
}
30-
3122
query predicate problems(UnusedParameter p, string message, Function f, string fName) {
3223
not isExcluded(p, getQuery()) and
33-
(
24+
if isLambdaParameter(p)
25+
then (
26+
not isMaybeUnusedParameter(p) and
27+
f = p.getFunction() and
28+
// Virtual functions are covered by a different rule
29+
not f.isVirtual() and
30+
message = "Unused parameter '" + p.getName() + "' for function $@." and
31+
fName = "lambda expression"
32+
) else (
3433
not isMaybeUnusedParameter(p) and
3534
f = p.getFunction() and
3635
// Virtual functions are covered by a different rule
37-
not f.isVirtual()
38-
) and
39-
message = "Unused parameter '" + p.getName() + "' for function $@." and
40-
// fName = f.getQualifiedName()
41-
fName = "TODO."
36+
not f.isVirtual() and
37+
message = "Unused parameter '" + p.getName() + "' for function $@." and
38+
fName = f.getQualifiedName()
39+
)
4240
}

0 commit comments

Comments
 (0)