void (@NotNull PsiMethodCallExpression call) { if (ExpressionUtils.isVoidContext(call)) return; if (COLLECTIONS_UNMODIFIABLE.test(call)) { PsiExpression arg = call.getArgumentList().getExpressions()[0]; DfType dfType = CommonDataflow.getDfType(arg); if (!Mutability.fromDfType(dfType).isUnmodifiable()) return; String methodName = call.getMethodExpression().getReferenceName(); if (methodName == null) return; holder.registerProblem(call, JavaBundle.message("inspection.redundant.unmodifiable.call.display.name", methodName), ProblemHighlightType.GENERIC_ERROR_OR_WARNING, new TextRange(0, call.getArgumentList().getStartOffsetInParent()), new UnwrapUnmodifiableFix()); } }