mirror of
https://github.com/github/codeql.git
synced 2026-02-20 17:03:41 +01:00
Add UnusedParameter.ql query
This commit is contained in:
27
ql/src/queries/variables/UnusedParameter.ql
Normal file
27
ql/src/queries/variables/UnusedParameter.ql
Normal file
@@ -0,0 +1,27 @@
|
||||
/**
|
||||
* @name Unused parameter.
|
||||
* @description A parameter that is not used later on, or whose value is always overwritten,
|
||||
* can be removed.
|
||||
* @kind problem
|
||||
* @problem.severity warning
|
||||
* @id rb/unused-parameter
|
||||
* @tags maintainability
|
||||
* external/cwe/cwe-563
|
||||
* @precision low
|
||||
*/
|
||||
|
||||
import ruby
|
||||
import codeql_ruby.dataflow.SSA
|
||||
|
||||
class RelevantParameterVariable extends LocalVariable {
|
||||
RelevantParameterVariable() {
|
||||
exists(Parameter p |
|
||||
this = p.getAVariable() and
|
||||
not this.getName().charAt(0) = "_"
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
from RelevantParameterVariable v
|
||||
where not exists(Ssa::WriteDefinition def | def.getWriteAccess() = v.getDefiningAccess())
|
||||
select v, "Unused parameter."
|
||||
Reference in New Issue
Block a user