A method that always calls itself will cause a StackOverflowError.
int oops() {
  return oops();
}
Exception in thread "main" java.lang.StackOverflowError
  at Test.oops(X.java:3)
  at Test.oops(X.java:3)
  ...
The fix may be to call another method with the same name:
void process(String name, int id) {
  process(name, id); // error
  process(name, id, /*verbose=*/ true); // ok
}
void process(String name, int id, boolean verbose) {
  // ...
}
or to call the method on a different instance:
class Delegate implements Processor {
  Processor delegate;
  void process(String name, int id) {
    process(name, id); // error
    delegate.process(name, id); // ok
  }
}
Suppress false positives by adding the suppression annotation @SuppressWarnings("InfiniteRecursion") to the enclosing element.