Go: x/рдЙрдкрдХрд░рдг/cmd/gorename: gorename cgo-рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рд╛рде рд╡рд┐рдлрд▓ рд░рд╣рддрд╛ рд╣реИ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 22 рдордИ 2016  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: golang/go

рдЕрдкрдиреА рд╕рдорд╕реНрдпрд╛ рд╕рдмрдорд┐рдЯ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдХреГрдкрдпрд╛ рдЗрди рд╕рд╡рд╛рд▓реЛрдВ рдХреЗ рдЬрд╡рд╛рдм рджреЗрдВ. рдзрдиреНрдпрд╡рд╛рдж!

1. рдЖрдк рдЧреЛ рдХреЗ рдХрд┐рд╕ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ ( go version )?

go version go1.6 darwin/amd64

2. рдЖрдк рдХрд┐рд╕ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдФрд░ рдкреНрд░реЛрд╕реЗрд╕рд░ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ ( go env )?

GOARCH="amd64"
GOBIN=""
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/ash/code/go"
GORACE=""
GOROOT="/Users/ash/.homebrew/Cellar/go/1.6/libexec"
GOTOOLDIR="/Users/ash/.homebrew/Cellar/go/1.6/libexec/pkg/tool/darwin_amd64"
GO15VENDOREXPERIMENT="1"
CC="clang"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fno-common"
CXX="clang++"
CGO_ENABLED="1"

3. рддреБрдордиреЗ рдХреНрдпрд╛ рдХрд┐рдпрд╛?

рдЗрд╕ рдЗрдирдкреБрдЯ рдлрд╝рд╛рдЗрд▓ рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП demo.go :

package main

// #include <unistd.h>
import "C"
import "fmt"

func main() {
    foo := 1
    C.close(2)
    fmt.Println(foo)
}

рдпрд╣ рдЖрджреЗрд╢ рдЪрд▓рд╛рдПрдБ: gorename -offset demo.go:#78 -to bar

4. рдЖрдкрдиреЗ рдХреНрдпрд╛ рджреЗрдЦрдиреЗ рдХреА рдЙрдореНрдореАрдж рдХреА рдереА?

рдпрд╣ рддреНрд░реБрдЯрд┐ рдХреЗ рдмрд┐рдирд╛ рдирд╛рдо рдмрджрд▓рддрд╛ рд╣реИ: Renamed 2 occurrences in 1 file in 1 package.

5. рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдЖрдкрдиреЗ рдХреНрдпрд╛ рджреЗрдЦрд╛?

рдореБрдЭреЗ рдпрд╣ рддреНрд░реБрдЯрд┐ рдорд┐рд▓реА: gorename: -offset "demo.go:#78": no identifier at this position

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реЛрдиреЗ рдкрд░, рдХреНрдпрд╛ рдЗрд╕ рдкрд░ рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рд╣реИ?

рд╕рднреА 3 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

/рд╕реАрд╕реА @alandonovan

рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реЛрдиреЗ рдкрд░, рдХреНрдпрд╛ рдЗрд╕ рдкрд░ рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рд╣реИ?

рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдХрдм (рдореИрдВ 1.9.2 рдкрд░ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВ) рд▓реЗрдХрд┐рди рддреНрд░реБрдЯрд┐ рдмрджрд▓ рдЧрдИ: "gorename: рдорд╛рд░реНрдХрд░ рд╕рдВрдкрд╛рджрд┐рдд рди рдХрд░реЗрдВ рдпреБрдХреНрдд рдЬреЗрдирд░реЗрдЯ рдХреА рдЧрдИ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛рдУрдВ рдХрд╛ рдирд╛рдо рдирд╣реАрдВ рдмрджрд▓ рд╕рдХрддрд╛"

рдФрд░ рдореБрдЭреЗ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдореЗрдВ рдереЛрдбрд╝рд╛ рд╕рдордп рд▓рдЧрд╛ рдХрд┐ рдЧреЛрд░рдирд╛рдо рд╕реАрдЬреАрдУ рдлрд╛рдЗрд▓реЛрдВ рдкрд░ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдХрдо рд╕реЗ рдХрдо рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рдХреЛ рдмрджрд▓рдирд╛ рдЪрд╛рд╣рд┐рдП рдпрджрд┐ рдЬрд▓реНрдж рд╣реА рдХреЛрдИ рд╕реБрдзрд╛рд░ рдирд╣реАрдВ рд╣реЛрдиреЗ рд╡рд╛рд▓рд╛ рд╣реИред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

ajstarks picture ajstarks  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

go101 picture go101  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

michaelsafyan picture michaelsafyan  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

jayhuang75 picture jayhuang75  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

stub42 picture stub42  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ