val test1: Int
  field = invoke(/* <this> = A, */ i = 42)
  get

val test2: Int
  field = invoke(/* <this> = En.X, */ i = 42)
  get

enum class En : Enum<En> {
  X = En()

  private constructor() /* primary */ {
    super/*Enum*/<En>()
    /* <init>() */

  }

  /* static */ fun valueOf(value: String): En /* Synthetic body for ENUM_VALUEOF */

  /* static */ fun values(): Array<En> /* Synthetic body for ENUM_VALUES */

  /* static */ val entries: EnumEntries<En>
    get(): EnumEntries<En> /* Synthetic body for ENUM_ENTRIES */

}

object A {
  private constructor() /* primary */ {
    super/*Any*/()
    /* <init>() */

  }

}

operator fun A.invoke(i: Int): Int {
  return i
}

operator fun En.invoke(i: Int): Int {
  return i
}

