blob: b0128bfd1e4fe6ad69e1e20271c72eb92100dbf6 [file]
package parametersideeffect
func argumentWithSideEffectLHS() int {
n := 0
f := func() int { n++; return n }
x := f()
if f() > x { // condition contains expression with side-effect
x = f()
}
return x
}
func argumentWithSideEffectRHS() int {
n := 0
f := func() int { n++; return n }
x := f()
if x < f() { // condition contains expression with side-effect
x = f()
}
return x
}
func onlyFirstAssignmentHasSideEffect() int {
n := 0
f := func() int { n++; return n }
x := max(f(),
// want "if statement can be modernized using max"
n)
return x
}