If a function does not return anything, it makes no sense to use its output. Specifically, passing it to another function, or assigning its "result" to a variable is probably a bug because such functions return nothing, which is probably not what was intended.

Noncompliant Code Example

def foo():
  l = [1, 2, 3]
  result = l.append(42) # Noncompliant, `append` mutates list l
  return result

Compliant Solution

def foo():
  l = [1, 2, 3]
  l.append(42)
  return l