Skip to content

gccgo: internal compiler error in do_get_backend (4) #12939

Closed
@dvyukov

Description

gccgo crashes on the following input:

func s()[a]return]<0{n("",m())
func()a(){(p)}
func(intMap)m(){s=(m)
m[y]=e([]e,d(4))}}
for rangem{}}
func p(){for{var g c
for _,t=range s()
go1: internal compiler error: in do_get_backend, at go/gofrontend/expressions.cc:3365
0x5f2932 Type_conversion_expression::do_get_backend(Translate_context*)
    ../../gcc/go/gofrontend/expressions.cc:3365
0x5f07b1 Builtin_call_expression::do_get_backend(Translate_context*)
    ../../gcc/go/gofrontend/expressions.cc:8178
0x651e20 Temporary_statement::do_get_backend(Translate_context*)
    ../../gcc/go/gofrontend/statements.cc:494

0x61fb57 Block::get_backend(Translate_context*)
    ../../gcc/go/gofrontend/gogo.cc:5891
0x64f65c Block_statement::do_get_backend(Translate_context*)
    ../../gcc/go/gofrontend/statements.cc:1836
0x61fb57 Block::get_backend(Translate_context*)
    ../../gcc/go/gofrontend/gogo.cc:5891
0x64f65c Block_statement::do_get_backend(Translate_context*)
    ../../gcc/go/gofrontend/statements.cc:1836
0x61fb57 Block::get_backend(Translate_context*)
    ../../gcc/go/gofrontend/gogo.cc:5891
0x64f65c Block_statement::do_get_backend(Translate_context*)
    ../../gcc/go/gofrontend/statements.cc:1836
0x61fb57 Block::get_backend(Translate_context*)
    ../../gcc/go/gofrontend/gogo.cc:5891
0x64f65c Block_statement::do_get_backend(Translate_context*)
    ../../gcc/go/gofrontend/statements.cc:1836
0x61fb57 Block::get_backend(Translate_context*)
    ../../gcc/go/gofrontend/gogo.cc:5891
0x64f65c Block_statement::do_get_backend(Translate_context*)
    ../../gcc/go/gofrontend/statements.cc:1836
0x61fb57 Block::get_backend(Translate_context*)
    ../../gcc/go/gofrontend/gogo.cc:5891
0x64f65c Block_statement::do_get_backend(Translate_context*)
    ../../gcc/go/gofrontend/statements.cc:1836
0x61fb57 Block::get_backend(Translate_context*)
    ../../gcc/go/gofrontend/gogo.cc:5891
0x64f65c Block_statement::do_get_backend(Translate_context*)
    ../../gcc/go/gofrontend/statements.cc:1836
0x61fb57 Block::get_backend(Translate_context*)
    ../../gcc/go/gofrontend/gogo.cc:5891
0x62135c Function::build(Gogo*, Named_object*)
    ../../gcc/go/gofrontend/gogo.cc:5497
0x622877 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:7217

gcc on rev 228818, gofrontend on a4bcd319d98ddc52b3e7d16ec87d92aad868ab05

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions