vndr icon indicating copy to clipboard operation
vndr copied to clipboard

Latest vndr picks up lots more stuff (due to .c file inclusion)

Open ijc opened this issue 6 years ago • 2 comments

Rerunning vndr on containerd with the latest version picked up a lot of extra stuff, I think because of #69/#70. Is this expected or is it going further than was intended?

See https://github.com/containerd/containerd/pull/2319/commits/623407a3999d7caeb96bedbd531f699f1c420eb6 which has stat of:

vendor/github.com/docker/docker/contrib/README.md             |    4 +
 vendor/github.com/docker/docker/contrib/nnp-test/nnp-test.c   |   10 +
 vendor/github.com/docker/docker/contrib/syscall-test/acct.c   |   16 +
 vendor/github.com/docker/docker/contrib/syscall-test/exit32.s |    7 +
 vendor/github.com/docker/docker/contrib/syscall-test/ns.c     |   63 ++++
 vendor/github.com/docker/docker/contrib/syscall-test/raw.c    |   14 +
 vendor/github.com/docker/docker/contrib/syscall-test/setgid.c |   11 +
 vendor/github.com/docker/docker/contrib/syscall-test/setuid.c |   11 +
 vendor/github.com/docker/docker/contrib/syscall-test/socket.c |   30 ++
 vendor/github.com/docker/docker/contrib/syscall-test/userns.c |   63 ++++
 vendor/golang.org/x/crypto/otr/libotr_test_helper.c           |  197 +++++++++++
 vendor/golang.org/x/crypto/otr/otr.go                         | 1415 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 vendor/golang.org/x/crypto/otr/smp.go                         |  572 ++++++++++++++++++++++++++++++++
 vendor/golang.org/x/crypto/ssh/test/doc.go                    |    7 +
 vendor/golang.org/x/crypto/ssh/test/sshd_test_pw.c            |  173 ++++++++++
 vendor/golang.org/x/sys/windows/svc/event.go                  |   48 +++
 vendor/golang.org/x/sys/windows/svc/go12.c                    |   24 ++
 vendor/golang.org/x/sys/windows/svc/go12.go                   |   11 +
 vendor/golang.org/x/sys/windows/svc/go13.go                   |   31 ++
 vendor/golang.org/x/sys/windows/svc/security.go               |   62 ++++
 vendor/golang.org/x/sys/windows/svc/service.go                |  363 +++++++++++++++++++++
 vendor/golang.org/x/sys/windows/svc/sys_386.s                 |   68 ++++
 vendor/golang.org/x/sys/windows/svc/sys_amd64.s               |   42 +++
 vendor/k8s.io/kubernetes/build/README.md                      |  110 +++++++
 vendor/k8s.io/kubernetes/build/pause/orphan.c                 |   36 ++
 vendor/k8s.io/kubernetes/build/pause/pause.c                  |   68 ++++
 26 files changed, 3456 insertions(+)

ijc avatar Apr 30 '18 23:04 ijc

Seems this change is to accommodate a case where someone was directly including a .c file from a directory with no .h file using cgo. See https://github.com/leslie-wang/go-mediainfo/blob/master/mediainfo/mediainfo.go#L7.

While including more unused stuff is not ideal, since cgo supports this case vndr should as well. Parsing the cgo includes would be too ugly :)

dmcgowan avatar Apr 30 '18 23:04 dmcgowan

Ah yes, I forgot that the cgo stuff would be opaque to the Go AST.

ijc avatar Apr 30 '18 23:04 ijc