IR: remove field fake overrides

This commit is contained in:
Georgy Bronnikov
2020-06-15 14:57:17 +03:00
parent 1bb3f60bad
commit c015463926
41 changed files with 67 additions and 192 deletions
@@ -1234,7 +1234,6 @@ abstract class IrFileDeserializer(val logger: LoggingContext, val builtIns: IrBu
flags.isFinal,
flags.isExternal,
flags.isStatic,
flags.isFakeOverride
)
}.usingParent {
if (proto.hasInitializer())
@@ -69,15 +69,13 @@ public class IrFlags extends Flags {
ProtoBuf.Visibility visibility,
boolean isFinal,
boolean isExternal,
boolean isStatic,
boolean isFakeOverride
boolean isStatic
) {
return HAS_ANNOTATIONS.toFlags(hasAnnotations)
| VISIBILITY.toFlags(visibility)
| IS_FINAL.toFlags(isFinal)
| IS_EXTERNAL_FIELD.toFlags(isExternal)
| IS_STATIC.toFlags(isStatic)
| IS_FAKE_OVERRIDE.toFlags(isFakeOverride)
;
}
@@ -191,13 +191,12 @@ inline class FieldFlags(val flags: Long) {
val isFinal: Boolean get() = IrFlags.IS_FINAL.get(flags.toInt())
val isExternal: Boolean get() = IrFlags.IS_EXTERNAL_FIELD.get(flags.toInt())
val isStatic: Boolean get() = IrFlags.IS_STATIC.get(flags.toInt())
val isFakeOverride: Boolean get() = IrFlags.IS_FAKE_OVERRIDE.get(flags.toInt())
companion object {
fun encode(field: IrField): Long {
return field.run {
val visibility = ProtoEnumFlags.visibility(visibility)
IrFlags.getFieldFlags(annotations.isNotEmpty(), visibility, isFinal, isExternal, isStatic, isFakeOverride).toLong()
IrFlags.getFieldFlags(annotations.isNotEmpty(), visibility, isFinal, isExternal, isStatic).toLong()
}
}