@Override
    public void visitMethodCallExpression(
      @NotNull PsiMethodCallExpression expression) {
      super.visitMethodCallExpression(expression);
      final Project project = expression.getProject();
      final JavaPsiFacade psiFacade = JavaPsiFacade.getInstance(project);
      final PsiClass stringClass =
        psiFacade.findClass(CommonClassNames.JAVA_LANG_STRING,
                            expression.getResolveScope());
      if (stringClass == null) {
        return;
      }
      final PsiClassType stringType =
        psiFacade.getElementFactory().createType(stringClass);
      if (!MethodCallUtils.isCallToMethod(expression,
                                          CommonClassNames.JAVA_LANG_STRING,
                                          stringType, "concat", stringType)) {
        return;
      }
      final PsiExpressionList argumentList = expression.getArgumentList();
      final PsiExpression[] arguments = argumentList.getExpressions();
      if (arguments.length != 1) {
        return;
      }
      if (ExpressionUtils.isVoidContext(expression)) return;
      registerMethodCallError(expression);
    }
@Override
    public void visitMethodCallExpression(
      @NotNull PsiMethodCallExpression expression)