From f0bc021b5e4ea9cc2578a5e2691dadfd9472d93a Mon Sep 17 00:00:00 2001 From: Kristoffer Andersen Date: Fri, 24 Jun 2022 12:56:50 +0200 Subject: [PATCH] Change VARIABLE_REASSIGNMENT slice so it composes properly --- .../src/org/jetbrains/kotlin/resolve/BindingContext.java | 2 +- .../org/jetbrains/kotlin/js/translate/utils/BindingUtils.java | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/BindingContext.java b/compiler/frontend/src/org/jetbrains/kotlin/resolve/BindingContext.java index 11fcc0ad02d..49b3ea959d4 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/BindingContext.java +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/BindingContext.java @@ -171,7 +171,7 @@ public interface BindingContext { WritableSlice SCRIPT_SCOPE = Slices.createSimpleSlice(); - WritableSlice VARIABLE_REASSIGNMENT = Slices.createSimpleSetSlice(); + WritableSlice VARIABLE_REASSIGNMENT = new BasicWritableSlice<>(DO_NOTHING); WritableSlice AUTO_CREATED_IT = Slices.createSimpleSetSlice(); WritableSlice, Boolean> SUSPEND_LAMBDA_PARAMETER_USED = Slices.createSimpleSlice(); diff --git a/js/js.translator/src/org/jetbrains/kotlin/js/translate/utils/BindingUtils.java b/js/js.translator/src/org/jetbrains/kotlin/js/translate/utils/BindingUtils.java index f1f6cf0d4fc..24d10eb15a1 100644 --- a/js/js.translator/src/org/jetbrains/kotlin/js/translate/utils/BindingUtils.java +++ b/js/js.translator/src/org/jetbrains/kotlin/js/translate/utils/BindingUtils.java @@ -140,7 +140,8 @@ public final class BindingUtils { } public static boolean isVariableReassignment(@NotNull BindingContext context, @NotNull KtExpression expression) { - return BindingContextUtils.getNotNull(context, BindingContext.VARIABLE_REASSIGNMENT, expression); + Boolean result = context.get(BindingContext.VARIABLE_REASSIGNMENT, expression); + return (result != null) ? result : false; } @Nullable