The bug is not in kotlin which has its rights to do anything like this, but Java libraries which use reflection introspections of a class sometimes do not expect this to be possible and ending with a bug. This is what happened in Jackson which ends up without either the property or the private getter.