V3062. An object is used as an argument to its own method. Consider checking the first actual argument of the 'Foo' method.

The analyzer detected a method call in which an object is used as an argument to its own method. Most likely, this is erroneous code and the method should be passed another object.

Consider the example:


Due to a typo the incorrect variable name is used here. The fixed version of this code should look like this:


or this:


And here's an example from a real application:

private bool CanRenameAttributePrefix(....)
  var nameWithoutAttribute = 
  var triggerText = GetSpanText(document, 

  // nameWithoutAttribute, triggerText - String
  return triggerText.StartsWith(triggerText); 

The return value in this code will always be the value 'true' because the method that checks whether a string starts with a substring receives, as its argument, the string itself ('triggerText'). The programmer must have meant the following check instead:

return triggerText.StartsWith(nameWithoutAttribute);

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

Bugs Found

Checked Projects
Collected Errors
14 526
This website uses cookies and other technology to provide you a more personalized experience. By continuing the view of our web-pages you accept the terms of using these files. If you don't want your personal data to be processed, please, leave this site. Learn More →