[Bug go/67968] New: go1: internal compiler error: in write_specific_type_functions, at go/gofrontend/types.cc:1812
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67968 Bug ID: 67968 Summary: go1: internal compiler error: in write_specific_type_functions, at go/gofrontend/types.cc:1812 Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: go Assignee: ian at airs dot com Reporter: gong_su at hotmail dot com CC: cmang at google dot com Target Milestone: --- Failure occurs when trying to compile Ethereum RPC API. root@linux05:~/Downloads/go-ethereum# make geth build/env.sh go install -v -ldflags '-X main.gitCommit 4813a39100dc8dc884b0a68ceae51c2c420f92af' ./cmd/geth github.com/ethereum/go-ethereum/rpc/api # github.com/ethereum/go-ethereum/rpc/api go1: internal compiler error: in write_specific_type_functions, at go/gofrontend/types.cc:1812 0x802473df Type::write_specific_type_functions(Gogo*, Named_type*, std::__cxx11::basic_string, std::allocator > const&, Function_type*, std::__cxx11::basic_string, std::allocator > const&, Function_type*) ../../src/gcc/go/gofrontend/types.cc:1812 0x80245b33 Type::specific_type_functions(Gogo*, Named_type*, Function_type*, Function_type*, Named_object**, Named_object**) ../../src/gcc/go/gofrontend/types.cc:1791 0x8024639d Type::type_functions(Gogo*, Named_type*, Function_type*, Function_type*, Named_object**, Named_object**) ../../src/gcc/go/gofrontend/types.cc:1668 0x8024eff7 Type::type_descriptor_constructor(Gogo*, int, Named_type*, Methods const*, bool) ../../src/gcc/go/gofrontend/types.cc:2011 0x80250b1d Array_type::array_type_descriptor(Gogo*, Named_type*) ../../src/gcc/go/gofrontend/types.cc:6318 0x80248a33 Type::make_type_descriptor_var(Gogo*) ../../src/gcc/go/gofrontend/types.cc:1218 0x80248e05 Type::type_descriptor_pointer(Gogo*, Location) ../../src/gcc/go/gofrontend/types.cc:1156 0x801c8e6f Type_descriptor_expression::do_get_backend(Translate_context*) ../../src/gcc/go/gofrontend/expressions.cc:13400 0x801a8efd Interface_value_expression::do_get_backend(Translate_context*) ../../src/gcc/go/gofrontend/expressions.cc:14023 0x8021ef49 Temporary_statement::do_get_backend(Translate_context*) ../../src/gcc/go/gofrontend/statements.cc:470 0x801e8d27 Block::get_backend(Translate_context*) ../../src/gcc/go/gofrontend/gogo.cc:5811 0x8021ea51 Block_statement::do_get_backend(Translate_context*) ../../src/gcc/go/gofrontend/statements.cc:1802 0x801e8d27 Block::get_backend(Translate_context*) ../../src/gcc/go/gofrontend/gogo.cc:5811 0x8021ea51 Block_statement::do_get_backend(Translate_context*) ../../src/gcc/go/gofrontend/statements.cc:1802 0x801e8d27 Block::get_backend(Translate_context*) ../../src/gcc/go/gofrontend/gogo.cc:5811 0x801ea647 Function::build(Gogo*, Named_object*) ../../src/gcc/go/gofrontend/gogo.cc:5417 0x801ebd7d Named_object::get_backend(Gogo*, std::vector >&, std::vector >&, std::vector >&) ../../src/gcc/go/gofrontend/gogo.cc:7136 0x801f514d Gogo::write_globals() ../../src/gcc/go/gofrontend/gogo.cc:1345 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See for instructions. Makefile:9: recipe for target 'geth' failed make: *** [geth] Error 2
[Bug go/67968] go1: internal compiler error: in write_specific_type_functions, at go/gofrontend/types.cc:1812
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67968 --- Comment #2 from gong_su at hotmail dot com --- Hi Dominik, the command that failed with go1 internal error has a lot of .go files specified so I don't know which one actually caused the problem. So instead I can send you the entire Ethereum build tree so that you should be able to reproduce the problem by simply unpacking the tar.bz2 file somewhere and doing a "make geth". I can't attach the build tree here since it's 64MB and the limit for attachment is 1MB. Let me know if you want me to email you the build tree. Thanks.
[Bug go/67968] go1: internal compiler error: in write_specific_type_functions, at go/gofrontend/types.cc:1812
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67968 --- Comment #4 from gong_su at hotmail dot com --- Hi Dominik, here is the output after making the changes you asked. It looks the same as adding "-x" to the "go" command. I will email all the .go files under .../rpc/api. root@linux05:~/Downloads/go-ethereum# make geth build/env.sh go install -x -v -ldflags '-X main.gitCommit 4813a39100dc8dc884b0a68ceae51c2c420f92af' ./cmd/geth WORK=/tmp/go-build873382851 github.com/ethereum/go-ethereum/rpc/api mkdir -p $WORK/github.com/ethereum/go-ethereum/rpc/api/_obj/ mkdir -p $WORK/github.com/ethereum/go-ethereum/rpc/ cd /root/Downloads/go-ethereum/build/_workspace/src/github.com/ethereum/go-ethereum/rpc/api /usr/bin/gccgo-5 -I $WORK -I /root/Downloads/go-ethereum/build/_workspace/src/github.com/ethereum/go-ethereum/Godeps/_workspace/pkg/gccgo_linux_s390x -I /root/Downloads/go-ethereum/build/_workspace/pkg/gccgo_linux_s390x -c -g -fgo-pkgpath=github.com/ethereum/go-ethereum/rpc/api -fgo-relative-import-path=_/root/Downloads/go-ethereum/build/_workspace/src/github.com/ethereum/go-ethereum/rpc/api -o $WORK/github.com/ethereum/go-ethereum/rpc/api/_obj/_go_.o ./admin.go ./admin_args.go ./admin_js.go ./api.go ./args.go ./db.go ./db_args.go ./db_js.go ./debug.go ./debug_args.go ./debug_js.go ./eth.go ./eth_args.go ./eth_js.go ./mergedapi.go ./miner.go ./miner_args.go ./miner_js.go ./net.go ./net_js.go ./parsing.go ./personal.go ./personal_args.go ./personal_js.go ./shh.go ./shh_args.go ./shh_js.go ./txpool.go ./txpool_js.go ./utils.go ./web3.go ./web3_args.go # github.com/ethereum/go-ethereum/rpc/api go1: internal compiler error: in write_specific_type_functions, at go/gofrontend/types.cc:1812 0x802473df Type::write_specific_type_functions(Gogo*, Named_type*, std::__cxx11::basic_string, std::allocator > const&, Function_type*, std::__cxx11::basic_string, std::allocator > const&, Function_type*) ../../src/gcc/go/gofrontend/types.cc:1812 0x80245b33 Type::specific_type_functions(Gogo*, Named_type*, Function_type*, Function_type*, Named_object**, Named_object**) ../../src/gcc/go/gofrontend/types.cc:1791 0x8024639d Type::type_functions(Gogo*, Named_type*, Function_type*, Function_type*, Named_object**, Named_object**) ../../src/gcc/go/gofrontend/types.cc:1668 0x8024eff7 Type::type_descriptor_constructor(Gogo*, int, Named_type*, Methods const*, bool) ../../src/gcc/go/gofrontend/types.cc:2011 0x80250b1d Array_type::array_type_descriptor(Gogo*, Named_type*) ../../src/gcc/go/gofrontend/types.cc:6318 0x80248a33 Type::make_type_descriptor_var(Gogo*) ../../src/gcc/go/gofrontend/types.cc:1218 0x80248e05 Type::type_descriptor_pointer(Gogo*, Location) ../../src/gcc/go/gofrontend/types.cc:1156 0x801c8e6f Type_descriptor_expression::do_get_backend(Translate_context*) ../../src/gcc/go/gofrontend/expressions.cc:13400 0x801a8efd Interface_value_expression::do_get_backend(Translate_context*) ../../src/gcc/go/gofrontend/expressions.cc:14023 0x8021ef49 Temporary_statement::do_get_backend(Translate_context*) ../../src/gcc/go/gofrontend/statements.cc:470 0x801e8d27 Block::get_backend(Translate_context*) ../../src/gcc/go/gofrontend/gogo.cc:5811 0x8021ea51 Block_statement::do_get_backend(Translate_context*) ../../src/gcc/go/gofrontend/statements.cc:1802 0x801e8d27 Block::get_backend(Translate_context*) ../../src/gcc/go/gofrontend/gogo.cc:5811 0x8021ea51 Block_statement::do_get_backend(Translate_context*) ../../src/gcc/go/gofrontend/statements.cc:1802 0x801e8d27 Block::get_backend(Translate_context*) ../../src/gcc/go/gofrontend/gogo.cc:5811 0x801ea647 Function::build(Gogo*, Named_object*) ../../src/gcc/go/gofrontend/gogo.cc:5417 0x801ebd7d Named_object::get_backend(Gogo*, std::vector >&, std::vector >&, std::vector >&) ../../src/gcc/go/gofrontend/gogo.cc:7136 0x801f514d Gogo::write_globals() ../../src/gcc/go/gofrontend/gogo.cc:1345 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See for instructions. Makefile:9: recipe for target 'geth' failed make: *** [geth] Error 2
[Bug go/67968] go1: internal compiler error: in write_specific_type_functions, at go/gofrontend/types.cc:1812
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67968 --- Comment #13 from gong_su at hotmail dot com --- Hi Dominik, with the patch you gave me for the gcc-6 development branch, the cgo related bug is now fixed and ethash.go compiles fine without modification. But the ICE still happens. github.com/ethereum/go-ethereum/rpc/api mkdir -p $WORK/github.com/ethereum/go-ethereum/rpc/api/_obj/ cd /root/Downloads/go-ethereum/build/_workspace/src/github.com/ethereum/go-ethereum/rpc/api /root/Downloads/gcc/install/bin/gccgo -I $WORK -I /root/Downloads/go-ethereum/build/_workspace/src/github.com/ethereum/go-ethereum/Godeps/_workspace/pkg/gccgo_linux_s390x -I /root/Downloads/go-ethereum/build/_workspace/pkg/gccgo_linux_s390x -c -g -fgo-pkgpath=github.com/ethereum/go-ethereum/rpc/api -fgo-relative-import-path=_/root/Downloads/go-ethereum/build/_workspace/src/github.com/ethereum/go-ethereum/rpc/api -o $WORK/github.com/ethereum/go-ethereum/rpc/api/_obj/_go_.o ./admin.go ./admin_args.go ./admin_js.go ./api.go ./args.go ./db.go ./db_args.go ./db_js.go ./debug.go ./debug_args.go ./debug_js.go ./eth.go ./eth_args.go ./eth_js.go ./mergedapi.go ./miner.go ./miner_args.go ./miner_js.go ./net.go ./net_js.go ./parsing.go ./personal.go ./personal_args.go ./personal_js.go ./shh.go ./shh_args.go ./shh_js.go ./txpool.go ./txpool_js.go ./utils.go ./web3.go ./web3_args.go # github.com/ethereum/go-ethereum/rpc/api go1: internal compiler error: in write_specific_type_functions, at go/gofrontend/types.cc:1812 0x802717cf Type::write_specific_type_functions(Gogo*, Named_type*, std::__cxx11::basic_string, std::allocator > const&, Function_type*, std::__cxx11::basic_string, std::allocator > const&, Function_type*) ../../gcc/go/gofrontend/types.cc:1812 0x8026ff93 Type::specific_type_functions(Gogo*, Named_type*, Function_type*, Function_type*, Named_object**, Named_object**) ../../gcc/go/gofrontend/types.cc:1791 0x802707fd Type::type_functions(Gogo*, Named_type*, Function_type*, Function_type*, Named_object**, Named_object**) ../../gcc/go/gofrontend/types.cc:1668 0x80279427 Type::type_descriptor_constructor(Gogo*, int, Named_type*, Methods const*, bool) ../../gcc/go/gofrontend/types.cc:2011 0x8027af4d Array_type::array_type_descriptor(Gogo*, Named_type*) ../../gcc/go/gofrontend/types.cc:6311 0x80272e23 Type::make_type_descriptor_var(Gogo*) ../../gcc/go/gofrontend/types.cc:1218 0x802731f5 Type::type_descriptor_pointer(Gogo*, Location) ../../gcc/go/gofrontend/types.cc:1156 0x801ee0df Type_descriptor_expression::do_get_backend(Translate_context*) ../../gcc/go/gofrontend/expressions.cc:13669 0x801cd91d Interface_value_expression::do_get_backend(Translate_context*) ../../gcc/go/gofrontend/expressions.cc:14297 0x8024cb0d Temporary_statement::do_get_backend(Translate_context*) ../../gcc/go/gofrontend/statements.cc:494 0x802121af Block::get_backend(Translate_context*) ../../gcc/go/gofrontend/gogo.cc:5891 0x802489c1 Block_statement::do_get_backend(Translate_context*) ../../gcc/go/gofrontend/statements.cc:1836 0x802121af Block::get_backend(Translate_context*) ../../gcc/go/gofrontend/gogo.cc:5891 0x802489c1 Block_statement::do_get_backend(Translate_context*) ../../gcc/go/gofrontend/statements.cc:1836 0x802121af Block::get_backend(Translate_context*) ../../gcc/go/gofrontend/gogo.cc:5891 0x80213a9f Function::build(Gogo*, Named_object*) ../../gcc/go/gofrontend/gogo.cc:5497 0x80215243 Named_object::get_backend(Gogo*, std::vector >&, std::vector >&, std::vector >&) ../../gcc/go/gofrontend/gogo.cc:7217 0x8021e95d Gogo::write_globals() ../../gcc/go/gofrontend/gogo.cc:1346 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <http://gcc.gnu.org/bugs.html> for instructions. Makefile:9: recipe for target 'geth' failed make: *** [geth] Error 2