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
misc/cgo/test: test fails on go1.3.2 #8813
Labels
Milestone
Comments
Mentioned at https://groups.google.com/d/msg/golang-nuts/eeOHNw_shwU/BbQHNu0EHCUJ Alex |
The link error is easy: the mingw being used is too old, and a newer one must be used if you want to run the tests. Updating would probably bring fewer gcc bugs too. But the builders have the new enough mingw and are still seeing failures when the test executes. I am co-opting this issue for that problem, which I do not understand. Here is an execution failure. http://build.golang.org/log/9668ce8fb8053933ba0782562a271078b9205811 The runtime frames are missing. The runtime frames are controlled by setting the GOTRACEBACK environment variable to 2. The run.bat script does this when running misc/cgo/test. The test itself checks os.Getenv("GOTRACEBACK") == "2" before starting the test. So %GOTRACEBACK% *is* 2, but the runtime is still not printing frames. It looks to me like on Windows the runtime uses env_posix.go but should really be using a Windows-specific implementation of getenv. Like on Plan 9, I don't believe the environment is just handed to the process on startup. Instead the getenv implementation should do what syscall.Getenv does. (Perhaps there are ASCII versions that can be used to avoid the UTF-16 decoding.) Great story, except that somehow this test is passing at tip. Why does runtime.getenv work on Windows at tip but apparently not work on the 1.3 release branch? Labels changed: added release-go1.3.3. Status changed to Accepted. |
runtime.envs at tip is supposed to be the same as syscall.envs in 1.3. In particular, in 1.3, os_windows.c's runtime.goenvs sets up syscall.envs. It's a bit confusing, which is part of why tip now uses runtime vars for everything. I see the problem now. traceback_cache is not reset after parsing envs on Windows, like it in goenvs_unix. Thank you. |
CL https://golang.org/cl/152760043 mentions this issue. |
rsc
added a commit
that referenced
this issue
May 11, 2015
…lan 9 Only Unix was resetting the traceback_cache variable after initializing the environment. Reset it on all systems by resetting in parsedebugvars. Fixes #8813. LGTM=adg, alex.brainman R=golang-codereviews, adg, alex.brainman CC=golang-codereviews, iant, r https://golang.org/cl/152760043
This issue was closed.
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
The text was updated successfully, but these errors were encountered: