JavaScript is not currently enabled, but is required for full CodeSonar manual search and browse functionality.

If you are viewing this file in your hub's Web GUI, enable JavaScript in your browser: you will also need it for GUI functionality.

If you opened this file directly from disk, your browser may be directly suppressing JavaScript functionality: certain browsers perform this suppression on local files (but not files delivered by web servers) for security reasons.

CodeSonar® 9.2p0 CONFIDENTIAL CodeSecure Inc
Java


JAVA.FUNCS.RED.STR : Redundant Call for String Argument (Java)

Summary

A method call seems useless.

This checker finds calls that are useless and can consequently be removed from the code. This means that the code becomes simpler and more efficient, but might also be the sign of a programming bug.

Properties

Class Name Redundant Call for String Argument (Java)
Significance reliability
Mnemonic JAVA.FUNCS.RED.STR
Categories
CWE CWE:1164 Irrelevant Code
Availability Available for Java and Kotlin.
Enabling Checks for this warning class are enabled by default. To disable them, add the following WARNING_FILTER rule to the project configuration file.
WARNING_FILTER += discard class="Redundant Call for String Argument (Java)"

Example

import java.util.Date;

public class Student {
  private final String name;
  private final String surname;
  private final Date birthDay;

  public Student(String name, String surname) {
      this.name = name;
      this.surname = surname;
      this.birthDay = new Date();
  }

  public static void main(String[] args) {
      Student s = new Student("John", "Lennon");
      print(s.toString());                                    // can remove this call to toString() to eliminate the warning in print()
  }

  private static void print(Object s) {
      System.out.println(s.toString());           /* "Redundant Call for String Argument (Java)" warning issued here 
                                                   * - s always holds a String at runtime. 
                                                   */ 
  }

  public String toString() {
      return "I'm " + name.toString() + surname.toString() + "." /* "Redundant Call for String Argument (Java)" warning issued here 
                                                   * - name and surname are already Strings. 
                                                   */ 
        + " My birthday is on " + birthDay.toString();
  }
}

Resolution

Check if the call is useless and delete it.

Relevant Configuration File Parameters

The following configuration file parameters affect checks for this warning class.

 

To report problems with this documentation, please visit https://support.codesecure.com/.