[Bug go/61265] gccgo: ICE in verify_gimple_in_seq [GoSmith]

cmang at google dot com gcc-bugzilla@gcc.gnu.org
Wed Dec 17 22:20:00 GMT 2014


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61265

--- Comment #3 from Chris Manghane <cmang at google dot com> ---
Sorry for the noise, responding with new information as I discover it.

The above patch doesn't really work (it fails a few tests) because this isn't a
problem with zero-sized array types, but rather a problem with zero-sized
elements in array types.

This same bug can be reproduced by

package main

var a = [1]struct{}{B}[0]
var B = struct{}{}

func main(){}

because struct{} is a zero-sized type and the backend implementation makes
assumptions about zero-sized globals for the linker. A better approach is to
just avoid constructing an array of zero-sized values and evaluate the
zero-valued expressions for their side effects. This is be done in
https://codereview.appspot.com/191970043/.



More information about the Gcc-bugs mailing list