//
// Source
// ------------------------------------------

import androidx.compose.runtime.Composable
import androidx.compose.runtime.NonRestartableComposable
import androidx.compose.runtime.remember

@NonRestartableComposable
@Composable
fun Example() {
    val x = remember { Unstable() }
    val shouldNotMemoize = x::foo
}

//
// Transformed IR
// ------------------------------------------

@NonRestartableComposable
@Composable
@FunctionKeyMeta(key = 1292064820, startOffset = 253, endOffset = 376)
fun Example(%composer: Composer?, %changed: Int) {
  sourceInformationMarkerStart(%composer, <>, "C(Example)<rememb...>,<x::foo>:Test.kt")
  if (isTraceInProgress()) {
    traceEventStart(<>, %changed, -1, <>)
  }
  val x = <block>{
    sourceInformationMarkerStart(%composer, <>, "CC(remember):Test.kt#9igjgp")
    val tmp0_group = %composer.cache(false) {
      Unstable()
    }
    sourceInformationMarkerEnd(%composer)
    tmp0_group
  }
  val shouldNotMemoize = <block>{
    val tmp0 = x
    sourceInformationMarkerStart(%composer, <>, "CC(remember):Test.kt#9igjgp")
    val tmp1_group = %composer.cache(%composer.changedInstance(tmp0)) {
      tmp0::foo
    }
    sourceInformationMarkerEnd(%composer)
    tmp1_group
  }
  if (isTraceInProgress()) {
    traceEventEnd()
  }
  sourceInformationMarkerEnd(%composer)
}
