void (@NotNull PsiDeclarationStatement statement) { super.visitDeclarationStatement(statement); final PsiElement[] declaredElements = statement.getDeclaredElements(); if (declaredElements.length < 2) { return; } final PsiElement parent = statement.getParent(); final ProblemHighlightType highlightType; if (ignoreForLoopDeclarations && parent instanceof PsiForStatement) { highlightType = ProblemHighlightType.INFORMATION; } else if (onlyWarnArrayDimensions) { final PsiVariable variable = (PsiVariable)declaredElements[0]; final PsiType baseType = variable.getType(); boolean hasMultipleTypes = false; for (int i = 1; i < declaredElements.length; i++) { final PsiType variableType = ((PsiLocalVariable)declaredElements[i]).getType(); if (!variableType.equals(baseType)) { hasMultipleTypes = true; } } highlightType = hasMultipleTypes ? ProblemHighlightType.WARNING : ProblemHighlightType.INFORMATION; } else { highlightType = ProblemHighlightType.WARNING; } if (highlightType == ProblemHighlightType.INFORMATION || InspectionProjectProfileManager.isInformationLevel(getShortName(), statement)) { if (isOnTheFly()) { registerError(statement, highlightType); } } else { final PsiElement nameIdentifier = ((PsiVariable)declaredElements[0]).getNameIdentifier(); if (nameIdentifier == null) { return; } registerError(nameIdentifier, highlightType); } }