On Tue, Oct 18, 2016 at 1:06 AM, Uros Bizjak wrote:
>
>> This patch copies the code that implements the print and println
>> predeclared functions from the Go 1.7 runtime. The compiler is
>> changed to use the new names, and to call the printlock and
>> printunlock functions around a sequence of print calls. The writebuf
>> field in the g struct changes to a slice. Bootstrapped and ran Go
>> testsuite on x86_64-pc-linux-gnu. Committed to mainline.
>
> This patch probably introduced recent regression on 32bit x86 multilib:
>
> Running target unix/-m32
> FAIL: go.test/test/fixedbugs/bug114.go compilation, -O2 -g
> FAIL: go.test/test/printbig.go -O (test for excess errors)
> FAIL: go.test/test/printbig.go execution
>
> === go Summary for unix/-m32 ===
>
> # of expected passes6875
> # of unexpected failures3
> # of expected failures 1
> # of untested testcases 12
> # of unsupported tests 2
>
> e.g.:
>
> /home/uros/git/gcc/gcc/testsuite/go.test/test/fixedbugs/bug114.go:15:27:
> error: integer constant overflow
> /home/uros/git/gcc/gcc/testsuite/go.test/test/fixedbugs/bug114.go:15:45:
> error: integer constant overflow
> /home/uros/git/gcc/gcc/testsuite/go.test/test/fixedbugs/bug114.go:19:38:
> error: integer constant overflow
> /home/uros/git/gcc/gcc/testsuite/go.test/test/fixedbugs/bug114.go:19:56:
> error: integer constant overflow
>
> FAIL: go.test/test/fixedbugs/bug114.go compilation, -O2 -g
> UNTESTED: go.test/test/fixedbugs/bug114.go execution, -O2 -g
>
> FAIL: go.test/test/printbig.go -O (test for excess errors)
> Excess errors:
> /home/uros/git/gcc/gcc/testsuite/go.test/test/printbig.go:12:8: error:
> integer constant overflow
> /home/uros/git/gcc/gcc/testsuite/go.test/test/printbig.go:13:15:
> error: integer constant overflow
>
> ./printbig.exe >printbig.p 2>&1
> couldn't execute "./printbig.exe": no such file or directory
> FAIL: go.test/test/printbig.go execution
> UNTESTED: go.test/test/printbig.go compare
For the record, Uros filed this as https://gcc.gnu.org/PR78145 and it
is now fixed.
Ian