From 3aedf2548c158c72113383ae549a59afb9242dc1 Mon Sep 17 00:00:00 2001 From: Dmitry Jemerov Date: Tue, 21 Mar 2017 17:56:08 +0100 Subject: [PATCH] Don't create empty list for Call arguments --- .../kotlin/resolve/calls/util/CallMaker.java | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/util/CallMaker.java b/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/util/CallMaker.java index c214f979be1..f1c8fdb90ed 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/util/CallMaker.java +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/util/CallMaker.java @@ -201,9 +201,15 @@ public class CallMaker { public static Call makeCallWithExpressions(@NotNull KtElement callElement, @Nullable Receiver explicitReceiver, @Nullable ASTNode callOperationNode, @NotNull KtExpression calleeExpression, @NotNull List argumentExpressions, @NotNull CallType callType) { - List arguments = new ArrayList(argumentExpressions.size()); - for (KtExpression argumentExpression : argumentExpressions) { - arguments.add(makeValueArgument(argumentExpression, calleeExpression)); + List arguments; + if (argumentExpressions.isEmpty()) { + arguments = Collections.emptyList(); + } + else { + arguments = new ArrayList(argumentExpressions.size()); + for (KtExpression argumentExpression : argumentExpressions) { + arguments.add(makeValueArgument(argumentExpression, calleeExpression)); + } } return makeCall(callElement, explicitReceiver, callOperationNode, calleeExpression, arguments, callType); }