PropertySetterDescriptor setter = propertyDescriptor.getSetter();
int flags = setter == null ? modifiers : getVisibilityAccessFlag(setter);
flags |= (propertyDescriptor.getModality() == Modality.ABSTRACT ? ACC_ABSTRACT : 0);
generateDefaultSetter(propertyDescriptor, flags, p);
}
<BUG>public void generateDefaultSetter(PropertyDescriptor propertyDescriptor, int flags, PsiElement origin) {
if (propertyDescriptor.getKind() == CallableMemberDescriptor.Kind.FAKE_OVERRIDE) {
throw new IllegalStateException("must not generate code for fake overrides");
}</BUG>
if (kind == OwnerKind.TRAIT_IMPL) {

PropertySetterDescriptor setter = propertyDescriptor.getSetter();
int flags = setter == null ? modifiers : getVisibilityAccessFlag(setter);
flags |= (propertyDescriptor.getModality() == Modality.ABSTRACT ? ACC_ABSTRACT : 0);
generateDefaultSetter(propertyDescriptor, flags, p);
}
public void generateDefaultSetter(PropertyDescriptor propertyDescriptor, int flags, PsiElement origin) {
checkMustGenerateCode(propertyDescriptor);
if (kind == OwnerKind.TRAIT_IMPL) {
