Go: x / tools / cmd / gorename: gorename falha com arquivos cgo-using

Criado em 22 mai. 2016  ·  3Comentários  ·  Fonte: golang/go

Responda a essas perguntas antes de enviar seu problema. Obrigado!

1. Qual versão do Go você está usando ( go version )?

go version go1.6 darwin/amd64

2. Qual sistema operacional e arquitetura de processador você está usando ( 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. O que você fez?

Dado este arquivo de entrada demo.go :

package main

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

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

Execute este comando: gorename -offset demo.go:#78 -to bar

4. O que você esperava ver?

Renomear sem erro: Renamed 2 occurrences in 1 file in 1 package.

5. O que você viu em vez disso?

Recebi este erro: gorename: -offset "demo.go:#78": no identifier at this position

Tools

Comentários muito úteis

Tendo o mesmo problema, há alguma solução alternativa para isso?

Todos 3 comentários

/ cc @alandonovan

Tendo o mesmo problema, há alguma solução alternativa para isso?

Não tenho certeza de quando (estou indo para 1.9.2), mas o erro mudou para: "gorename: não é possível renomear identificadores no arquivo gerado que contém o marcador NÃO EDITAR"

E demorei um pouco para descobrir que gorename não funciona em arquivos cgo. Deve pelo menos alterar a mensagem de erro se não houver uma solução em breve.

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

longzhizhi picture longzhizhi  ·  3Comentários

stub42 picture stub42  ·  3Comentários

jayhuang75 picture jayhuang75  ·  3Comentários

dominikh picture dominikh  ·  3Comentários

ianlancetaylor picture ianlancetaylor  ·  3Comentários