[Bug go/101407] New: non-determinism in -fdump-go-spec
toolybird at tuta dot io
gcc-bugzilla@gcc.gnu.org
Sat Jul 10 21:34:29 GMT 2021
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101407
Bug ID: 101407
Summary: non-determinism in -fdump-go-spec
Product: gcc
Version: 11.1.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: go
Assignee: ian at airs dot com
Reporter: toolybird at tuta dot io
CC: cmang at google dot com
Target Milestone: ---
I'm seeing a reproducibility issue when building gcc-go in GCC 11. Every build
run produces a different binary.
I've narrowed down the test case to essentially this:
$ gcc -fdump-go-spec=tmp-1.go -S -o sysinfo.s sysinfo.c
$ gcc -fdump-go-spec=tmp-2.go -S -o sysinfo.s sysinfo.c
$ diff -u tmp-1.go tmp-2.go
--- tmp-1.go 2021-07-11 07:26:58.512916883 +1000
+++ tmp-2.go 2021-07-11 07:27:07.976340655 +1000
@@ -8519,10 +8519,10 @@
const _PRIxFAST8 = "x"
const ___POSIX_FADV_DONTNEED = 4
const _IPPROTO_MTP = 92
-type ___dirstream struct {}
-type ___va_list_tag struct {}
type _iface struct {}
type ___locale_data struct {}
type __IO_marker struct {}
type __IO_codecvt struct {}
type __IO_wide_data struct {}
+type ___dirstream struct {}
+type ___va_list_tag struct {}
The file in question is libgo/sysinfo.c
The output seems to differ each time. Occasionally it is the same.
This didn't happen with GCC 10. I suppose I should try the trunk but haven't
done so yet.
Any thoughts? Thanks.
More information about the Gcc-bugs
mailing list