https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61273
Bug ID: 61273 Summary: gccgo: ICE in Unsafe_type_conversion_expression::do_get_backend [GoSmith] Product: gcc Version: 4.10.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: go Assignee: ian at airs dot com Reporter: dvyukov at google dot com gccgo (GCC) 4.10.0 20140516 (experimental) The program is: package main func main() { c := make(chan bool, 1) for ; false; c <- false { } } $ go build -compiler=gccgo src.go src.go:6:1: error: expected '{' } ^ src.go:4:8: error: expected type for ; false; c <- false { ^ go1: internal compiler error: in do_get_backend, at go/gofrontend/expressions.cc:3532 0x5a21eb Unsafe_type_conversion_expression::do_get_backend(Translate_context*) ../../gcc/go/gofrontend/expressions.cc:3527 0x5bb6eb Call_expression::do_get_backend(Translate_context*) ../../gcc/go/gofrontend/expressions.cc:9425 0x60a1d8 Send_statement::do_get_backend(Translate_context*) ../../gcc/go/gofrontend/statements.cc:4513 0x5db097 Block::get_backend(Translate_context*) ../../gcc/go/gofrontend/gogo.cc:5454 0x60741c Block_statement::do_get_backend(Translate_context*) ../../gcc/go/gofrontend/statements.cc:1811 0x5db097 Block::get_backend(Translate_context*) ../../gcc/go/gofrontend/gogo.cc:5454 0x60741c Block_statement::do_get_backend(Translate_context*) ../../gcc/go/gofrontend/statements.cc:1811 0x5db097 Block::get_backend(Translate_context*) ../../gcc/go/gofrontend/gogo.cc:5454 0x60741c Block_statement::do_get_backend(Translate_context*) ../../gcc/go/gofrontend/statements.cc:1811 0x5db097 Block::get_backend(Translate_context*) ../../gcc/go/gofrontend/gogo.cc:5454 0x5dc925 Function::build(Gogo*, Named_object*) ../../gcc/go/gofrontend/gogo.cc:5062 0x5ddc57 Named_object::get_backend(Gogo*, std::vector<Bexpression*, std::allocator<Bexpression*> >&, std::vector<Btype*, std::allocator<Btype*> >&, std::vector<Bfunction*, std::allocator<Bfunction*> >&) ../../gcc/go/gofrontend/gogo.cc:6753 0x5e2b5c Gogo::write_globals() ../../gcc/go/gofrontend/gogo.cc:1136 gc successfully compiles the code.