Closed yuyi98 closed 2 days ago
This PR fix infix expr and/or operate unnecessary evaluate (fix #21590).
fn f(s string) !int { if s == '' { return error('invalid s') } return s.len } fn main() { v := '' x := v != 'xyz' || f(v)! < f('abc')! dump(x) assert x y := v == 'xyz' && f(v)! < f('abc')! dump(y) assert !y } PS D:\Test\v\tt1> v run . [.\\tt1.v:11] x: true [.\\tt1.v:15] y: false
This PR fix infix expr and/or operate unnecessary evaluate (fix #21590).