Fix 1.0-compatibility mode for JDK dependendent built-ins

Do not report UNSUPPORTED_FEATURE if there is no overridden descriptors
E.g. in case of property accessors
This commit is contained in:
Denis Zharkov
2017-01-19 11:30:52 +03:00
parent 7696d20adf
commit bbb5d4eb0f
2 changed files with 13 additions and 1 deletions
@@ -56,7 +56,8 @@ object AdditionalBuiltInsMemberOverrideDeclarationChecker : DeclarationChecker {
val resultingDescriptor = descriptor as? CallableMemberDescriptor ?: return
val overrideKeyword = declaration.modifierList?.getModifier(KtTokens.OVERRIDE_KEYWORD) ?: return
if (resultingDescriptor.original.overriddenDescriptors.all { it.isAdditionalBuiltInMember() }) {
val overriddenDescriptors = resultingDescriptor.original.overriddenDescriptors
if (overriddenDescriptors.isNotEmpty() && overriddenDescriptors.all { it.isAdditionalBuiltInMember() }) {
diagnosticHolder.report(Errors.UNSUPPORTED_FEATURE.on(overrideKeyword, LanguageFeature.AdditionalBuiltInsMembers))
}
}