Re: [go-nuts] Use and redeclare same variable in block

2018-01-28 Thread Ian Lance Taylor
On Sun, Jan 28, 2018 at 12:53 AM, Wenbin Shang wrote: > > The following code: > > package main > > import "fmt" > > func main() { > var i int > fmt.Println(i) > if true { > i = 5 > i, j := 3, 4 > fmt.Println(i, j) > } > fmt.Println(i) > } > > Output: > 0

[go-nuts] Use and redeclare same variable in block

2018-01-28 Thread Wenbin Shang
The following code: package main import "fmt" func main() { var i int fmt.Println(i) if true { i = 5 i, j := 3, 4 fmt.Println(i, j) } fmt.Println(i) } Output: 0 3 4 5 Is this a reasonable behavior? I intuitively thought only j is declared in if bloc