Support platform/impl modifiers for properties

Do not allow platform properties to have backing fields, initializers, be
delegated, lateinit or const, or have accessors with bodies
This commit is contained in:
Alexander Udalov
2016-11-01 18:54:00 +03:00
parent af1264a46d
commit ce9691cd2b
23 changed files with 206 additions and 58 deletions
@@ -50,16 +50,18 @@ abstract class IrDelegateDescriptorBase(
delegateType: KotlinType
) : PropertyDescriptorImpl(
containingDeclaration,
null, // original
/* original = */ null,
Annotations.EMPTY,
Modality.FINAL,
Visibilities.PRIVATE,
false, // isVar
/* isVar = */ false,
name,
CallableMemberDescriptor.Kind.SYNTHESIZED,
SourceElement.NO_SOURCE,
false, // lateInit
false // isConst
/* lateInit = */ false,
/* isConst = */ false,
/* isPlatform = */ false,
/* isImpl = */ false
) {
init {
setOutType(delegateType)