Bug 91712 - [10 regression] ICE in bind_field_or_method, at go/gofrontend/types.cc:11878
Summary: [10 regression] ICE in bind_field_or_method, at go/gofrontend/types.cc:11878
Status: RESOLVED FIXED
Alias: None
Product: gcc
Classification: Unclassified
Component: go (show other bugs)
Version: 10.0
: P3 normal
Target Milestone: 10.0
Assignee: Ian Lance Taylor
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-09-09 14:24 UTC by Rainer Orth
Modified: 2019-09-12 08:18 UTC (History)
0 users

See Also:
Host:
Target: i386-pc-solaris2.11, sparc-sun-solaris2.11
Build:
Known to work:
Known to fail:
Last reconfirmed:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Rainer Orth 2019-09-09 14:24:47 UTC
After the Go 1.13 Beta 1 import, mainline bootstrap failed on Solaris as
described in https://gcc.gnu.org/ml/gcc-patches/2019-09/msg00464.html.
With the patch posted there, I managed to restore bootstrap.  However, one
libgo testcase regressed on both sparc and x86:

go1: internal compiler error: in bind_field_or_method, at go/gofrontend/types.cc:11878
0x8b68e73 Type::bind_field_or_method(Gogo*, Type const*, Expression*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, Location)
        /vol/gcc/src/hg/trunk/local/gcc/go/gofrontend/types.cc:11878
0x8ae942c Expression::lower(Gogo*, Named_object*, Statement_inserter*, int)
        /vol/gcc/src/hg/trunk/local/gcc/go/gofrontend/expressions.h:929
0x8ae942c Lower_parse_tree::expression(Expression**)
        /vol/gcc/src/hg/trunk/local/gcc/go/gofrontend/gogo.cc:3090
0x8aaaffc Expression::traverse(Expression**, Traverse*)
        /vol/gcc/src/hg/trunk/local/gcc/go/gofrontend/expressions.cc:45
0x8ab63de Call_expression::do_traverse(Traverse*)
        /vol/gcc/src/hg/trunk/local/gcc/go/gofrontend/expressions.cc:10716
0x8ae93e6 Lower_parse_tree::expression(Expression**)
        /vol/gcc/src/hg/trunk/local/gcc/go/gofrontend/gogo.cc:3084
0x8aea784 Gogo::lower_expression(Named_object*, Statement_inserter*, Expression**)
        /vol/gcc/src/hg/trunk/local/gcc/go/gofrontend/gogo.cc:3158
0x8aeb368 Variable::lower_init_expression(Gogo*, Named_object*, Statement_inserter*)
        /vol/gcc/src/hg/trunk/local/gcc/go/gofrontend/gogo.cc:7449
0x8b33647 Variable_declaration_statement::do_lower(Gogo*, Named_object*, Block*, Statement_inserter*)
        /vol/gcc/src/hg/trunk/local/gcc/go/gofrontend/statements.cc:304
0x8ae9abb Statement::lower(Gogo*, Named_object*, Block*, Statement_inserter*)
        /vol/gcc/src/hg/trunk/local/gcc/go/gofrontend/statements.h:310
0x8ae9abb Lower_parse_tree::statement(Block*, unsigned int*, Statement*)
        /vol/gcc/src/hg/trunk/local/gcc/go/gofrontend/gogo.cc:3056
0x8ae9abb Lower_parse_tree::statement(Block*, unsigned int*, Statement*)
        /vol/gcc/src/hg/trunk/local/gcc/go/gofrontend/gogo.cc:3033
0x8b34826 Statement::traverse(Block*, unsigned int*, Traverse*)
        /vol/gcc/src/hg/trunk/local/gcc/go/gofrontend/statements.cc:46
0x8aeba06 Block::traverse(Traverse*)
        /vol/gcc/src/hg/trunk/local/gcc/go/gofrontend/gogo.cc:6879
0x8ae9a53 Lower_parse_tree::statement(Block*, unsigned int*, Statement*)
        /vol/gcc/src/hg/trunk/local/gcc/go/gofrontend/gogo.cc:3045
0x8ae9a53 Lower_parse_tree::statement(Block*, unsigned int*, Statement*)
        /vol/gcc/src/hg/trunk/local/gcc/go/gofrontend/gogo.cc:3033
0x8b34826 Statement::traverse(Block*, unsigned int*, Traverse*)
        /vol/gcc/src/hg/trunk/local/gcc/go/gofrontend/statements.cc:46
0x8aeba06 Block::traverse(Traverse*)
        /vol/gcc/src/hg/trunk/local/gcc/go/gofrontend/gogo.cc:6879
0x8aeba06 Block::traverse(Traverse*)
        /vol/gcc/src/hg/trunk/local/gcc/go/gofrontend/gogo.cc:5779
Comment 1 Ian Lance Taylor 2019-09-11 12:53:27 UTC
Should be fixed by SVN revision 275648 (I forgot to add the PR reference to the commit message).
Comment 2 ro@CeBiTec.Uni-Bielefeld.DE 2019-09-12 08:18:21 UTC
> --- Comment #1 from Ian Lance Taylor <ian at airs dot com> ---
> Should be fixed by SVN revision 275648 (I forgot to add the PR reference to the
> commit message).

It is indeed, thanks.