Variables
  #self#[36m::Core.Const(Main.anonymous.foo)[39m
  x[36m::Int64[39m
  y[36m::Int64[39m
  #1[36m::Main.anonymous.var"#1#2"[39m
  v[36m::Union{}[39m
  u[91m[1m::Any[22m[39m
  z@_7[91m[1m::Core.Box[22m[39m
  z@_8[36m::Union{}[39m
  z@_9[36m::Union{}[39m
  z@_10[36m::Union{}[39m

Body[36m::Union{}[39m
    [33m @ foobar.jl:2 within `foo`[39m
[90m1 ──[39m       Core.NewvarNode(:(#1))
[90m│   [39m       Core.NewvarNode(:(v))
[90m│   [39m       Core.NewvarNode(:(u))
[90m│   [39m       (z@_7 = Core.Box())
[90m│   [39m %5  = (x + y)[36m::Int64[39m
[90m└───[39m       Core.setfield!(z@_7, :contents, %5)
    [33m @ foobar.jl:3 within `foo`[39m
[90m2 ┄─[39m %7  = Core.isdefined(z@_7, :contents)[36m::Bool[39m
[90m└───[39m       goto #4 if not %7
[90m3 ──[39m       goto #5
[90m4 ──[39m       Core.NewvarNode(:(z@_8))
[90m└───[39m       z@_8
[90m5 ┄─[39m %12 = Core.getfield(z@_7, :contents)[91m[1m::Any[22m[39m
[90m│   [39m %13 = (%12 < 4)[91m[1m::Any[22m[39m
[90m└───[39m       goto #10 if not %13
    [33m @ foobar.jl:4 within `foo`[39m
[90m6 ──[39m %15 = Core.isdefined(z@_7, :contents)[36m::Bool[39m
[90m└───[39m       goto #8 if not %15
[90m7 ──[39m       goto #9
[90m8 ──[39m       Core.NewvarNode(:(z@_9))
[90m└───[39m       z@_9
[90m9 ┄─[39m %20 = Core.getfield(z@_7, :contents)[91m[1m::Any[22m[39m
[90m│   [39m %21 = (%20 + 1)[91m[1m::Any[22m[39m
[90m│   [39m       Core.setfield!(z@_7, :contents, %21)
[90m└───[39m       goto #2
    [33m @ foobar.jl:6 within `foo`[39m
[90m10 ─[39m       (#1 = %new(Main.anonymous.:(var"#1#2"), z@_7))
[90m│   [39m %25 = #1[36m::Main.anonymous.var"#1#2"[39m
[90m│   [39m       (u = (%25)(x))
[90m│ [39m  [33m @ foobar.jl:7 within `foo`[39m
[90m│   [39m %27 = Core.apply_type(Main.anonymous.Union, Main.anonymous.Int, Main.anonymous.Missing)[36m::Core.Const(Union{Missing, Int64})[39m
[90m│   [39m %28 = Core.apply_type(Main.anonymous.Ref, %27)[36m::Core.Const(Ref{Union{Missing, Int64}})[39m
[90m│   [39m %29 = (%28)(x)[36m::Base.RefValue{Union{Missing, Int64}}[39m
[90m└───[39m       (v = %29 + y)
