// reassign-in-if.el — acceptance test for bare reassignment inside if-body.
//
// Before fix: parser dropped `x = "override"` on the floor and codegen emitted
// three orphan expressions (`x; EL_NULL; EL_STR("override");`). Effective store
// was lost, so the function returned "default".
//
// After fix: parse_stmt recognises `Ident "=" Expr` as an Assign statement and
// codegen emits a real C assignment, so the function returns "override".

fn test_reassign() -> String {
    let x: String = "default"
    if true {
        x = "override"
    }
    return x
}

fn main() -> Int {
    let r: String = test_reassign()
    print(r)
    return 0
}
