0

By running the following command in cmd or vscode:

go get -u -v github.com/mdempsky/gocode

I received the following console error:

crypto/internal/cipherhw
crypto/rc4
runtime
# crypto/rc4
c:\go\src\crypto\rc4\rc4_asm.go:13:18: (*Cipher).XORKeyStream redeclared 
in this block
previous declaration at c:\go\src\crypto\rc4\rc4.go:61:6

I have already checked the GOPATH, and GOROOT. I also uninstalled and installed go and VSCode again and was unsuccessful.

3
  • Does this work in a terminal? Commented Aug 21, 2019 at 3:43
  • @ollien does not work Commented Aug 21, 2019 at 10:59
  • You have a corrupt Go installation. As part of issue 25417 the assembly rc4 implementation was removed. You probably have a left over rc4_asm.go file from a previous version of Go. You should completly/cleanly uninstall Go and re-install Go. Commented Aug 21, 2019 at 14:31

1 Answer 1

1

This is a declaration error, if you inspect the error code you can fix it yourself.

crypto\rc4\rc4_asm.go:13:18: (*Cipher).XORKeyStream redeclared in this block

previous declaration at c:\go\src\crypto\rc4\rc4.go:61:6

The first line states that (*Cipher).XORKeyStream was redeclared on line 13 of the file rc4_asm.go

So if you inspect the rc4.go, file at line 61, you will find that (*Cipher).XORKeyStream has been defined more than once. Keep the definition you need, and go build again.

I should note that one of the steps of go getting is a go build, so you don't have to worry about re-downloading again and again.

I would try removing the download and trying again however, I managed to use that command and got an error free build.

Sign up to request clarification or add additional context in comments.

1 Comment

"Keep the definition you need, and go build again" is bad advice; this is part of the Go standard library and a build failure there suggests a corrupt Go installation.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.