[pkg-go] Bug#860646: Failure analysis
Apollon Oikonomopoulos
apoikos at debian.org
Tue May 2 10:55:22 UTC 2017
Hi,
The build failure is due to panicking_test producing different output on i386
than what is expected by the golden file. The difference is that all
occurrences of `runtime.call32' in the golden file are replaced by
`runtime.call16' in the actual output.
--- stretch/build/golang-github-jacobsa-ogletest-0.0~git20150610/obj-i686-linux-gnu/src/github.com/jacobsa/ogletest/test_cases/golden.panicking_test 2017-05-02 13:37:31.490452706 +0300
+++ golang-github-jacobsa-ogletest-0.0~git20150610/test_cases/golden.panicking_test 2017-05-02 13:18:21.000000000 +0300
@@ -6,7 +6,7 @@
github.com/jacobsa/ogletest/somepkg_test.(*PanickingTest).ExplicitPanic
some_file.txt:0
-runtime.call16
+runtime.call32
some_file.txt:0
reflect.Value.call
some_file.txt:0
@@ -24,7 +24,7 @@
some_file.txt:0
github.com/jacobsa/ogletest/somepkg_test.(*PanickingTest).ExplicitPanicInHelperFunction
some_file.txt:0
-runtime.call16
+runtime.call32
some_file.txt:0
reflect.Value.call
some_file.txt:0
@@ -40,7 +40,7 @@
github.com/jacobsa/ogletest/somepkg_test.(*PanickingTest).NilPointerDerefence
some_file.txt:0
-runtime.call16
+runtime.call32
some_file.txt:0
reflect.Value.call
some_file.txt:0
This is consistent with go's implementations of `reflectcall' for i386[1] and
amd64[2] respectively.
[1] https://golang.org/src/runtime/asm_386.s#L450
[2] https://golang.org/src/runtime/asm_amd64.s#L446
All in all, everything works as expected. Since part of the test output is
architecture-dependent, upstream's test suite should take that into account.
For the time being we could either disable this test completely on non-amd64
architectures, or patch integration_test.go to mangle all `runtime.call[0-9]+'
tokens before comparing output and expected streams.
Regards,
Apollon
More information about the Pkg-go-maintainers
mailing list