int (GrMethod method) { final ReturnPointCountVisitor visitor = new ReturnPointCountVisitor(); method.accept(visitor); final int count = visitor.getCount(); if (!mayFallThroughBottom(method)) { return count; } final GrCodeBlock body = method.getBlock(); if (body == null) { return count; } final GrStatement[] statements = body.getStatements(); if (statements.length == 0) { return count + 1; } final GrStatement lastStatement = statements[statements.length - 1]; if (ControlFlowUtils.statementMayCompleteNormally(lastStatement)) { return count + 1; } return count; }