FILE /for.kt
  FUN public fun testEmpty(ss: kotlin.collections.List<kotlin.String>): kotlin.Unit
    BLOCK_BODY
      BLOCK type=kotlin.Unit origin=FOR_LOOP
        VAR IR_TEMPORARY_VARIABLE val tmp0_iterator: kotlin.collections.Iterator<kotlin.String>
          CALL 'iterator(): Iterator<String>' type=kotlin.collections.Iterator<kotlin.String> origin=FOR_LOOP_ITERATOR
            $this: GET_VAR 'value-parameter ss: List<String>' type=kotlin.collections.List<kotlin.String> origin=null
        WHILE label=null origin=FOR_LOOP_INNER_WHILE
          condition: CALL 'hasNext(): Boolean' type=kotlin.Boolean origin=FOR_LOOP_HAS_NEXT
            $this: GET_VAR 'tmp0_iterator: Iterator<String>' type=kotlin.collections.Iterator<kotlin.String> origin=null
          body: BLOCK type=kotlin.Unit origin=FOR_LOOP_INNER_WHILE
            VAR val s: kotlin.String
              CALL 'next(): String' type=kotlin.String origin=FOR_LOOP_NEXT
                $this: GET_VAR 'tmp0_iterator: Iterator<String>' type=kotlin.collections.Iterator<kotlin.String> origin=null
  FUN public fun testIterable(ss: kotlin.collections.List<kotlin.String>): kotlin.Unit
    BLOCK_BODY
      BLOCK type=kotlin.Unit origin=FOR_LOOP
        VAR IR_TEMPORARY_VARIABLE val tmp0_iterator: kotlin.collections.Iterator<kotlin.String>
          CALL 'iterator(): Iterator<String>' type=kotlin.collections.Iterator<kotlin.String> origin=FOR_LOOP_ITERATOR
            $this: GET_VAR 'value-parameter ss: List<String>' type=kotlin.collections.List<kotlin.String> origin=null
        WHILE label=null origin=FOR_LOOP_INNER_WHILE
          condition: CALL 'hasNext(): Boolean' type=kotlin.Boolean origin=FOR_LOOP_HAS_NEXT
            $this: GET_VAR 'tmp0_iterator: Iterator<String>' type=kotlin.collections.Iterator<kotlin.String> origin=null
          body: BLOCK type=kotlin.Unit origin=FOR_LOOP_INNER_WHILE
            VAR val s: kotlin.String
              CALL 'next(): String' type=kotlin.String origin=FOR_LOOP_NEXT
                $this: GET_VAR 'tmp0_iterator: Iterator<String>' type=kotlin.collections.Iterator<kotlin.String> origin=null
            BLOCK type=kotlin.Unit origin=null
              CALL 'println(Any?): Unit' type=kotlin.Unit origin=null
                message: GET_VAR 's: String' type=kotlin.String origin=null
  FUN public fun testDestructuring(pp: kotlin.collections.List<kotlin.Pair<kotlin.Int, kotlin.String>>): kotlin.Unit
    BLOCK_BODY
      BLOCK type=kotlin.Unit origin=FOR_LOOP
        VAR IR_TEMPORARY_VARIABLE val tmp0_iterator: kotlin.collections.Iterator<kotlin.Pair<kotlin.Int, kotlin.String>>
          CALL 'iterator(): Iterator<Pair<Int, String>>' type=kotlin.collections.Iterator<kotlin.Pair<kotlin.Int, kotlin.String>> origin=FOR_LOOP_ITERATOR
            $this: GET_VAR 'value-parameter pp: List<Pair<Int, String>>' type=kotlin.collections.List<kotlin.Pair<kotlin.Int, kotlin.String>> origin=null
        WHILE label=null origin=FOR_LOOP_INNER_WHILE
          condition: CALL 'hasNext(): Boolean' type=kotlin.Boolean origin=FOR_LOOP_HAS_NEXT
            $this: GET_VAR 'tmp0_iterator: Iterator<Pair<Int, String>>' type=kotlin.collections.Iterator<kotlin.Pair<kotlin.Int, kotlin.String>> origin=null
          body: BLOCK type=kotlin.Unit origin=FOR_LOOP_INNER_WHILE
            VAR IR_TEMPORARY_VARIABLE val tmp1_loop_parameter: kotlin.Pair<kotlin.Int, kotlin.String>
              CALL 'next(): Pair<Int, String>' type=kotlin.Pair<kotlin.Int, kotlin.String> origin=FOR_LOOP_NEXT
                $this: GET_VAR 'tmp0_iterator: Iterator<Pair<Int, String>>' type=kotlin.collections.Iterator<kotlin.Pair<kotlin.Int, kotlin.String>> origin=null
            VAR val i: kotlin.Int
              CALL 'component1(): Int' type=kotlin.Int origin=COMPONENT_N(index=1)
                $this: GET_VAR 'tmp1_loop_parameter: Pair<Int, String>' type=kotlin.Pair<kotlin.Int, kotlin.String> origin=null
            VAR val s: kotlin.String
              CALL 'component2(): String' type=kotlin.String origin=COMPONENT_N(index=2)
                $this: GET_VAR 'tmp1_loop_parameter: Pair<Int, String>' type=kotlin.Pair<kotlin.Int, kotlin.String> origin=null
            BLOCK type=kotlin.Unit origin=null
              CALL 'println(Int): Unit' type=kotlin.Unit origin=null
                message: GET_VAR 'i: Int' type=kotlin.Int origin=null
              CALL 'println(Any?): Unit' type=kotlin.Unit origin=null
                message: GET_VAR 's: String' type=kotlin.String origin=null
