Skip to content
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

gccgo: etcd-fs doesn't compile with gccgo, builds fine with gc #28672

Closed
glaubitz opened this issue Nov 8, 2018 · 5 comments
Closed

gccgo: etcd-fs doesn't compile with gccgo, builds fine with gc #28672

glaubitz opened this issue Nov 8, 2018 · 5 comments
Labels
FrozenDueToAge NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one.
Milestone

Comments

@glaubitz
Copy link

glaubitz commented Nov 8, 2018

Trying to build ```etcd-fs`` with gccgo fails with:

github.com/hanwen/go-fuse/splice
github.com/coreos/go-etcd/etcd
golang.org/x/sys/unix
github.com/hanwen/go-fuse/fuse
github.com/hanwen/go-fuse/fuse/nodefs
github.com/hanwen/go-fuse/fuse/pathfs
github.com/xetorthio/etcd-fs/src/etcdfs
# github.com/xetorthio/etcd-fs/src/etcdfs
src/github.com/xetorthio/etcd-fs/src/etcdfs/file.go:21:10: error: incompatible type for return value 1 (missing method 'GetLk')
   return file
          ^

Full log available at: https://people.debian.org/~glaubitz/gccgo-logs/etcd-fs_0.0+git20140621.0.395eacb-4_amd64.build

@gopherbot gopherbot added this to the Gccgo milestone Nov 8, 2018
@bradfitz
Copy link
Contributor

bradfitz commented Nov 9, 2018

It fails with gc in the same way, though.

Everything fails much differently at each of those dependencies' HEAD revisions (so go get -u won't reproduce this), but if I go get -u and then git reset --hard $REV the following to the same as in your logs,

  • 395eacb for etcd-fs, which is recent
  • c029b69 for hanwen/go-fuse
  • ef5ddc991ddbd51fcdb771c445c63789b5d00f5d for coreos/go-etcd

Then I get the same with gc:

bradfitz@gdev:~/src/github.com/xetorthio/etcd-fs/src/etcdfs$ go install .
# github.com/xetorthio/etcd-fs/src/etcdfs
./file.go:21:3: cannot use file (type *etcdFile) as type nodefs.File in return argument:
        *etcdFile does not implement nodefs.File (missing GetLk method)

So I'm not sure if there's a bug here?

You're sure that's building with the same set of revisions with the Debian "golang" gc compiler?

/cc @ianlancetaylor @xetorthio @hanwen

@bradfitz bradfitz added the NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. label Nov 9, 2018
@glaubitz
Copy link
Author

glaubitz commented Nov 9, 2018

You're sure that's building with the same set of revisions with the Debian "golang" gc compiler?

Yes. I'll re-test with gc. Just a second, please. The last build with gc on the build infrastructure was 127 days ago, so something might have changed.

@glaubitz
Copy link
Author

glaubitz commented Nov 9, 2018

Just a fresh rebuild with gc and, indeed, it also fails there:

github.com/coreos/go-etcd/etcd
github.com/xetorthio/etcd-fs/src/etcdfs
# github.com/xetorthio/etcd-fs/src/etcdfs
src/github.com/xetorthio/etcd-fs/src/etcdfs/file.go:21:3: cannot use file (type *etcdFile) as type nodefs.File in return argument:
        *etcdFile does not implement nodefs.File (missing GetLk method)

For reference, the last successful build was in July on the automatic build infrastructure: https://buildd.debian.org/status/fetch.php?pkg=etcd-fs&arch=i386&ver=0.0%2Bgit20140621.0.395eacb-4&stamp=1530781427&raw=0

@bradfitz
Copy link
Contributor

bradfitz commented Nov 9, 2018

Okay, I'll close this bug, as this is a distro issue (finding a set of revisions that's good to ship), not a compiler issue (the two main compilers agree).

@bradfitz bradfitz closed this as completed Nov 9, 2018
@ianlancetaylor
Copy link
Contributor

@bradfitz Thanks.

@golang golang locked and limited conversation to collaborators Nov 9, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
FrozenDueToAge NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one.
Projects
None yet
Development

No branches or pull requests

4 participants