Author(s): David Chase
Last updated: 2017-01-10
Discussion at https://golang.org/issue/18597.
| package main | |
| // A delve stepping test. | |
| // dlv debug | |
| // b main.foo | |
| // c | |
| // s | |
| // s | |
| // Expect to be stopped in fmt.Printf or runtime.duffzero | |
| import "fmt" |
| dlv debug | |
| Type 'help' for list of commands. | |
| (dlv) b main.foo | |
| Breakpoint 1 set at 0x2058 for main.foo() ./code.go:14 | |
| (dlv) c | |
| > main.foo() ./code.go:14 (hits goroutine(1):1 total:1) (PC: 0x2058) | |
| 9: // Expect to be stopped in fmt.Printf or runtime.duffzero | |
| 10: import "fmt" | |
| 11: | |
| 12: var v int = 99 |
| dlv debug | |
| Type 'help' for list of commands. | |
| (dlv) b main.foo | |
| Breakpoint 1 set at 0x2058 for main.foo() ./code.go:14 | |
| (dlv) c | |
| > main.foo() ./code.go:14 (hits goroutine(1):1 total:1) (PC: 0x2058) | |
| 9: // Expect to be stopped in fmt.Printf or runtime.duffzero | |
| 10: import "fmt" | |
| 11: | |
| 12: var v int = 99 |
| package main | |
| import ( | |
| "fmt" | |
| "time" | |
| ) | |
| var v int = 99 | |
| var s string |
| dlv debug | |
| Type 'help' for list of commands. | |
| (dlv) b step_hide.go:35 | |
| Breakpoint 1 set at 0x237c for main.main() ./step_hide.go:35 | |
| (dlv) c | |
| > main.main() ./step_hide.go:35 (hits goroutine(1):1 total:1) (PC: 0x237c) | |
| 30: x := v | |
| 31: y := x * x | |
| 32: var z int | |
| 33: threads() |
| ~/GoogleDrive/work/tmp/ttmp$ dlv debug | |
| Type 'help' for list of commands. | |
| (dlv) b main.foo | |
| Breakpoint 1 set at 0x2058 for main.foo() ./step_hide.go:12 | |
| (dlv) c | |
| > main.foo() ./step_hide.go:12 (hits goroutine(11):1 total:3) (PC: 0x2058) | |
| > main.foo() ./step_hide.go:12 (hits goroutine(7):1 total:3) (PC: 0x2058) | |
| > main.foo() ./step_hide.go:12 (hits goroutine(5):1 total:3) (PC: 0x2058) | |
| 7: | |
| 8: var v int = 99 |
Author(s): David Chase
Last updated: 2017-01-10
Discussion at https://golang.org/issue/18597.
| echo "interface I1 { }" > I1.java | |
| echo "interface I2 { }" > I2.java | |
| echo "interface I3 { }" > I3.java | |
| echo "class I1I2 implements I1, I2 { }" > I1I2.java_good | |
| echo "class I1I2 implements I1 { }" > I1I2.java_bad | |
| echo "class I1I3I2 implements I1, I3, I2 { }" > I1I3I2.java | |
| cat > tricky.java <<'//EOF' | |
| class tricky { | |
| I2 i2; |
| #!/bin/bash | |
| # filter output of multiple benchmarking experiments into a spreadsheet-friendly form | |
| egrep '^[[a-zA-Z/]' "$1" | egrep -v "B/s|old speed" | \ | |
| sed -e '1,$s/[^0-9]*s ±[ 0-9]*%//g' | sed -e '1,$s/(p.*)//g' | \ | |
| sed -e '1,$s?[-_.a-z/]*git-codereview: changed to branch ?,?g' | \ | |
| sed -e '1,$s/ * /,/g' | \ | |
| sed -e '1,$s/,~//g' | \ | |
| sed -e '1,$s/,[-+][0-9.]*%//g' | \ |
| #!/bin/bash | |
| # Run with environment variable "variant" set to some useful string legal in a file name. | |
| N=25 | |
| if [[ `arch` == "ppc64le" ]] ; then | |
| dohttp= | |
| else | |
| dohttp=1 | |
| done |