Why did you choose to decrement n twice on each iteration? What happens when n is odd vs even now?
On my machine I used this code:
package main
import "fmt"
func below(n uint64 ) {
for n>0 {
fmt.Println(n-1)
n--
}
}
func main() {
below(10);
below(0);
}
The actual code I put into the bugfix site was: func below(n uint64, to chan uint64) {
for n>0 {
to <- n-1
n--
}
close(to)
}
but when writing this comment I went back and didn't modify the for loop to be a while.It doesn't know what's wrong in the code you submitted... it is not understanding deeply what's wrong with your code. It's not some huge multi-terabyte language model analyzing arbitrary code, or whatever.
It just knows your code is wrong and gives you a clue so you can try again.
Here is an example of what's running behind the scenes, to help you understand:
https://bugfix-66.com/contribute
The above code is what's being used for Bug #1:
https://bugfix-66.com/a6cb1e062ae0fdc47b43ec489aa40a958db728...
Is that pretty clear?
I'll tell you what's wrong with your code.
func below(n uint64, to chan uint64) {
for ; n >= 0; n-- {
var t = n - 1
to <- n
}
close(to)
}
I've run this locally with to <- n replaced with a print statement and it works with unsigned integers.