Overridable val should not be treated as constant

#KT-9443 fixed
This commit is contained in:
Alexey Tsvetkov
2015-10-26 18:04:22 +03:00
parent 0a69cca066
commit 294559a94f
6 changed files with 56 additions and 0 deletions
@@ -518,6 +518,8 @@ private class ConstantExpressionEvaluatorVisitor(
if (resolvedCall != null) {
val callableDescriptor = resolvedCall.getResultingDescriptor()
if (callableDescriptor is VariableDescriptor) {
if (callableDescriptor is PropertyDescriptor && callableDescriptor.modality.isOverridable) return null
val variableInitializer = callableDescriptor.getCompileTimeInitializer() ?: return null
return createConstant(