V3010. The return value of function 'Foo' is required to be utilized.


The analyzer has detected a suspicious call on a method whose return value is not used. Calling certain methods doesn't make sense without using their return values. Consider the following example:

public List<CodeCoverageSequencePoint> SequencePoints 
      { get; private set; }
....
this.SequencePoints.OrderBy(item => item.Line);

In this code, extension method 'OrderBy' is called for the 'SequencePoints' collection. This method sorts the collection by the specified criteria and returns its sorted copy. Since the 'OrderBy' method doesn't modify the 'SequencePoints' collection, it makes no sense calling it without saving the collection returned.

The correct version of the code above should look as follows:

var orderedList = this.SequencePoints.OrderBy(
                    item => item.Line).ToList();

According to Common Weakness Enumeration, potential errors found by using this diagnostic are classified as CWE-252.

You can look at examples of errors detected by the V3010 diagnostic.


Bugs Found

Checked Projects
344
Collected Errors
12 899