## SHOULD_PASS:EXECUTE
@persist Ran:number

Ran = 0

function number increment() {
    if (Ran) {
        error("Ran twice")
    } else {
        Ran = 1
        return 1
    }
}

X = increment()

Ran = 0

X = Y = increment()

Z = 1

Z /= 2

assert(Z == 0.5, Z:toString())