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

cmd/go: go test -fullpath should include full paths for build errors too #60451

Open
rogpeppe opened this issue May 26, 2023 · 3 comments
Open
Milestone

Comments

@rogpeppe
Copy link
Contributor

What version of Go are you using (go version)?

f90b4cd6554f4f20280aa5229cf42650ed47221d

Does this issue reproduce with the latest release?

N/A

What did you do?

I ran this testscript:

! exec go test -C ./x -fullpath .
! stderr '\./x.go'

-- x/x.go --
package foo

var x = mistake

-- go.mod --
module test

What did you expect to see?

A passing test.

What did you see instead?

> ! exec go test -C ./x -fullpath .
[stdout]
FAIL
[stderr]
# test/x
./x.go:3:9: undefined: mistake
[exit status 1]
> ! stderr '\./x.go'
FAIL: /tmp/testscript142857279/x.txtar/script.txtar:2: unexpected match for `\./x.go` found in stderr: ./x.go

It seems to me that the intent of -fullpath is to cause all filenames to print in a way that's absolute, even when those errors come from the compiler rather than the test binary. I'd expect the compiler error to print an absolute path there too.

@ianlancetaylor
Copy link
Contributor

This means moving -fullpath from being a test option to being a build option, and then using it to pass something to cmd/compile. We would presumably still have the -test.fullpath option, which would be different, but -fullpath would imply -test.fullpath.

CC @bcmills @matloob

@ianlancetaylor ianlancetaylor added the GoCommand cmd/go label May 26, 2023
@rogpeppe
Copy link
Contributor Author

Yup, that sounds about right. I think that would be worth doing.

@bcmills
Copy link
Member

bcmills commented May 26, 2023

Sounds reasonable. This is essentially a revision on proposal #37708, so it should probably be a proposal itself.

@bcmills bcmills added this to the Proposal milestone May 26, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Incoming
Development

No branches or pull requests

3 participants