Skip to content

cmd/go: go:generate cannot replicate command #72728

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
soypat opened this issue Mar 7, 2025 · 2 comments
Closed

cmd/go: go:generate cannot replicate command #72728

soypat opened this issue Mar 7, 2025 · 2 comments
Labels
ToolProposal Issues describing a requested change to a Go tool or command-line program.

Comments

@soypat
Copy link

soypat commented Mar 7, 2025

Go version

go version go1.23.6 linux/amd64

Output of go env in your module/workspace:

GO111MODULE=''
GOARCH='amd64'
GOBIN=''
GOCACHE='/home/pato/.cache/go-build'
GOENV='/home/pato/.config/go/env'
GOEXE=''
GOEXPERIMENT=''
GOFLAGS=''
GOHOSTARCH='amd64'
GOHOSTOS='linux'
GOINSECURE=''
GOMODCACHE='/home/pato/go/pkg/mod'
GONOPROXY='gitlab.com/NovoSpace'
GONOSUMDB='gitlab.com/NovoSpace'
GOOS='linux'
GOPATH='/home/pato/go'
GOPRIVATE='gitlab.com/NovoSpace'
GOPROXY='https://proxy.golang.org,direct'
GOROOT='/usr/lib/go'
GOSUMDB='sum.golang.org'
GOTMPDIR=''
GOTOOLCHAIN='auto'
GOTOOLDIR='/usr/lib/go/pkg/tool/linux_amd64'
GOVCS=''
GOVERSION='go1.23.6'
GODEBUG=''
GOTELEMETRY='local'
GOTELEMETRYDIR='/home/pato/.config/go/telemetry'
GCCGO='gccgo'
GOAMD64='v1'
AR='ar'
CC='gcc'
CXX='g++'
CGO_ENABLED='1'
GOMOD='/home/pato/Documents/src/glay/go.mod'
GOWORK=''
CGO_CFLAGS='-O2 -g'
CGO_CPPFLAGS=''
CGO_CXXFLAGS='-O2 -g'
CGO_FFLAGS='-O2 -g'
CGO_LDFLAGS='-O2 -g'
PKG_CONFIG='pkg-config'
GOGCCFLAGS='-fPIC -m64 -pthread -Wl,--no-gc-sections -fmessage-length=0 -ffile-prefix-map=/tmp/go-build1467479216=/tmp/go-build -gno-record-gcc-switches'

What did you do?

Ran the following go generate: https://github.com/tinygo-org/glay/blob/main/generate_clay.go

Instructions:

go install modernc.org/ccgo/v4@latest
git clone git@github.com:tinygo-org/glay.git
cd glay
go generate .

What did you see happen?

$ go generate -x .
git submodule update --init
which ccgo
/home/pato/go/bin/ccgo
ccgo -D__attribute__\(x\)= -DCLAY_DISABLE_SIMD -no-main-minimize --package-name=clay -o=clay/clay.go clay/_clay.c
clay/clay/clay.h:246:9: unexpected 'enum', expected enum specifier
clay/clay/clay.h:251:1: unexpected '}', expected unary expression
clay/clay/clay.h:254:9: unexpected 'enum', expected enum specifier
clay/clay/clay.h:261:1: unexpected '}', expected unary expression
clay/clay/clay.h:264:9: unexpected 'enum', expected enum specifier
clay/clay/clay.h:271:1: unexpected '}', expected unary expression
clay/clay/clay.h:274:9: unexpected 'enum', expected enum specifier
clay/clay/clay.h:283:1: unexpected '}', expected unary expression
clay/clay/clay.h:287:27: unexpected identifier, expected ';'
clay/clay/clay.h:288:27: unexpected identifier, expected ';'
clay/clay/clay.h:304:22: unexpected identifier, expected ';'
clay/clay/clay.h:331:26: unexpected identifier, expected ';'
clay/clay/clay.h:339:9: unexpected 'enum', expected enum specifier
clay/clay/clay.h:346:1: unexpected '}', expected unary expression
clay/clay/clay.h:349:9: unexpected 'enum', expected enum specifier
clay/clay/clay.h:356:1: unexpected '}', expected unary expression
clay/clay/clay.h:375:36: unexpected identifier, expected ';'
clay/clay/clay.h:380:24: unexpected identifier, expected ';'
clay/clay/clay.h:403:9: unexpected 'enum', expected enum specifier
clay/clay/clay.h:413:1: unexpected '}', expected unary expression
clay/clay/clay.h:417:34: unexpected identifier, expected ';'
clay/clay/clay.h:418:34: unexpected identifier, expected ';'
clay/clay/clay.h:422:9: unexpected 'enum', expected enum specifier
clay/clay/clay.h:429:1: unexpected '}', expected unary expression
clay/clay/clay.h:432:9: unexpected 'enum', expected enum specifier
clay/clay/clay.h:441:1: unexpected '}', expected unary expression
clay/clay/clay.h:464:29: unexpected identifier, expected ';'
clay/clay/clay.h:470:34: unexpected identifier, expected ';'
clay/clay/clay.h:632:9: unexpected 'enum', expected enum specifier
clay/clay/clay.h:649:1: unexpected '}', expected unary expression
clay/clay/clay.h:672:28: unexpected identifier, expected ';'
clay/clay/clay.h:686:9: unexpected 'enum', expected enum specifier
clay/clay/clay.h:695:1: unexpected '}', expected unary expression
clay/clay/clay.h:706:38: unexpected identifier, expected ';'
clay/clay/clay.h:739:9: unexpected 'enum', expected enum specifier
clay/clay/clay.h:757:1: unexpected '}', expected unary expression
clay/clay/clay.h:770:20: unexpected identifier, expected ';'
clay/clay/clay.h:1039:9: unexpected 'enum', expected enum specifier
clay/clay/clay.h:1048:1: unexpected '}', expected unary expression
clay/clay/clay.h:1061:29: unexpected identifier, expected ';'
clay/clay/clay.h:1288:102: unexpected identifier, expected ')'
clay/clay/clay.h:1298:110: unexpected identifier, expected ')'
clay/clay/clay.h:1610:88: unexpected identifier, expected ')'
clay/clay/clay.h:2178:42: unexpected identifier, expected ';'
clay/clay/clay.h:2600:49: unexpected identifier, expected ';'
clay/clay/clay.h:2601:49: unexpected identifier, expected ';'
clay/clay/clay.h:2945:102: unexpected identifier, expected ')'
clay/clay/clay.h:3149:94: unexpected identifier, expected ')'
-: unexpected <EOF>, expected '}'
generate_clay.go:5: running "ccgo": exit status 1

What did you expect to see?

No error in ccgo, like what happens when you run the command directly from the command line. i.e:

$ ccgo -D__attribute__\(x\)= -DCLAY_DISABLE_SIMD -no-main-minimize --package-name=clay -o=clay/clay.go clay/_clay.c
# 0 exit code
@gabyhelp gabyhelp added the ToolProposal Issues describing a requested change to a Go tool or command-line program. label Mar 7, 2025
@seankhliao
Copy link
Member

That doesn't look like a bug in go

Unlike many projects, the Go project does not use GitHub Issues for general discussion or asking questions. GitHub Issues are used for tracking bugs and proposals only.

For questions please refer to https://github.com/golang/go/wiki/Questions

@seankhliao seankhliao closed this as not planned Won't fix, can't repro, duplicate, stale Mar 7, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ToolProposal Issues describing a requested change to a Go tool or command-line program.
Projects
None yet
Development

No branches or pull requests

3 participants