struct S1 {
mut:
i int
}
struct S2 {
type Sum = S1 | S2
fn f(sum Sum) {
if mut sum is S1 {
sum.i++
if sum is S1 {
a := [sum]
if a[0] is S2 {